import { StatePack } from "../history/statePack"; import { DeltaState } from "../history/deltaState"; import { List, Stack } from "../longan/gs.collections"; import { Process } from "../process"; import { Command } from "../workFlow/command"; import { ProcessManagerBase } from "./processManagerBase"; export declare class CommandManager extends ProcessManagerBase { commandStack: Stack; _previousCommand: Command; protected isCommandChanging: boolean; protected _defaultCommandType: any; updateCommandUI: List<(process: Process, byState: boolean) => void>; beforeCommandBegin: List<(process: Process, command: Command, byState: boolean) => void>; beforeCommandEnd: List<(process: Process, command: Command, byState: boolean) => void>; afterCommandBegin: List<(process: Process, command: Command, byState: boolean) => void>; afterCommandEnd: List<(process: Process, command: Command, byState: boolean) => void>; beforeCommandInterrupt: List<(process: Process, command: Command, byState: boolean) => void>; beforeCommandRestore: List<(process: Process, command: Command, byState: boolean) => void>; afterCommandRestore: List<(process: Process, command: Command, byState: boolean) => void>; afterCommandInterrupt: List<(process: Process, command: Command, byState: boolean) => void>; get defaultCommandType(): any; set defaultCommandType(value: any); get currentCommand(): Command; get previousCommand(): Command; get interruptedCommand(): Command; constructor(process: Process); private internalExecute; execute(command: Command, deltaState?: DeltaState): StatePack; private internalInterruptExecute; interruptExecute(command: Command, deltaState?: DeltaState): StatePack; interruptExecuteByState(command: Command): void; terminateByState(command: Command): void; terminateCurrentCommand(deltaState?: DeltaState): StatePack; private handledDelatStateOnCommandEnd; }