import type { CompositeLayerProps, DefaultProps, GetPickingInfoParams, Layer, LayersList } from "@deck.gl/core"; import { CompositeLayer } from "@deck.gl/core"; import type { TextLayerProps } from "@deck.gl/layers"; import * as ga from "@geoarrow/geoarrow-js"; import type * as arrow from "apache-arrow"; import type { ColorAccessor, FloatAccessor, GeoArrowPickingInfo } from "../types"; import type { GeoArrowExtraPickingProps } from "../utils/picking"; /** All properties supported by GeoArrowTextLayer */ export type GeoArrowTextLayerProps = Omit, "background" | "data" | "getBackgroundColor" | "getBorderColor" | "getBorderWidth" | "getText" | "getPosition" | "getColor" | "getSize" | "getAngle" | "getTextAnchor" | "getAlignmentBaseline" | "getPixelOffset"> & _GeoArrowTextLayerProps & CompositeLayerProps; /** Properties added by GeoArrowTextLayer */ type _GeoArrowTextLayerProps = { data: arrow.RecordBatch; /** Background color accessor. * @default [255, 255, 255, 255] */ getBackgroundColor?: ColorAccessor; /** Border color accessor. * @default [0, 0, 0, 255] */ getBorderColor?: ColorAccessor; /** Border width accessor. * @default 0 */ getBorderWidth?: FloatAccessor; /** * Label text accessor */ getText: arrow.Data; /** * Anchor position accessor */ getPosition?: ga.data.PointData; /** * Label color accessor * @default [0, 0, 0, 255] */ getColor?: ColorAccessor; /** * Label size accessor * @default 32 */ getSize?: FloatAccessor; /** * Label rotation accessor, in degrees * @default 0 */ getAngle?: FloatAccessor; /** * Horizontal alignment accessor * @default 'middle' */ getTextAnchor?: arrow.Data | "start" | "middle" | "end"; /** * Vertical alignment accessor * @default 'center' */ getAlignmentBaseline?: arrow.Data | "top" | "center" | "bottom"; /** * Label offset from the anchor position, [x, y] in pixels * @default [0, 0] */ getPixelOffset?: arrow.Data> | [number, number]; /** * If `true`, validate the arrays provided (e.g. chunk lengths) * @default true */ _validate?: boolean; }; export declare class GeoArrowTextLayer extends CompositeLayer { static defaultProps: DefaultProps; static layerName: string; getPickingInfo(params: GetPickingInfoParams & { sourceLayer: { props: GeoArrowExtraPickingProps; }; }): GeoArrowPickingInfo; renderLayers(): Layer | LayersList | null; _renderTextLayer(geometryData: ga.data.PointData, textData: arrow.Data): Layer | LayersList | null; } export {}; //# sourceMappingURL=text-layer.d.ts.map