import { ReactNode } from "react"; export interface PortalHostProps { /** The host stands for a screen of its own — a frame drawn at a stated size inside a larger window: a * dialog opened within covers that screen and takes its form (a phone's sheet), never the window's. */ screen?: boolean; children: ReactNode; } export declare function PortalHost({ screen, children }: PortalHostProps): import("react").JSX.Element; /** The nearest host's node for an overlay that does not use {@link Portal}, since Base UI's `Portal` takes * a container element. `null` without a host, Base UI's default (the document). */ export declare function useOverlayHost(): HTMLElement | null; /** The nearest screen's host (`PortalHost screen`) — a dialog covers the screen it opened on, and at a * phone's width it is that screen's sheet. `null` without one: the document, the window's screen. */ export declare function useScreenHost(): HTMLElement | null; /** Renders nothing until a host exists: the host mounts on its first commit, so an overlay opened then * re-renders into it instead of escaping to `document.body` and out of the focus trap. */ export declare function Portal({ children }: { children: ReactNode; }): import("react").ReactPortal | null;