import * as React from 'react'; import { AlertDialogProps } from '@radix-ui/react-alert-dialog'; import { AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, ButtonProps } from '..'; export type InteractiveAlert = AlertDialogProps & { id: string; title?: React.ReactNode; description?: React.ReactNode; okText?: string; cancelText?: string; onOk?: () => void; onCancel?: () => void; onClose?: () => void; buttonOkProps?: Omit; buttonCancelProps?: Omit; titleProps?: React.ComponentProps; descriptionProps?: React.ComponentProps; contentProps?: React.ComponentProps; headerProps?: React.ComponentProps; footerProps?: React.ComponentProps; swapButtons?: boolean; }; export type InteractiveAlertWithoutId = Omit; export type AlertDialogGlobalResults = { id: string; update: (props: Partial) => void; dismiss: () => void; }; declare function alertDialog({ ...props }?: InteractiveAlertWithoutId): AlertDialogGlobalResults; declare namespace alertDialog { var open: typeof alertDialog; } declare function useAlertDialog(): { alertDialog: typeof alertDialog; dismiss: (toastId?: string) => void; toasts: InteractiveAlert[]; }; export { useAlertDialog, alertDialog };