import { Dialog as DialogPrimitive } from '@base-ui/react/dialog';
import { type VariantProps } from 'class-variance-authority';
import * as React from 'react';
declare const Root: React.ForwardRefExoticComponent<DialogPrimitive.Root.Props<unknown> & React.RefAttributes<HTMLDivElement>>;
declare const Trigger: React.ForwardRefExoticComponent<Omit<DialogPrimitive.Trigger.Props<unknown>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
declare function Portal({ ...props }: DialogPrimitive.Portal.Props): import("react/jsx-runtime").JSX.Element;
declare namespace Portal {
    var displayName: string;
}
declare const Close: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").AlertDialogCloseProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
export interface BackdropProps extends DialogPrimitive.Backdrop.Props {
    /** Disables open/close animations */
    disableAnimation?: boolean;
    /** Disables backdrop blur effect */
    disableBackdropBlur?: boolean;
}
declare const Backdrop: React.ForwardRefExoticComponent<Omit<BackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
export interface ViewportProps extends DialogPrimitive.Viewport.Props {
}
declare const Viewport: React.ForwardRefExoticComponent<Omit<ViewportProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
declare const popupVariants: (props?: ({
    size?: "sm" | "md" | "lg" | "xl" | "full" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface PopupProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof popupVariants> {
    /** Show the decorative pattern in the top-left corner */
    showPattern?: boolean;
    /** Whether to show the close button */
    showCloseButton?: boolean;
    /** Whether to hide the close button (alias for showCloseButton=false) */
    hideCloseButton?: boolean;
    /**
     * Controls where focus moves when the dialog opens.
     * - `false`: Prevents auto-focus (equivalent to Radix's `onOpenAutoFocus={(e) => e.preventDefault()}`)
     * - `true`: Default focus behavior (first tabbable element)
     * - `RefObject`: Focus a specific element
     */
    initialFocus?: boolean | React.RefObject<HTMLElement | null>;
    /**
     * Disables all visual effects (animations, backdrop blur, and pattern).
     * Use granular props (`disableAnimation`, `disableBackdropBlur`, `showPattern`)
     * for more control.
     */
    disableEffects?: boolean;
    /** Disables open/close animations on the dialog and overlay */
    disableAnimation?: boolean;
    /** Disables backdrop blur effect on the overlay */
    disableBackdropBlur?: boolean;
}
declare function Popup({ className, children, size, showPattern, showCloseButton, initialFocus, disableEffects, disableAnimation, disableBackdropBlur, ...props }: PopupProps): import("react/jsx-runtime").JSX.Element;
declare namespace Popup {
    var displayName: string;
}
declare function Pattern({ className }: {
    className?: string;
}): import("react/jsx-runtime").JSX.Element;
declare namespace Pattern {
    var displayName: string;
}
declare const iconVariants: (props?: ({
    variant?: "info" | "success" | "warning" | "destructive" | "default" | null | undefined;
    size?: "sm" | "md" | "lg" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface IconProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof iconVariants> {
    children: React.ReactNode;
}
declare function Icon({ className, variant, size, children, ...props }: IconProps): import("react/jsx-runtime").JSX.Element;
declare namespace Icon {
    var displayName: string;
}
declare const headerVariants: (props?: ({
    layout?: "horizontal" | "stacked" | "centered" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface HeaderProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof headerVariants> {
}
declare function Header({ className, layout, children, ...props }: HeaderProps): import("react/jsx-runtime").JSX.Element;
declare namespace Header {
    var displayName: string;
}
export interface HeaderContentProps extends React.HTMLAttributes<HTMLDivElement> {
}
declare function HeaderContent({ className, children, ...props }: HeaderContentProps): import("react/jsx-runtime").JSX.Element;
declare namespace HeaderContent {
    var displayName: string;
}
export interface TitleProps extends React.HTMLAttributes<HTMLHeadingElement> {
}
declare function Title({ className, ...props }: TitleProps): import("react/jsx-runtime").JSX.Element;
declare namespace Title {
    var displayName: string;
}
export interface DescriptionProps extends React.HTMLAttributes<HTMLParagraphElement> {
}
declare function Description({ className, ...props }: DescriptionProps): import("react/jsx-runtime").JSX.Element;
declare namespace Description {
    var displayName: string;
}
declare const footerVariants: (props?: ({
    layout?: "horizontal" | "stacked" | "horizontal-fill" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface FooterProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof footerVariants> {
}
declare function Footer({ className, layout, children, ...props }: FooterProps): import("react/jsx-runtime").JSX.Element;
declare namespace Footer {
    var displayName: string;
}
export interface BodyProps extends React.HTMLAttributes<HTMLDivElement> {
}
declare function Body({ className, children, ...props }: BodyProps): import("react/jsx-runtime").JSX.Element;
declare namespace Body {
    var displayName: string;
}
export type CloseProps = DialogPrimitive.Close.Props;
export type PortalProps = DialogPrimitive.Portal.Props;
export type TriggerProps = DialogPrimitive.Trigger.Props;
export type RootProps = DialogPrimitive.Root.Props;
declare const Dialog: React.ForwardRefExoticComponent<DialogPrimitive.Root.Props<unknown> & React.RefAttributes<HTMLDivElement>> & {
    Root: React.ForwardRefExoticComponent<DialogPrimitive.Root.Props<unknown> & React.RefAttributes<HTMLDivElement>>;
    Trigger: React.ForwardRefExoticComponent<Omit<DialogPrimitive.Trigger.Props<unknown>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
    Portal: typeof Portal;
    Backdrop: React.ForwardRefExoticComponent<Omit<BackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
    Viewport: React.ForwardRefExoticComponent<Omit<ViewportProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
    Popup: typeof Popup;
    Header: typeof Header;
    HeaderContent: typeof HeaderContent;
    Body: typeof Body;
    Footer: typeof Footer;
    Title: typeof Title;
    Description: typeof Description;
    Close: React.ForwardRefExoticComponent<Omit<import("@base-ui/react").AlertDialogCloseProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
    Icon: typeof Icon;
    Pattern: typeof Pattern;
};
export { Backdrop as DialogBackdrop, Body as DialogBody, Close as DialogClose, Description as DialogDescription, Dialog, Footer as DialogFooter, footerVariants as dialogFooterVariants, Header as DialogHeader, HeaderContent as DialogHeaderContent, headerVariants as dialogHeaderVariants, Icon as DialogIcon, iconVariants as dialogIconVariants, Pattern as DialogPattern, Popup as DialogPopup, Portal as DialogPortal, popupVariants as dialogPopupVariants, Root as DialogRoot, Title as DialogTitle, Trigger as DialogTrigger, Viewport as DialogViewport, };
