import * as react_jsx_runtime from 'react/jsx-runtime';
import * as React$1 from 'react';
import { Dialog as Dialog$1, Text, Heading, DialogTrigger as DialogTrigger$1 } from 'react-aria-components';
import { ButtonProps, Button } from './button.js';
import { ModalContentProps } from './modal.js';
import 'tailwind-variants';

declare const DialogTrigger: typeof DialogTrigger$1;
interface DialogProps extends ModalContentProps {
    role?: "dialog" | "alertdialog";
    showCloseButton?: boolean;
}
interface DialogContextValue {
    role?: "dialog" | "alertdialog";
    isDismissable?: boolean;
    showCloseButton?: boolean;
    scrollBehavior?: "outside" | "inside";
}
declare const DialogContext: React$1.Context<DialogContextValue>;
declare const useDialogContext: () => DialogContextValue;
declare const Dialog: ({ role, showCloseButton, isDismissable: isDismissableProp, scrollBehavior, ...props }: DialogProps) => react_jsx_runtime.JSX.Element;
declare const DialogContent: ({ className, children, ...props }: React.ComponentProps<typeof Dialog$1>) => react_jsx_runtime.JSX.Element;
declare const DialogBody: ({ className, ...props }: React.ComponentProps<"div">) => react_jsx_runtime.JSX.Element;
declare const DialogHeader: ({ className, ...props }: React.ComponentProps<"div">) => react_jsx_runtime.JSX.Element;
declare const DialogFooter: ({ className, ...props }: React.ComponentProps<"div">) => react_jsx_runtime.JSX.Element;
declare const DialogTitle: ({ className, ...props }: React.ComponentProps<typeof Heading>) => react_jsx_runtime.JSX.Element;
declare const DialogDescription: ({ className, ...props }: React.ComponentProps<typeof Text>) => react_jsx_runtime.JSX.Element;
declare const DialogCloseIcon: ({ className, shape, variant, size, ...props }: React.ComponentProps<typeof Button>) => react_jsx_runtime.JSX.Element;
declare const DialogClose: ({ className, variant, ...props }: ButtonProps) => react_jsx_runtime.JSX.Element;

export { Dialog, DialogBody, DialogClose, DialogCloseIcon, DialogContent, DialogContext, type DialogContextValue, DialogDescription, DialogFooter, DialogHeader, type DialogProps, DialogTitle, DialogTrigger, useDialogContext };
