/** * Shared read/write batch for overflow measurements. Many instances mount in * one commit (a virtualized row chunk × several overflow cells); measuring in * each layout effect reflows per instance, since its setState flushes before * the next reads `offsetWidth`. One pre-paint microtask runs all reads against * clean layout, then all writes — React batches them, no interleaving. */ /** Write phase of a batched measurement: state + style writes, no DOM reads. */ export interface WritePhase { (): void; } /** Read phase: DOM reads only; returns the write to run after all reads. */ export interface ReadPhase { (): WritePhase; } /** * Queue a measurement for the next pre-paint flush. Returns a cancel * function — call it on effect cleanup so unmounted or re-rendered * instances never measure stale refs. */ export declare const scheduleOverflowMeasurement: (read: ReadPhase) => (() => void);