import type { PathVertex, Segment, Waypoint } from '../types';
export type UseWaypointEditorArgs = {
    edgeId: string;
    waypoints: Waypoint[];
    pathPoints: PathVertex[];
    enabled: boolean;
    onChange?: (next: Waypoint[]) => void;
};
export type WaypointHandlers = {
    onMouseDown: (index: number, e: React.MouseEvent) => void;
    onDoubleClick: (index: number) => void;
};
export type SegmentHandlers = {
    onMouseDown: (segment: Segment, e: React.MouseEvent) => void;
    onDoubleClick: (segmentIndex: number, e: React.MouseEvent) => void;
};
export type WaypointEditor = {
    isDragging: boolean;
    waypointHandlers: WaypointHandlers;
    segmentHandlers: SegmentHandlers;
};
export declare function useWaypointEditor(args: UseWaypointEditorArgs): WaypointEditor;
//# sourceMappingURL=useWaypointEditor.d.ts.map