import type { WorkDocumentNode } from './work-types'; export type DocumentLazyHtmlTablePart = 'complete' | 'first' | 'middle' | 'last'; export interface DocumentLazyHtmlRange { from: number; id: string; tablePart: DocumentLazyHtmlTablePart | null; to: number; } export interface DocumentLazyHtmlProjection { html: string; orderedRanges: DocumentLazyHtmlRange[]; ranges: ReadonlyMap; } /** * Indexes canonical HTML without copying its chunk strings. This projection is * available only for the parser-authenticated paragraph/table subset. */ export declare function createDocumentLazyHtmlProjection(html: string, root: WorkDocumentNode): DocumentLazyHtmlProjection | null; export declare function patchDocumentLazyHtmlProjection(projection: DocumentLazyHtmlProjection, replacements: ReadonlyMap): string | null; export declare function documentLazyHtmlProjectionFingerprint(projection: DocumentLazyHtmlProjection): string | null; export declare function documentLazyHtmlChunkFragment(html: string, tablePart: DocumentLazyHtmlTablePart | null): string | null;