export type WorkDocumentScriptFontSlot = 'ascii' | 'highAnsi' | 'eastAsia' | 'complexScript'; export type WorkDocumentScriptFontHint = 'default' | 'eastAsia' | 'cs'; export type WorkDocumentThemeFont = 'majorEastAsia' | 'majorBidi' | 'majorAscii' | 'majorHAnsi' | 'minorEastAsia' | 'minorBidi' | 'minorAscii' | 'minorHAnsi'; export interface WorkDocumentScriptFontFace { /** Exact direct w:rFonts value, when present. */ name?: string; /** Exact theme reference, when present. */ theme?: WorkDocumentThemeFont; /** Browser-resolved family retained independently from source identity. */ resolved?: string; } export interface WorkDocumentScriptFonts { ascii?: WorkDocumentScriptFontFace; highAnsi?: WorkDocumentScriptFontFace; eastAsia?: WorkDocumentScriptFontFace; complexScript?: WorkDocumentScriptFontFace; hint?: WorkDocumentScriptFontHint; } export interface WorkDocumentScriptFontSegment { from: number; to: number; slot: WorkDocumentScriptFontSlot; } export interface WorkDocumentScriptFontPatch { latin?: string | null; eastAsia?: string | null; complexScript?: string | null; } export declare const DOCUMENT_SCRIPT_FONTS_ATTRIBUTE = "data-office-script-fonts"; export declare const DOCUMENT_SCRIPT_FONT_SLOT_ATTRIBUTE = "data-office-script-font-slot"; export declare function normalizeDocumentScriptFonts(source: unknown): WorkDocumentScriptFonts | null; export declare function serializeDocumentScriptFonts(source: unknown): string | null; export declare function parseDocumentScriptFonts(source: string | null | undefined): WorkDocumentScriptFonts | null; export declare function documentScriptFontsFromElement(element: HTMLElement): WorkDocumentScriptFonts | null; export declare function documentScriptFontSlotFromElement(element: HTMLElement): WorkDocumentScriptFontSlot | null; export declare function documentScriptFontsDomAttributes(source: unknown, slot: unknown): Record; export declare function documentScriptFontFamily(source: unknown, slot: WorkDocumentScriptFontSlot): string | undefined; export declare function documentScriptFontFallbackSlots(slot: WorkDocumentScriptFontSlot): readonly WorkDocumentScriptFontSlot[]; export declare function documentScriptFontFamilyForRendering(source: unknown, slot: WorkDocumentScriptFontSlot, currentFontFamily?: unknown): string | undefined; export declare function documentScriptFontDirectFamily(source: unknown, slot: WorkDocumentScriptFontSlot): string | null; export declare function documentScriptFontsForAllText(fontFamily: unknown): WorkDocumentScriptFonts | null; export declare function patchDocumentScriptFonts(source: unknown, patch: WorkDocumentScriptFontPatch, fallbackFontFamily?: unknown): WorkDocumentScriptFonts | null; export declare function documentScriptFontSegments(text: string, hint?: WorkDocumentScriptFontHint, forceComplexScript?: boolean): WorkDocumentScriptFontSegment[]; export declare function normalizeDocumentScriptFontSlot(value: unknown): WorkDocumentScriptFontSlot | null; export declare function normalizeDocumentScriptFontHint(value: unknown): WorkDocumentScriptFontHint | null; export declare function normalizeDocumentThemeFont(value: unknown): WorkDocumentThemeFont | null; export declare function documentScriptFontSlotFromHint(hint: WorkDocumentScriptFontHint | undefined): WorkDocumentScriptFontSlot; export declare function documentFontNameFromCssFamily(value: unknown): string | null; export declare function cssDocumentFontFamily(value: unknown): string | null; export declare function normalizeDocumentFontName(value: unknown): string | null; export declare const scriptFontSlots: readonly ["ascii", "highAnsi", "eastAsia", "complexScript"];