import { FeatureCollection, SimpleFeatureCollection, SimpleFeature } from "../utils/geojson-types.js"; import { PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, ModeProps, Pick, GuideFeatureCollection, EditHandleFeature } from "./types.js"; import { GeoJsonEditMode } from "./geojson-edit-mode.js"; type MovementTypeEvent = PointerMoveEvent | StartDraggingEvent | StopDraggingEvent | DraggingEvent; export declare class SnappableMode extends GeoJsonEditMode { _handler: GeoJsonEditMode; constructor(handler: GeoJsonEditMode); _getSnappedMouseEvent(event: T, snapSource: EditHandleFeature, snapTarget: EditHandleFeature): T; _getPickedSnapTarget(picks: Pick[]): EditHandleFeature | null | undefined; _getPickedSnapSource(pointerDownPicks: Pick[] | null | undefined): EditHandleFeature | null | undefined; _getUpdatedSnapSourceHandle(snapSourceHandle: EditHandleFeature, data: SimpleFeatureCollection): EditHandleFeature; _getSnapTargets(props: ModeProps): SimpleFeature[]; _getSnapTargetHandles(props: ModeProps): EditHandleFeature[]; getGuides(props: ModeProps): GuideFeatureCollection; _getSnapAwareEvent(event: T, props: ModeProps): T; handleStartDragging(event: StartDraggingEvent, props: ModeProps): void; handleStopDragging(event: StopDraggingEvent, props: ModeProps): void; handleDragging(event: DraggingEvent, props: ModeProps): void; handlePointerMove(event: PointerMoveEvent, props: ModeProps): void; } export {}; //# sourceMappingURL=snappable-mode.d.ts.map