import { CompositeLayer, type CompositeLayerProps, type UpdateParameters } from '@deck.gl/core'; import { LineLayer, TextLayer } from '@deck.gl/layers'; export type GridLineDatum = { /** Optional label associated with the grid line. */ label?: string | number; /** Horizontal grid lines use the yPosition value. */ yPosition?: number | null; /** Vertical grid lines use the xPosition value. */ xPosition?: number | null; }; export type GridLayerProps = CompositeLayerProps & { /** Collection of grid line definitions. */ data: readonly DatumT[]; /** Direction in which to draw grid lines. */ direction?: 'horizontal' | 'vertical'; /** Minimum X coordinate for grid lines. */ xMin?: number; /** Maximum X coordinate for grid lines. */ xMax?: number; /** Minimum Y coordinate for grid lines. */ yMin?: number; /** Maximum Y coordinate for grid lines. */ yMax?: number; /** Width of the grid lines in screen pixels. */ width?: number; /** RGBA color for grid lines. */ color?: [number, number, number, number]; /** Optional accessor for line labels. */ getLabel?: (d: DatumT) => string | number | null | undefined; /** Optional accessor for per-datum colors. */ getColor?: (d: DatumT) => [number, number, number, number] | null | undefined; /** Optional accessor for per-datum widths. */ getWidth?: (d: DatumT) => number | null | undefined; /** Whether to render labels alongside the grid lines. */ showLabels?: boolean; /** Pixel offset applied to rendered labels. */ labelOffset?: [number, number]; }; export declare class GridLayer extends CompositeLayer> { static layerName: string; static defaultProps: Required, 'direction' | 'width' | 'color' | 'xMin' | 'xMax' | 'yMin' | 'yMax' | 'showLabels' | 'labelOffset'>>; shouldUpdateState(params: UpdateParameters): boolean; renderLayers(): (LineLayer any; getTargetPosition: (d: any) => any; getColor: (d: any) => [number, number, number, number]; getWidth: (d: any) => number; widthUnits: "pixels"; parameters: { depthTest: boolean; }; }> | TextLayer any; getText: (d: any) => any; getColor: (d: any) => [number, number, number, number]; getSize: 12; sizeUnits: "pixels"; getPixelOffset: [number, number]; getTextAnchor: () => string; getAlignmentBaseline: () => string; background: true; backgroundPadding: [number, number]; backgroundColor: [number, number, number, number]; parameters: { depthTest: boolean; }; }>)[]; private _resolveViewportBounds; private _createLineSegments; private _createLabelData; } //# sourceMappingURL=grid-layer.d.ts.map