import { FlowMeta, FlowMetaParam, FlowMetaType } from '../types'; import { NodeProps } from './AutoFlow'; export declare enum OpearteTypeEnum { ADD = "add", REMOVE = "remove", UPDATE = "update" } export declare enum ConnectorKeyEnum { CONNECTOR = "connector", DEFAULT_CONNECTOR = "defaultConnector", NEXT_VALUE_CONNECTOR = "nextValueConnector" } export interface HistoryItem { opearteId?: string; opearteType?: OpearteTypeEnum; useConnectorKey?: ConnectorKeyEnum; opearteRule?: { id: string; connector: string; }; type?: FlowMetaType; data?: FlowMetaParam; flow: FlowMeta; flowNodes: NodeProps[]; timestamp?: number; } export interface IHistoryProps { onRedo(item: HistoryItem): void; onUndo(item: HistoryItem): void; } export declare class History { context?: HistoryItem; props?: IHistoryProps; current: number; history: HistoryItem[]; updateTimer: null; maxSize: number; constructor(context?: HistoryItem, props?: IHistoryProps); makeObservable(): void; list(): HistoryItem[]; push(context: HistoryItem): void; get allowUndo(): boolean; get allowRedo(): boolean; redo(): void; undo(): void; goTo(index: number): void; clear(): void; }