import type { Position } from '../../../../xyflow/react.ts';
import type { EdgeRouting, PathVertex, Point, Segment, Waypoint } from '../types';
export type UseEdgeGeometryArgs = {
    routing: EdgeRouting;
    sourceNodeId: string;
    targetNodeId: string;
    sourceHandleId?: string | null;
    targetHandleId?: string | null;
    sourceX: number;
    sourceY: number;
    sourcePosition: Position;
    targetX: number;
    targetY: number;
    targetPosition: Position;
    waypoints: Waypoint[];
    enableSegments?: boolean;
    hideArrowHead?: boolean;
};
export type EdgeGeometry = {
    edgePath: string;
    pathPoints: PathVertex[];
    segments: Segment[];
    labelPoint: Point;
    arrow: {
        angle: number;
        offset: Point;
    };
};
export declare function useEdgeGeometry(args: UseEdgeGeometryArgs): EdgeGeometry;
//# sourceMappingURL=useEdgeGeometry.d.ts.map