import { Edge, EdgeChange, Node, NodeChange, ReactFlowInstance, Viewport } from 'reactflow'; import { FlowTreeNode, InternalFlow } from '../types'; import { DocWithHistoryManager } from '../utils/yjs'; export interface FlowEditorState { flattenNodes: Record; onFlattenNodesChange?: (flattenNodes: Record) => void; flattenEdges: Record; onFlattenEdgesChange?: (flattenEdges: Record) => void; selectedKeys: string[]; onSelectionChange?: (selection: string[]) => void; onNodesChange?: (nodeChanges: NodeChange[]) => void; beforeNodesChange?: (nodeChanges: NodeChange[]) => boolean; afterNodesChange?: (nodeChanges: NodeChange[]) => void; onEdgesChange?: (edges: EdgeChange[]) => void; beforeEdgesChange?: (edges: EdgeChange[]) => boolean; afterEdgesChange?: (edges: EdgeChange[]) => void; onNodesTreeChange?: (nodesTree: FlowTreeNode[]) => void; onViewPortChange?: (viewport: Viewport) => void; reactflow: ReactFlowInstance; yjsDoc: DocWithHistoryManager; } export declare const initialState: FlowEditorState;