import { type AppearancePresetId, type BoundaryOptionId, type DesignBlockId, type DesignBoundaryId, type LayoutVariantKey, type PageDesignEditorReadModel } from '../../../../theme-core/src/site-styles/index';
import { type HistoryState } from '../../../../content-editor/src/index';
import type { PreviewCustomizeAction } from '../blocks/previewCustomizeActions';
import type { SystemCustomizeFacetHistorySelection } from '../../../../blocks/src/system/customize/facets';
type PreviewLoadedEditorModel = PageDesignEditorReadModel;
export type PreviewCustomizeHistoryEntry = Readonly<{
    kind: 'layout';
    blockId: PreviewCustomizeActionBlockId;
    fromLayoutVariantKey: LayoutVariantKey;
    toLayoutVariantKey: LayoutVariantKey;
}> | Readonly<{
    kind: 'look';
    blockId: PreviewCustomizeActionBlockId;
    fromAppearancePresetId: AppearancePresetId | null;
    toAppearancePresetId: AppearancePresetId | null;
}> | Readonly<{
    kind: 'block-facet';
    blockId: PreviewCustomizeActionBlockId;
} & SystemCustomizeFacetHistorySelection> | Readonly<{
    kind: 'boundary';
    boundaryId: DesignBoundaryId;
    previousBlockId: PreviewCustomizeActionBlockId;
    nextBlockId: PreviewCustomizeActionBlockId;
    fromBoundaryOptionId: BoundaryOptionId | null;
    toBoundaryOptionId: BoundaryOptionId | null;
}>;
type PreviewCustomizeActionBlockId = DesignBlockId;
export type PreviewCustomizeHistoryPresent = Readonly<{
    editorModel: PreviewLoadedEditorModel;
    entry: PreviewCustomizeHistoryEntry | null;
}>;
export type PreviewCustomizeHistoryState = HistoryState<PreviewCustomizeHistoryPresent>;
export declare function createPreviewCustomizeHistoryState(editorModel: PreviewLoadedEditorModel): PreviewCustomizeHistoryState;
export declare function canUndoPreviewCustomizeHistory(state: PreviewCustomizeHistoryState): boolean;
export declare function canRedoPreviewCustomizeHistory(state: PreviewCustomizeHistoryState): boolean;
export declare function pushPreviewCustomizeHistoryEntry(state: PreviewCustomizeHistoryState, entry: PreviewCustomizeHistoryEntry, editorModel: PreviewLoadedEditorModel): PreviewCustomizeHistoryState;
export declare function replacePreviewCustomizeHistoryModel(state: PreviewCustomizeHistoryState, editorModel: PreviewLoadedEditorModel): PreviewCustomizeHistoryState;
export declare function undoPreviewCustomizeHistory(state: PreviewCustomizeHistoryState): PreviewCustomizeHistoryState;
export declare function redoPreviewCustomizeHistory(state: PreviewCustomizeHistoryState): PreviewCustomizeHistoryState;
export declare function previewCustomizeHistoryEntryFromAction(editorModel: PreviewLoadedEditorModel, action: PreviewCustomizeAction): PreviewCustomizeHistoryEntry | null;
export declare function previewCustomizeUndoActionForEntry(entry: PreviewCustomizeHistoryEntry, editorModel: PreviewLoadedEditorModel): PreviewCustomizeAction;
export declare function previewCustomizeRedoActionForEntry(entry: PreviewCustomizeHistoryEntry, editorModel: PreviewLoadedEditorModel): PreviewCustomizeAction;
export declare function previewCustomizeHistoryPresentEquals(left: PreviewCustomizeHistoryPresent, right: PreviewCustomizeHistoryPresent): boolean;
export declare function contentRevisionIdForBlock(editorModel: PreviewLoadedEditorModel, blockId: PreviewCustomizeActionBlockId): string | null;
export {};
