import type { WorkflowEdge as WorkflowEdgeType, WorkflowNode } from "../../editor";
export interface FlowEdgeProps {
    edge: WorkflowEdgeType;
    nodes: WorkflowNode[];
    onSelect?: (id: string) => void;
    onDelete?: (id: string) => void;
    /** Commit a label edit. When omitted, double-click is a no-op. */
    onLabelChange?: (id: string, label: string) => void;
    /** Show the X delete affordance at the midpoint on hover/select. */
    showDelete?: boolean;
    /** Curvature for bezier routing (0–1). Smaller = tighter. Default 0.25. */
    curvature?: number;
    /** Corner radius for smoothstep routing. Default 8 px. */
    borderRadius?: number;
    /**
     * Bust-cache token from FlowCanvas. Bumps whenever the handle registry
     * mutates so this edge re-renders against fresh handle descriptors —
     * fixes stale geometry after collapse/uncollapse of a subflow whose
     * children mount their Handles in a follow-up effect tick.
     */
    handleVersion?: number;
}
declare function FlowEdgeImpl({ edge, nodes, onSelect, onDelete, onLabelChange, showDelete, curvature, borderRadius, }: FlowEdgeProps): import("react/jsx-runtime").JSX.Element;
export declare const FlowEdge: import("react").MemoExoticComponent<typeof FlowEdgeImpl>;
export {};
//# sourceMappingURL=FlowEdge.d.ts.map