import * as Effect from 'effect/Effect';
import { type OperationInvoker } from '@dxos/operation';
import type { UndoRegistry } from './undo-registry';
/**
 * HistoryTracker interface - tracks operation history and provides undo.
 */
export interface HistoryTracker {
    undo: () => Effect.Effect<void, Error>;
    undoPromise: () => Promise<{
        error?: Error;
    }>;
    canUndo: () => boolean;
}
/**
 * Creates a HistoryTracker that subscribes to invocation events and provides undo.
 */
export declare const make: (invoker: OperationInvoker.OperationInvokerInternal, undoRegistry: UndoRegistry) => HistoryTracker;
//# sourceMappingURL=history-tracker.d.ts.map