import type { Source } from './types'; export interface CompositionOptions { /** Image URL prepended as a lone front cover (adds a page). */ frontCover?: string | null; /** Image URL appended as a lone back cover (adds a page). */ backCover?: string | null; /** Replace source pages with image URLs, keyed by 0-based source index (negative = from the end). */ pages?: Record | null; } /** * Wrap `base` so image covers/replacements sit alongside it, or return `base` * unchanged when nothing is requested. Covers ADD pages (front prepended, back * appended); `pages` REPLACE existing source pages. `pages` indexes the base's own * pages, so it is unaffected by an added cover. */ export declare function composeSource(base: Source, options: CompositionOptions): Source;