import { Edge } from 'reactflow';
export type EdgesState = Record<string, Edge>;
interface AddEdgeAction {
    type: 'addEdge';
    edge: Edge;
}
interface BatchAddEdgesAction {
    type: 'addEdges';
    edges: Record<string, Edge>;
}
interface UpdateEdgeAction {
    type: 'updateEdge';
    id: string;
    edge: Edge;
}
interface UpdateEdgeDataAction {
    type: 'updateEdgeData';
    id: string;
    newData: any;
    deepReplace?: boolean;
}
interface DeleteEdgeAction {
    type: 'deleteEdge';
    id: string;
}
interface CreateEdgeFromConnectionAction {
    type: 'createEdgeFromConnection';
    edge: Edge;
}
export type EdgeDispatch = AddEdgeAction | BatchAddEdgesAction | UpdateEdgeAction | DeleteEdgeAction | CreateEdgeFromConnectionAction | UpdateEdgeDataAction;
export declare const edgesReducer: (state: EdgesState, payload: EdgeDispatch) => EdgesState;
export {};
