import { EditAction, ClickEvent, PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, Pick, Tooltip, ModeProps, GuideFeatureCollection, TentativeFeature } from '../types'; import { FeatureCollection, Feature, Polygon, Geometry, Position } from '../geojson-types'; import { EditMode } from './edit-mode'; export declare type GeoJsonEditAction = EditAction; export declare type GeoJsonEditModeType = EditMode; export interface GeoJsonEditModeConstructor { new (): GeoJsonEditModeType; } export declare class GeoJsonEditMode implements EditMode { _clickSequence: Position[]; getGuides(props: ModeProps): GuideFeatureCollection; getTooltips(props: ModeProps): Tooltip[]; getSelectedFeature(props: ModeProps): Feature | null | undefined; getSelectedGeometry(props: ModeProps): Geometry | null | undefined; getSelectedFeaturesAsFeatureCollection(props: ModeProps): FeatureCollection; getClickSequence(): Position[]; addClickSequence({ mapCoords }: ClickEvent): void; resetClickSequence(): void; getTentativeGuide(props: ModeProps): TentativeFeature | null | undefined; isSelectionPicked(picks: Pick[], props: ModeProps): boolean; rewindPolygon(feature: Feature): Feature; getAddFeatureAction(featureOrGeometry: Geometry | Feature, features: FeatureCollection): GeoJsonEditAction; getAddManyFeaturesAction({ features: featuresToAdd }: FeatureCollection, features: FeatureCollection): GeoJsonEditAction; getAddFeatureOrBooleanPolygonAction(featureOrGeometry: Polygon | Feature, props: ModeProps): GeoJsonEditAction | null | undefined; createTentativeFeature(props: ModeProps): TentativeFeature; handleClick(event: ClickEvent, props: ModeProps): void; handlePointerMove(event: PointerMoveEvent, props: ModeProps): void; handleStartDragging(event: StartDraggingEvent, props: ModeProps): void; handleStopDragging(event: StopDraggingEvent, props: ModeProps): void; handleDragging(event: DraggingEvent, props: ModeProps): void; handleKeyUp(event: KeyboardEvent, props: ModeProps): void; } export declare function getIntermediatePosition(position1: Position, position2: Position): Position; //# sourceMappingURL=geojson-edit-mode.d.ts.map