import { ClassValue, HTMLComponentProps, StyledComponentProps, ThemeColor } from "../../types/shared.js"; import { DialogSlots } from "./alert-dialog-variants.js"; import { AlertDialogContentProps, AlertDialogDescriptionProps, AlertDialogOverlayProps, AlertDialogPortalProps, AlertDialogProps, AlertDialogTitleProps } from "@radix-ui/react-alert-dialog"; //#region src/components/alert-dialog/types.d.ts /** * Class names for different slots in the alert dialog component. * Allows customizing styles for specific parts of the alert dialog, including the icon slot. */ type AlertDialogClassNames = Partial> & { /** * Class names for the icon element within the alert dialog. */ icon?: string; }; /** * Alert type enumeration that restricts theme colors to alert-specific types. * Supports destructive, info, success, and warning alert types. */ type AlertType = Extract; /** * Props for the alert dialog content component. * Contains the main content area of the alert dialog. */ interface AlertDialogContentProps$1 extends StyledComponentProps {} /** * Props for the alert dialog description component. * Provides descriptive text or additional information in the alert dialog. */ interface AlertDialogDescriptionProps$1 extends StyledComponentProps {} /** * Props for the alert dialog footer component. * Container for action buttons or additional footer content. */ type AlertDialogFooterProps = HTMLComponentProps<'div'>; /** * Props for the alert dialog header component. * Container for title, icon, and other header content. */ type AlertDialogHeaderProps = HTMLComponentProps<'div'>; /** * Props for the alert dialog overlay component. * Semi-transparent backdrop that appears behind the alert dialog. */ interface AlertDialogOverlayProps$1 extends StyledComponentProps {} /** * Props for the alert dialog title component. * Displays the primary heading text of the alert dialog. */ interface AlertDialogTitleProps$1 extends StyledComponentProps {} /** * Props for the main AlertDialog component. * Combines base Radix UI alert dialog props with custom styling and content options. * * @example * ```jsx * } * > * * * ``` */ type AlertDialogProps$1 = StyledComponentProps & AlertDialogContentProps$1 & AlertDialogPortalProps & { /** * Class names for customizing different parts of the alert dialog. */ classNames?: AlertDialogClassNames; /** * Description text displayed in the alert dialog body. */ description?: string; /** * Whether to disable portal rendering for the alert dialog. */ disabledPortal?: boolean; /** * Content to display in the footer section (typically action buttons). */ footer?: React.ReactNode; /** * Force mount the overlay element even when not visible. */ forceMountOverlay?: true; /** * Force mount the portal element for the alert dialog. */ forceMountPortal?: true; /** * Icon or visual element displayed at the top of the alert dialog. */ icon?: React.ReactNode; /** * Title or heading text displayed at the top of the alert dialog. */ title?: React.ReactNode; /** * Element that triggers the alert dialog to open when clicked. */ trigger?: React.ReactNode; /** * The alert type which determines styling (destructive, info, success, or warning). */ type?: AlertType; }; //#endregion export { AlertDialogClassNames, AlertDialogContentProps$1 as AlertDialogContentProps, AlertDialogDescriptionProps$1 as AlertDialogDescriptionProps, AlertDialogFooterProps, AlertDialogHeaderProps, AlertDialogOverlayProps$1 as AlertDialogOverlayProps, AlertDialogProps$1 as AlertDialogProps, AlertDialogTitleProps$1 as AlertDialogTitleProps, AlertType };