import React, { ReactNode } from 'react'; export interface OverlayProps { /** * The container element in which the overlay portal will be placed. * @default document.body */ portalContainer?: Element; /** The overlay to render in the portal. */ children: ReactNode; /** * Disables default focus management for the overlay, including containment and restoration. * This option should be used very carefully. When focus management is disabled, you must * implement focus containment and restoration to ensure the overlay is keyboard accessible. */ disableFocusManagement?: boolean; /** * Whether to contain focus within the overlay. */ shouldContainFocus?: boolean; /** * Whether the overlay is currently performing an exit animation. When true, * focus is allowed to move outside. */ isExiting?: boolean; } export declare const OverlayContext: React.Context<{ contain: boolean; setContain: React.Dispatch>; } | null>; /** * A container which renders an overlay such as a popover or modal in a portal, * and provides a focus scope for the child elements. */ export declare function Overlay(props: OverlayProps): React.ReactPortal | null; /** @private */ export declare function useOverlayFocusContain(): void;