/** * A pins its height to its content and animates between measurements, but it * measures on light-DOM mutations only: a height change that happens inside a child's shadow root — * a drawer sliding open on a CSS transition — is invisible to it, and the container keeps clipping * at the old height until something unrelated (a tab switch, a window resize) makes it look again. * * A nested solves this for itself by announcing its animation to every * enclosing one, which then stops clipping (height auto, no transition) until the child has * settled and measures again. This is that protocol for a panel that animates with CSS instead: * call `announce` whenever a change that moves the panel's height begins; the announcement is * held open for the duration and extended by any further call inside it. */ export declare const createHeightChangeAnnouncer: (el: HTMLElement) => { announce(durationMs: number): void; dispose(): void; };