import { LayerExtension } from '@deck.gl/core'; import type { Layer, LayerContext, Accessor, UpdateParameters } from '@deck.gl/core'; export type PathStyleExtensionProps = { /** * Accessor for the dash array to draw each path with: `[dashSize, gapSize]` relative to the width of the path. * Requires the `dash` option to be on. */ getDashArray?: Accessor; /** * Accessor for the offset to draw each path with, relative to the width of the path. * Negative offset is to the left hand side, and positive offset is to the right hand side. * @default 0 */ getOffset?: Accessor; /** * If `true`, adjust gaps for the dashes to align at both ends. * @default false */ dashJustified?: boolean; /** * If `true`, gaps between solid strokes are pickable. If `false`, only the solid strokes are pickable. * @default false */ dashGapPickable?: boolean; }; export type PathStyleExtensionOptions = { /** * Add capability to render dashed lines. * @default false */ dash: boolean; /** * Add capability to offset lines. * @default false */ offset: boolean; /** * Improve dash rendering quality in certain circumstances. Note that this option introduces additional performance overhead. * @default false */ highPrecisionDash: boolean; }; /** Adds selected features to the `PathLayer` and composite layers that render the `PathLayer`. */ export default class PathStyleExtension extends LayerExtension { static defaultProps: { getDashArray: { type: string; value: number[]; }; getOffset: { type: string; value: number; }; dashJustified: boolean; dashGapPickable: boolean; }; static extensionName: string; constructor({ dash, offset, highPrecisionDash }?: Partial); isEnabled(layer: Layer): boolean; getShaders(this: Layer, extension: this): any; initializeState(this: Layer, context: LayerContext, extension: this): void; updateState(this: Layer, params: UpdateParameters>, extension: this): void; getDashOffsets(this: Layer, path: number[] | number[][]): number[]; } //# sourceMappingURL=path-style-extension.d.ts.map