import { default as React } from 'react'; import { FloatingPortalProps, UseFloatingOptions, UseRoleProps } from '@floating-ui/react'; import { ThemeTypes } from '@viasat/beam-shared/utils'; import { DialogSize } from '@viasat/beam-shared/components/dialog'; import { FloatingUIProps } from '../FloatingUI/FloatingUI.context'; export interface DialogProps extends Omit { /** * Specify the theme of the Dialog. By default it inherits the theme from the parent */ theme?: ThemeTypes; /** * Specify content and sub-components of the Dialog * */ children: React.ReactNode; /** * Specify the default open state */ defaultOpen?: boolean; /** * Specify the display state */ open?: boolean; /** * @todo Uncomment when we allow different dialog placements * * Specify if the Dialog should have an overlay * @default true */ /** * Callback function that receives change in visibility state of the FloatingUI * * * onOpenChange * * */ onOpenChange?: UseFloatingOptions['onOpenChange']; /** * Specify if the Dialog is portalled */ portalled?: boolean | FloatingPortalProps; /** * Adds base screen reader props to the reference and floating elements for a given `role` */ role?: UseRoleProps; /** * Specify the size of the Dialog * @default md */ size?: DialogSize; } export declare function Dialog({ children, size, focusConfiguration: _focusConfiguration, theme, role: _role, ...props }: DialogProps): import("react/jsx-runtime").JSX.Element; export declare namespace Dialog { var displayName: string; var Trigger: { ({ children, ...props }: import("./Dialog.Trigger").DialogTriggerProps): import("react/jsx-runtime").JSX.Element; displayName: string; }; var CloseTrigger: { ({ children, ...props }: import("./Dialog.Trigger").DialogCloseTriggerProps): import("react/jsx-runtime").JSX.Element; displayName: string; }; var Header: { ({ children, className, dismissible, appearance, closeButtonAriaLabel, heading, description, icon, iconAriaLabel, divider, disableDividerOnOverflow, ...props }: import("./Dialog.Header").DialogHeaderProps): import("react/jsx-runtime").JSX.Element; displayName: string; }; var Content: typeof import("./Dialog.Content").Content; var Body: React.ForwardRefExoticComponent & React.RefAttributes> & { displayName: string; }; var Footer: { ({ children, className, ...props }: import("./Dialog.Footer").DialogFooterProps): import("react/jsx-runtime").JSX.Element; displayName: string; }; } export default Dialog;