import { default as React } from 'react';
import * as DialogPrimitive from '@radix-ui/react-dialog';
/**
* Dialog component based on Radix UI for creating accessible modal dialogs
* A dialog is a window overlaid on either the primary window or another dialog window.
*
* @returns A Dialog component
*
* @example
* ```tsx
* // Basic usage: Dialog with header, content, and actions
* function App() {
* return (
*
* );
* }
* ```
*
* @example
* ```tsx
* // Dialog with multiple actions in footer
* function App() {
* return (
*
* );
* }
* ```
*/
declare const Dialog: React.FC;
/**
* The button that opens the dialog when clicked
* Use `asChild` to use your own component as the trigger
*
* @example
* ```tsx
*
*
*
* ```
*/
declare const DialogTrigger: React.ForwardRefExoticComponent>;
/**
* A container component that portals its children into the body
* Used internally by DialogContent
*/
declare const DialogPortal: React.FC;
/**
* The button that closes the dialog
* Use `asChild` to use your own component as the close button
*
* @example
* ```tsx
*
*
*
* ```
*/
declare const DialogClose: React.ForwardRefExoticComponent>;
/**
* The semi-transparent overlay that covers the page behind the dialog
* Used internally by DialogContent
*/
declare const DialogOverlay: React.FC>;
/**
* The component that contains the dialog's content
* Contains the overlay and provides the animated container
*
* @param hasCloseButton - Whether to display the X close button in the top-right corner (default: true)
*
* @example
* ```tsx
*
*
* Dialog Title
* Dialog description goes here.
*
*
*
*
*
* ```
*/
declare const DialogContent: React.FC & {
hasCloseButton?: boolean;
}>;
/**
* A layout component for the dialog header.
* Contains the title and description with proper spacing.
*
* When used inside a `DialogNavigation` and navigation history exists,
* a back button is automatically rendered on the left side of the header.
*
* @example
* ```tsx
*
* Dialog Title
* Dialog description goes here.
*
* ```
*/
declare const DialogHeader: {
({ className, children, ...props }: React.HTMLAttributes): import("react/jsx-runtime").JSX.Element;
displayName: string;
};
/**
* A layout component for the dialog footer
* Contains action buttons with responsive layout
* Arranges buttons in a column on mobile and a row on desktop
*
* @example
* ```tsx
*
*
*
*
* ```
*/
declare const DialogFooter: {
({ className, ...props }: React.HTMLAttributes): import("react/jsx-runtime").JSX.Element;
displayName: string;
};
/**
* The title of the dialog
* Should be concise and descriptive of the dialog's purpose
*
* @example
* ```tsx
* Edit Profile
* ```
*/
declare const DialogTitle: React.FC>;
/**
* The description of the dialog
* Provides additional context about the dialog's purpose
*
* @example
* ```tsx
* Make changes to your profile here. Click save when you're done.
* ```
*/
declare const DialogDescription: React.FC>;
export { Dialog, DialogPortal, DialogOverlay, DialogTrigger, DialogClose, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription };