import type { DesignSlot, PostextConfig } from '../types.js'; /** What a design slot of the configuration draws: a running head * (`header`, `footer`, a heading style's own, a page template's own), a * heading design, a part page (`parts.design`, `parts.versoDesign`), a * contents part row (`toc.parts.design`), a page template's decoration * (`pageTemplates[i].decoration`, and its variants') or a box style's * design (`calloutStyles[i].design.slot`, #1014). */ export type ConfigDesignSlotKind = 'header' | 'footer' | 'heading' | 'part' | 'tocRow' | 'decoration' | 'box'; export interface ConfigDesignSlot { /** Where the slot sits: `header`, `headingStyles[2].advancedDesign.slot`, * `htmlViewer.overrides.parts.design`. Its elements are at * `.elements[i]`. */ path: string; kind: ConfigDesignSlotKind; /** The setting the slot belongs to: the heading style, heading level or * page template as a whole (`headingStyles[2]`, `headings.levels[0]`, * `pageTemplates[1]`), else the slot itself. */ owner: string; /** The `id` of the heading style or page template the slot belongs to. */ ownerId?: string; slot: DesignSlot; } /** * Every design slot a configuration sets, in a fixed order: the page header * and footer, each heading level's and heading style's design (and a * style's running heads), each page template's decoration and running * heads (its variants' after its own), the part page and its verso, the * contents part rows, each box style's design — then the same in * `htmlViewer.overrides`. Only the slots the config * writes: the defaults are not listed. Pure. */ export declare function configDesignSlots(config: PostextConfig | undefined): ConfigDesignSlot[]; //# sourceMappingURL=slots.d.ts.map