import { Dialog as DialogPrimitive } from 'radix-ui';
import type { ComponentProps, HTMLAttributes, ReactNode } from 'react';
import type { AsChildProps } from '../utils/AsChildProps';
import type { ButtonProps } from './Button';
import type { ModalContextValue } from './Modal.common';
/**
* A modal dialog component that can be used to display more complex content to
* the user than a ModalAlert. If provided an optional ``
* component, that component will automatically open the dialog when clicked.
*
* @param size - The width of the dialog. Defaults to `medium`.
*/
declare const ModalDialog: ({ size, ...props }: Omit, "variant"> & ComponentProps) => import("react/jsx-runtime").JSX.Element;
declare const ModalDialogTrigger: import("react").ForwardRefExoticComponent>;
/**
* The primary content box of the dialog. Should contain the ``
*/
declare const ModalDialogContent: import("react").ForwardRefExoticComponent, "ref"> & import("react").RefAttributes>;
declare const ModalDialogHeader: {
({ className, children, ...props }: HTMLAttributes): import("react/jsx-runtime").JSX.Element;
displayName: string;
};
/**
* The body of the dialog.
*/
declare const ModalDialogBody: import("react").ForwardRefExoticComponent<({
asChild?: boolean;
className?: string;
children: ReactNode;
} & AsChildProps>) & import("react").RefAttributes>;
/**
* Footer of the dialog. Should contain the `` and
* `` components. Content is displayed right-to-left by
* default.
* @param param0
* @returns
*/
declare const ModalDialogFooter: {
({ className, ...props }: HTMLAttributes): import("react/jsx-runtime").JSX.Element;
displayName: string;
};
/**
* The title of the dialog. Should be provided as a child of the
* `` component.
*/
declare const ModalDialogTitle: import("react").ForwardRefExoticComponent, "ref"> & import("react").RefAttributes>;
/**
* An accessible description to be announced when the dialog is opened. Should
* be provided as a child of the `` component. Children
* should be provided as `
` tags.
*/
declare const ModalDialogDescription: import("react").ForwardRefExoticComponent, "ref"> & import("react").RefAttributes>;
/**
* Action button for the dialog. Will render as a ` component or as the child component if `asChild` is true.
* Automatically closes the dialog when clicked, unless `preventDefault` is
* called in the `onClick` handler. Should be provided as a child of the
* component.
*/
declare const ModalDialogAction: import("react").ForwardRefExoticComponent>;
/**
* Cancel button for the dialog. Will render as a ` component or as the child component if `asChild` is true.
* Automatically closes the dialog when clicked, unless `preventDefault` is
* called in the `onClick` handler. Should be provided as a child of the
* component.
*/
declare const ModalDialogCancel: import("react").ForwardRefExoticComponent>;
export { ModalDialog, ModalDialogAction, ModalDialogBody, ModalDialogCancel, ModalDialogContent, ModalDialogDescription, ModalDialogFooter, ModalDialogHeader, ModalDialogTitle, ModalDialogTrigger, };