UNPKG

@nebula.gl/layers

Version:

A suite of 3D-enabled data editing layers, suitable for deck.gl

160 lines 7.45 kB
/// <reference types="deck.gl" /> import { RGBAColor } from '@deck.gl/core'; import { GeoJsonLayer, TextLayer } from '@deck.gl/layers'; import { EditAction, ClickEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, PointerMoveEvent, GeoJsonEditModeType, FeatureCollection } from '@nebula.gl/edit-modes'; import EditableLayer, { EditableLayerProps } from './editable-layer'; export interface EditableGeojsonLayerProps<D> extends EditableLayerProps<D> { mode?: any; modeConfig?: any; selectedFeatureIndexes?: number[]; onEdit?: (updatedData?: any, editType?: string, featureIndexes?: number[], editContext?: any) => void; pickable?: boolean; pickingRadius?: number; pickingDepth?: number; fp64?: boolean; filled?: boolean; stroked?: boolean; lineWidthScale?: number; lineWidthMinPixels?: number; lineWidthMaxPixels?: number; pickingLineWidthExtraPixels?: number; lineWidthUnits?: string; lineJointRounded?: boolean; lineCapRounded?: boolean; lineMiterLimit?: number; pointRadiusScale?: number; pointRadiusMinPixels?: number; pointRadiusMaxPixels?: number; getLineColor?: RGBAColor | ((feature: any, isSelected: any, mode: any) => RGBAColor); getFillColor?: RGBAColor | ((feature: any, isSelected: any, mode: any) => RGBAColor); getRadius?: number | ((f: any) => number); getLineWidth?: number | ((f: any) => number); getTentativeLineColor?: RGBAColor | ((feature: any, isSelected: any, mode: any) => RGBAColor); getTentativeFillColor?: RGBAColor | ((feature: any, isSelected: any, mode: any) => RGBAColor); getTentativeLineWidth?: number | ((f: any) => number); editHandleType?: string; editHandlePointRadiusScale?: number; editHandlePointOutline?: boolean; editHandlePointStrokeWidth?: number; editHandlePointRadiusUnits?: string; editHandlePointRadiusMinPixels?: number; editHandlePointRadiusMaxPixels?: number; getEditHandlePointColor?: RGBAColor | ((handle: any) => RGBAColor); getEditHandlePointOutlineColor?: RGBAColor | ((handle: any) => RGBAColor); getEditHandlePointRadius?: number | ((handle: any) => number); editHandleIconAtlas?: any; editHandleIconMapping?: any; editHandleIconSizeScale?: number; editHandleIconSizeUnits?: string; getEditHandleIcon?: (handle: any) => string; getEditHandleIconSize?: number; getEditHandleIconColor?: RGBAColor | ((handle: any) => RGBAColor); getEditHandleIconAngle?: number | ((handle: any) => number); billboard?: boolean; } export default class EditableGeoJsonLayer extends EditableLayer<any, EditableGeojsonLayerProps<any>> { static layerName: string; static defaultProps: EditableGeojsonLayerProps<any>; renderLayers(): any; initializeState(): void; shouldUpdateState(opts: any): any; updateState({ props, oldProps, changeFlags, context, }: { props: EditableGeojsonLayerProps<any>; oldProps: EditableGeojsonLayerProps<any>; changeFlags: any; context: any; s: any; }): void; getModeProps(props: EditableGeojsonLayerProps<any>): { modeConfig: any; data: any; selectedIndexes: number[]; lastPointerMoveEvent: any; cursor: any; onEdit: (editAction: EditAction<FeatureCollection>) => void; onUpdateCursor: (cursor: string) => void; }; selectionAwareAccessor(accessor: any): any; isFeatureSelected(feature: Record<string, any>): boolean; getPickingInfo({ info, sourceLayer }: Record<string, any>): any; _updateAutoHighlight(info: any): void; createGuidesLayers(): GeoJsonLayer<unknown, import("@deck.gl/core/lib/layer").LayerProps<unknown>>[]; createTooltipsLayers(): TextLayer<unknown, { sizeScale?: number; sizeUnits?: import("@deck.gl/core/lib/layer").WidthUnits; sizeMinPixels?: number; sizeMaxPixels?: number; billboard?: boolean; backgroundColor?: RGBAColor; fontFamily?: string; characterSet?: string | string[]; fontWeight?: string | number; lineHeight?: number; fontSettings?: import("@deck.gl/layers/text-layer/font-atlas-manager").FontSettings; wordBreak?: "break-all" | "break-word"; maxWidth?: number; getText?: (x: never) => string; getPosition?: (x: never) => [number, number]; getSize: number | ((x: never) => number); getColor?: RGBAColor | ((x: never) => RGBAColor); getAngle?: number | ((x: never) => number); getTextAnchor?: "start" | "middle" | "end" | ((x: never) => import("@deck.gl/layers/text-layer/text-layer").TextAnchor); getAlignmentBaseline?: "top" | "center" | "bottom" | ((x: never) => import("@deck.gl/layers/text-layer/text-layer").AlignmentBaseline); getPixelOffset?: number[] | ((x: never) => number[]); outlineColor?: RGBAColor; outlineWidth?: number; _subLayerProps?: Object; id?: string; data?: string | import("@deck.gl/core/lib/layer").DataSet<never> | Promise<import("@deck.gl/core/lib/layer").DataSet<never>>; visible?: boolean; opacity?: number; extensions?: any[]; pickable?: boolean; onHover?: import("@deck.gl/core/lib/layer").LayerInputHandler<never>; onClick?: import("@deck.gl/core/lib/layer").LayerInputHandler<never>; onDragStart?: import("@deck.gl/core/lib/layer").LayerInputHandler<never>; onDrag?: import("@deck.gl/core/lib/layer").LayerInputHandler<never>; onDragEnd?: import("@deck.gl/core/lib/layer").LayerInputHandler<never>; highlightColor?: RGBAColor | ((pickInfo: import("@deck.gl/core/lib/deck").PickInfo<never>) => RGBAColor); highlightedObjectIndex?: number; autoHighlight?: boolean; coordinateSystem?: number; coordinateOrigin?: import("@deck.gl/core").Position; wrapLongitude?: boolean; modelMatrix?: number[]; dataComparator?: (newData: never, oldData: never) => boolean; dataTransform?: () => never[] | Iterable<never>; _dataDiff?: (newData: never, oldData: never) => { startRow: number; endRow: number; }; positionFormat?: "XYZ" | "XY"; colorFormat?: "RGBA" | "RGB"; numInstances?: number; updateTriggers?: any; loaders?: any[]; loadOptions?: any; onDataLoad?: (value: never[] | Iterable<never>, context: { layer: import("@deck.gl/core").Layer<never, import("@deck.gl/core/lib/layer").LayerProps<never>>; }) => void; parameters?: any; getPolygonOffset?: (uniform: any) => [number, number]; transitions?: { [attributeGetter: string]: import("@deck.gl/core/lib/layer").TransitionTiming; }; filterEnabled?: boolean; filterTransformSize?: boolean; filterTransformColor?: boolean; }>[]; onLayerClick(event: ClickEvent): void; onLayerKeyUp(event: KeyboardEvent): void; onStartDragging(event: StartDraggingEvent): void; onDragging(event: DraggingEvent): void; onStopDragging(event: StopDraggingEvent): void; onPointerMove(event: PointerMoveEvent): void; getCursor({ isDragging }: { isDragging: boolean; }): any; getActiveMode(): GeoJsonEditModeType; } //# sourceMappingURL=editable-geojson-layer.d.ts.map