import type { HsonNode } from "../../core/types.js"; export { canonical_hson_graph_equal as canonical_graph_equal } from "../../core/canonical-hson-equal.js"; import type { DocumentLiveMapCapture, DocumentLiveMapInstallOptions, DocumentLiveMapMode, LiveMapGraphCommit, LiveMapGraphReplaceRootOp } from "../../types/livemap.types.js"; import { type LiveMapDocumentIdentityEpochController } from "./livemap.document.capture.js"; import { type LiveMapDocumentIdentityOverlay } from "./livemap.document.identity.js"; export type PreparedDocumentInstall = Readonly<{ mode: DocumentLiveMapMode; root: HsonNode; overlay: LiveMapDocumentIdentityOverlay; }>; /** Internal bridge that keeps the public document façade narrower than Core. */ export type LiveMapDocumentInstallController = Readonly<{ mode: DocumentLiveMapMode; rev: () => number; overlay: () => LiveMapDocumentIdentityOverlay; identityEpoch: LiveMapDocumentIdentityEpochController; apply: (candidate: PreparedDocumentInstall, continuity: "same-epoch" | "new-epoch") => LiveMapGraphCommit; restore: (candidate: PreparedDocumentInstall, revision: number, continuity: "same-epoch" | "new-epoch") => void; }>; /** Validate an exact canonical capture with optional sparse QUID metadata, then apply it. */ export declare function install_livemap_document_capture(controller: LiveMapDocumentInstallController, capture: DocumentLiveMapCapture, options?: DocumentLiveMapInstallOptions): LiveMapGraphCommit; /** Restore a canonical capture and its revision without creating a local revision. */ export declare function restore_livemap_document_capture(controller: LiveMapDocumentInstallController, capture: DocumentLiveMapCapture, options?: DocumentLiveMapInstallOptions): void; export declare function prepare_document_install(capture: DocumentLiveMapCapture, targetMode: DocumentLiveMapMode, identity?: DocumentLiveMapInstallOptions["identity"]): PreparedDocumentInstall; //# sourceMappingURL=livemap.document.install.d.ts.map