import type { ResolvedSdocsConfig, StageLayout } from '../types.js'; /** The sizing attributes a block or entity can carry. */ export interface SizingAttrs { maxWidth: string | null; padding: string | null; direction: string | null; gap: string | null; contentX: string | null; contentY: string | null; background: string | null; minHeight: string | null; } interface EntityLike { kind: string; sizing: Partial & { maxWidth?: string | null; }; } /** * Resolve one stage's layout through the cascade: block attribute → entity * attribute → config default. * * Shared rather than inlined because the numbers are quoted in two places that * must agree — the style the stage actually renders with, and what the MCP * server reports to a client deciding how to photograph it. A padding the tool * reports but the stage doesn't apply is worse than no answer. */ export declare function resolveStageLayout(entity: EntityLike, block: SizingAttrs | undefined, config: ResolvedSdocsConfig): StageLayout; export {};