/** * Shared vertical-text helpers for superscript, subscript, and explicit baseline shifts. * * OOXML allows both semantic vertical alignment (`vertAlign`) and an explicit * position offset (`position`). During rendering, a zero offset is an identity * value and should behave the same as an absent offset. */ export type VerticalTextAlign = 'superscript' | 'subscript' | 'baseline'; type VerticalTextFormatting = { vertAlign?: VerticalTextAlign | null; baselineShift?: number | null; }; /** * Font size scaling factor for default superscript/subscript rendering. * Matches Microsoft Word's default visual behavior closely enough for layout. */ export declare const SUBSCRIPT_SUPERSCRIPT_SCALE = 0.65; /** * Normalizes explicit baseline shifts for rendering. * * A numeric shift of zero is a no-op and should not override semantic * superscript/subscript styling. This preserves the raw OOXML value for * round-tripping while giving the renderer a clean intent model. */ export declare function normalizeBaselineShift(baselineShift: number | null | undefined): number | undefined; export declare function hasExplicitBaselineShift(baselineShift: number | null | undefined): boolean; export declare function isSuperscriptOrSubscript(vertAlign: VerticalTextAlign | null | undefined): boolean; /** * Returns true when the run should use the default superscript/subscript * presentation path: scaled font size plus the renderer's default raise/lower. */ export declare function usesDefaultScriptLayout(formatting: VerticalTextFormatting): boolean; /** * Applies default superscript/subscript font scaling when the run uses the * default semantic layout path. */ export declare function scaleFontSizeForVerticalText(fontSize: number, formatting: VerticalTextFormatting): number; /** * Returns the original base font size for runs that already carry scaled * superscript/subscript text metrics. */ export declare function resolveBaseFontSizeForVerticalText(fontSize: number, formatting: VerticalTextFormatting): number; export {}; //# sourceMappingURL=vertical-text.d.ts.map