export declare const RUI_TOAST_SHOW_EVENT = "rui-toast-show"; export declare const RUI_TOAST_DISMISS_EVENT = "rui-toast-dismiss"; export type ToastVariant = 'default' | 'info' | 'success' | 'warning' | 'error' | 'loading'; export type ToastPosition = 'top-start' | 'top-center' | 'top-end' | 'bottom-start' | 'bottom-center' | 'bottom-end'; /** Supported viewport positions in display order. */ export declare const TOAST_POSITIONS: readonly ToastPosition[]; export type ToastAction = { label: string; onClick: (event: MouseEvent) => void; }; export type ToastId = string | number; export type ToastOptions = { id?: ToastId; description?: string; duration?: number; action?: ToastAction; dismissible?: boolean; closeButton?: boolean; position?: ToastPosition; }; export type ToastRecord = { id: ToastId; title: string; description?: string; variant: ToastVariant; duration?: number; action?: ToastAction; dismissible: boolean; closeButton?: boolean; position?: ToastPosition; /** Marks the toast for animated exit; toaster removes after exit. */ delete?: boolean; }; export type ToastDismissDetail = { id?: ToastId; }; export type ToastShowDetail = Omit & { dismissible?: boolean; }; export type PromiseToastMessages = { loading: string; success: string | ((data: T) => string); error: string | ((error: unknown) => string); description?: string | ((data: T | unknown) => string); duration?: number; action?: ToastAction; closeButton?: boolean; position?: ToastPosition; }; export declare const TOAST_LIFETIME = 4000; export declare const TOAST_WIDTH = 356; export declare const TOAST_GAP = 14; export declare const TOAST_VIEWPORT_OFFSET = 24; export declare const TOAST_VISIBLE_AMOUNT = 3; /** * Max toasts that peek in the collapsed stack. * * @remarks * `visibleToasts` still caps how many are mounted. Collapsed UI only reveals * this many behind the front toast; the rest stay hidden until hover expands. */ export declare const TOAST_COLLAPSED_PEEK = 3; export declare const TOAST_SWIPE_THRESHOLD = 45; export declare const TOAST_EXIT_MS = 200; export declare const DEFAULT_TOAST_POSITION: ToastPosition; export declare function splitToastPosition(position: ToastPosition): { y: 'top' | 'bottom'; x: 'start' | 'center' | 'end'; };