import { Position, Point, SimpleGeometry, Feature } from "../utils/geojson-types.js"; export type ScreenCoordinates = [number, number]; export type EditAction = { updatedData: TData; editType: string; editContext: any; }; export type Pick = { index: number; object?: any; isGuide?: boolean; featureType?: string; featureIndex?: number; type?: string; isEditingHandle?: boolean | null; }; export type Viewport = { width: number; height: number; longitude: number; latitude: number; zoom: number; bearing?: number; pitch?: number; }; export type BasePointerEvent = { picks: Pick[]; screenCoords: ScreenCoordinates; mapCoords: Position; sourceEvent: any; }; export type ClickEvent = BasePointerEvent; export type DoubleClickEvent = BasePointerEvent; export type StartDraggingEvent = BasePointerEvent & { pointerDownPicks?: Pick[] | null; pointerDownScreenCoords: ScreenCoordinates; pointerDownMapCoords: Position; cancelPan: () => void; }; export type StopDraggingEvent = BasePointerEvent & { pointerDownPicks?: Pick[] | null; pointerDownScreenCoords: ScreenCoordinates; pointerDownMapCoords: Position; }; export type DraggingEvent = BasePointerEvent & { pointerDownPicks?: Pick[] | null; pointerDownScreenCoords: ScreenCoordinates; pointerDownMapCoords: Position; cancelPan: () => void; }; export type PointerMoveEvent = BasePointerEvent & { pointerDownPicks?: Pick[] | null; pointerDownScreenCoords?: ScreenCoordinates | null; pointerDownMapCoords?: Position | null; cancelPan: () => void; isDragging?: boolean; }; export type Tooltip = { position: Position; text: string; }; export type EditHandleType = 'existing' | 'intermediate' | 'snap-source' | 'snap-target' | 'scale' | 'rotate'; export type EditHandleFeature = Feature; export type TentativeFeature = Feature; export type GuideFeature = EditHandleFeature | TentativeFeature; export type GuideFeatureCollection = { type: 'FeatureCollection'; features: Readonly[]; properties?: {}; }; export type ModeProps = { data: TData; modeConfig: any; selectedIndexes: number[]; cursor: string | null | undefined; lastPointerMoveEvent: PointerMoveEvent; onEdit: (editAction: EditAction) => void; onUpdateCursor: (cursor: string | null | undefined) => void; }; //# sourceMappingURL=types.d.ts.map