/** * The pure layout solver. * * `resolveLayout` turns a `LayoutInput` (plain numbers) into a frozen `LayoutSnapshot`. Its only real * work is the two-variable scrollbar fix-point: a vertical scrollbar consumes width, which can make a * horizontal one necessary, which consumes height, which can make the vertical one necessary. The * solve is monotone — a scrollbar only ever shrinks the box, never grows it — so a single corrective * pass after the first guess always converges. There is no loop and no DOM. */ import type { LayoutInput, LayoutSnapshot } from './layoutSnapshot'; /** * Resolves a layout input into an immutable snapshot. Pure: same input, same output, no side effects. * * @param {LayoutInput} input The layout input. * @returns {LayoutSnapshot} */ export declare function resolveLayout(input: LayoutInput): LayoutSnapshot;