/** * The chrome overlay host — the one body-level surface a Kit overlay paints on. * * A Modal drawn in place is trapped by whatever the screen is sitting in: a * containment box, a transformed ancestor, an `overflow: hidden` column. So it * portals to `document.body` inside its own `.vendo-root`, which is the same * move `VendoToasts` makes and for the same reason — the boundary carries the * theme, so a surface that escaped every themed ancestor is still brand-native. * * `createPortal` and not a second React root: the tree stays UNBROKEN, so the * app context, the keyed `$state` store and a handler bound by the renderer all * reach an overlay exactly as they reach a brick painted in place. */ import { type ReactNode } from "react"; /** * `children` is a function of the host element, because Base UI refuses to * render a popup outside its own `` and that portal has to be * pointed AT this boundary — otherwise it hops to `` on its own and the * popup lands outside the theme scope this element exists to draw. */ export declare function OverlayPortal({ children }: { children: (host: HTMLElement | null) => ReactNode; }): ReactNode;