import type { RefObject } from "react";
import type { WorkflowGraphModel } from "./workflow-graph-model.js";
import type { GraphCommand } from "./graph-commands.js";
/** Return value of {@link useGraphHistory}. */
export interface UseGraphHistoryReturn {
    readonly currentModel: WorkflowGraphModel;
    readonly canUndo: boolean;
    readonly canRedo: boolean;
    readonly dispatch: (command: GraphCommand) => WorkflowGraphModel;
    readonly undo: () => void;
    readonly redo: () => void;
    readonly reset: (model: WorkflowGraphModel) => void;
}
/**
 * React wrapper around {@link GraphHistory} providing undo/redo state
 * management and keyboard shortcut binding.
 *
 * Keyboard shortcuts (Ctrl/Cmd+Z, Ctrl/Cmd+Shift+Z) are only active
 * when the referenced container element contains the active focus target,
 * preventing conflicts with other editors on the page.
 *
 * @param initialModel - The starting graph model (from YAML parse).
 * @param containerRef - Ref to the DOM element that scopes keyboard shortcuts.
 *
 * @since T15 Batch 2 (Node Authoring)
 */
export declare function useGraphHistory(initialModel: WorkflowGraphModel | null, containerRef: RefObject<HTMLDivElement | null>): UseGraphHistoryReturn;
//# sourceMappingURL=useGraphHistory.d.ts.map