import { type Inline, type Style } from '@mdgate/document'; /** Tri-state style delta used during cascade resolution. */ export interface StyleDelta { bold: boolean | undefined; italic: boolean | undefined; strike: boolean | undefined; code: boolean | undefined; } export declare function emptyDelta(): StyleDelta; /** Overlay `child` on `base`: an explicit child value wins; unset inherits. */ export declare function mergeDelta(base: StyleDelta, child: StyleDelta): StyleDelta; export declare function applyDelta(delta: StyleDelta, base: Style): Style; export declare function resolveDelta(delta: StyleDelta): Style; export declare function deltasEqual(a: StyleDelta, b: StyleDelta): boolean; /** * Drop from every run the emphasis `base` already carries. A heading style * defines its own typography, so its runs should carry only what they add * beyond it. */ export declare function rebaseEmphasis(inlines: Inline[], base: Style): void;