import type VTableSheet from '../components/vtable-sheet'; import type { ISheetDefine } from '../ts-types'; import type { HistoryTransaction } from '@visactor/vtable-plugins'; export declare class WorkbookHistoryManager { private sheet; private undoStack; private redoStack; private currentTransaction; private maxHistory; private enabled; isReplaying: boolean; private changeListeners; constructor(sheet: VTableSheet, options?: { maxHistory?: number; }); canUndo(): boolean; canRedo(): boolean; onChange(listener: () => void): () => void; private emitChange; suspend(): void; resume(): void; startTransaction(): void; endTransaction(): void; clear(): void; updateOptions(options: { maxHistory?: number; }): void; undo(): void; redo(): void; recordTableTransaction(args: { sheetKey?: string; tx: HistoryTransaction; }): void; addSheet(args: { sheet: ISheetDefine; activate?: boolean; }): void; removeSheet(sheetKey: string): void; renameSheet(sheetKey: string, newTitle: string): void; reorderSheet(sourceKey: string, targetKey: string, position: 'left' | 'right'): void; private pushTransaction; private pushCommand; private trimHistory; private applyCommand; private addSheetInternal; private removeSheetInternal; private renameSheetInternal; private applyTableTransaction; private ensureWorkSheetInstance; private getSheetOrder; private setSheetOrder; private getActiveSheetKey; }