import { ReactNode } from "react"; /** * Provides a portal target for descendants. * Add at app root and inside an overlay to handle stacking contexts. */ export declare function PortalHost({ children }: { children: ReactNode; }): import("react").JSX.Element; /** * THE NEAREST HOST'S MOUNT NODE, for an overlay that does not portal through * {@link Portal} — Base UI's own `Portal` takes a container ELEMENT rather than * rendering into one. * * It is the same rule this module already states, reached by the other door: an * overlay opened from inside a host belongs in that host's DOM tree. `null` * where there is no host, which is Base UI's own default — the document. */ export declare function useOverlayHost(): HTMLElement | null; /** * Renders children into the nearest `PortalHost`, and NOTHING until there is * one — the host mounts its container on its first commit, so an overlay opened * in that same commit re-renders into it rather than escaping to `document.body` * and out of the dialog whose focus trap owns it. */ export declare function Portal({ children }: { children: ReactNode; }): import("react").ReactPortal | null;