import { Dialog as BaseDialog } from "@base-ui/react/dialog"; import { useRender } from "@base-ui/react/use-render"; import * as React from "react"; interface DialogProps extends React.ComponentPropsWithRef { } interface DialogTriggerProps extends Omit, "className"> { /** Additional CSS classes merged with the dialog trigger styles. @default undefined */ className?: string; /** Backward-compatible child-slot API that maps the child element to `render`. @default false @deprecated Prefer Base UI's `render` prop. */ asChild?: boolean; } interface DialogCloseProps extends Omit, "className"> { /** Additional CSS classes merged with the dialog close control styles. @default undefined */ className?: string; } interface DialogOverlayProps extends Omit, "className"> { /** Additional CSS classes merged with the dialog backdrop styles. @default undefined */ className?: string; } interface DialogContentProps extends Omit, "className"> { /** Additional CSS classes merged with the dialog content styles. @default undefined */ className?: string; } interface DialogHeaderProps extends React.ComponentPropsWithRef<"div"> { /** Additional CSS classes merged with the dialog header layout styles. @default undefined */ className?: string; /** Custom element or render callback used to replace the default header container. @default undefined */ render?: useRender.RenderProp>; /** Backward-compatible child-slot API that maps the child element to `render`. @default false @deprecated Prefer the `render` prop. */ asChild?: boolean; } interface DialogFooterProps extends React.ComponentPropsWithRef<"div"> { /** Additional CSS classes merged with the dialog footer layout styles. @default undefined */ className?: string; /** Custom element or render callback used to replace the default footer container. @default undefined */ render?: useRender.RenderProp>; /** Backward-compatible child-slot API that maps the child element to `render`. @default false @deprecated Prefer the `render` prop. */ asChild?: boolean; } interface DialogTitleProps extends Omit, "className"> { /** Additional CSS classes merged with the dialog title styles. @default undefined */ className?: string; } interface DialogDescriptionProps extends Omit, "className"> { /** Additional CSS classes merged with the dialog description styles. @default undefined */ className?: string; } /** * Coordinates modal dialog state, focus management, and accessibility semantics. * * @remarks * - Renders no DOM element by default and coordinates descendant dialog parts * - Built on {@link https://base-ui.com/react/components/dialog | Base UI Dialog} * - Supports composition through descendant `render` props * - Styling via CSS Modules with `--ac-*` custom properties * * @example Basic usage * ```tsx * * Open * * Details * * * ``` * * @see {@link https://base-ui.com/react/components/dialog | Base UI Documentation} */ declare function Dialog(props: Readonly): React.ReactElement; declare namespace Dialog { var displayName: string; } /** * Opens the dialog from an interactive trigger element. * * @remarks * - Renders a `