import type { WorkDocumentModel, WorkDocumentNode } from './work-types'; import { type DocumentLazyHtmlProjection } from './work-document-lazy-html'; export declare const DOCUMENT_LAZY_BLOCK_NODE = "documentLazyBlock"; export declare const DOCUMENT_LAZY_INITIAL_CHUNK_COUNT = 2; export declare const DOCUMENT_LAZY_POSITION_BOUNDARY = "\uFFFC"; export interface PreparedLazyDocumentEditorSource { lazyChunkCount: number; payloads: ReadonlyMap; root: WorkDocumentNode; } /** * Builds a compact editor-only projection for parser-authenticated plain DOCX * models. Every lazy leaf retains the exact node size and text offsets of its * complete subtree, while the canonical WorkDocumentModel remains untouched. */ export declare function prepareLazyDocumentEditorSource(model: WorkDocumentModel, allowCreate: boolean, html?: string): PreparedLazyDocumentEditorSource | null; export declare function documentLazyHtmlProjection(model: WorkDocumentModel | null | undefined): DocumentLazyHtmlProjection | null; export declare function invalidateDocumentLazyHtmlProjection(model: WorkDocumentModel | null | undefined): void; export declare function documentLazyChunkContent(model: WorkDocumentModel | null | undefined, chunkId: string): readonly WorkDocumentNode[] | null; /** * Replaces editor-only lazy blocks with their canonical structured payloads. * Hydrated leaves update the payload registry so subsequent remounts retain * user edits without forcing every untouched subtree through ProseMirror. */ export declare function materializeLazyDocumentEditorRoot(root: WorkDocumentNode, model: WorkDocumentModel | null | undefined): WorkDocumentNode; /** Keeps the process-local lazy payload registry across controlled revisions. */ export declare function transferLazyDocumentModelState(previous: WorkDocumentModel | null | undefined, next: WorkDocumentModel): void; export declare function documentNodeUsesLazyPayload(node: WorkDocumentNode): boolean; export declare function simpleDocumentNodeSize(node: WorkDocumentNode): number | null;