import { Node, Edge } from '../FlowPanel';
import { default as FlowManager } from '../manager';
import { ParseFlowLog } from '../type';
import { FlowData } from '../manager/type';

export type OnChangeFlow<P extends Record<string, any>> = (flow: FlowData<P>) => void;
export default function useFlowToNode<P extends Record<string, any>>(flow: FlowData<P>, logInfo?: Pick<ParseFlowLog, 'input' | 'log' | 'output'>, onChange?: OnChangeFlow<P>): {
    nodes: Omit<Node<any>, "position">[];
    edges: Edge<any>[];
    flowManager: FlowManager<P>;
};
