UNPKG

terra-draw

Version:

Frictionless map drawing across mapping provider

65 lines (64 loc) 2.44 kB
import { TerraDrawMouseEvent, TerraDrawAdapterStyling, NumericStyling, HexColorStyling, Cursor } from "../../common"; import { GeoJSONStoreFeatures, StoreValidation } from "../../store/store"; import { BaseModeOptions, CustomStyling, ModeUpdateOptions, TerraDrawBaseDrawMode } from "../base.mode"; import { BehaviorConfig } from "../base.behavior"; type PointModeStyling = { pointWidth: NumericStyling; pointColor: HexColorStyling; pointOpacity: NumericStyling; pointOutlineColor: HexColorStyling; pointOutlineOpacity: NumericStyling; pointOutlineWidth: NumericStyling; editedPointColor: HexColorStyling; editedPointWidth: NumericStyling; editedPointOutlineColor: HexColorStyling; editedPointOutlineWidth: NumericStyling; }; interface Cursors { create?: Cursor; dragStart?: Cursor; dragEnd?: Cursor; } interface TerraDrawPointModeOptions<T extends CustomStyling> extends BaseModeOptions<T> { cursors?: Cursors; editable?: boolean; } export declare class TerraDrawPointMode extends TerraDrawBaseDrawMode<PointModeStyling> { mode: string; private cursors; private editable; private editedFeatureId; private pixelDistance; private clickBoundingBox; private pointSearch; private mutateFeature; constructor(options?: TerraDrawPointModeOptions<PointModeStyling>); updateOptions(options?: ModeUpdateOptions<TerraDrawPointModeOptions<PointModeStyling>>): void; /** @internal */ start(): void; /** @internal */ stop(): void; /** @internal */ onClick(event: TerraDrawMouseEvent): void; /** @internal */ onMouseMove(): void; /** @internal */ onKeyDown(): void; /** @internal */ onKeyUp(): void; /** @internal */ cleanUp(): void; onDragStart(event: TerraDrawMouseEvent, setMapDraggability: (enabled: boolean) => void): void; /** @internal */ onDrag(event: TerraDrawMouseEvent, setMapDraggability: (enabled: boolean) => void): void; /** @internal */ onDragEnd(event: TerraDrawMouseEvent, setMapDraggability: (enabled: boolean) => void): void; registerBehaviors(config: BehaviorConfig): void; /** @internal */ styleFeature(feature: GeoJSONStoreFeatures): TerraDrawAdapterStyling; validateFeature(feature: unknown): StoreValidation; private onLeftClick; private onRightClick; afterFeatureUpdated(feature: GeoJSONStoreFeatures): void; } export {};