import type { ReactNode, Ref } from "react"; export type ToastVariant = "neutral" | "success" | "warning" | "danger"; export interface ToastProps { /** Status variant. @default "neutral" */ variant?: ToastVariant; /** The message. */ children: ReactNode; /** Trailing affordance — a ghost Button (Undo, Retry, View). */ action?: ReactNode; /** When provided, renders the dismiss button and calls this. Toast does not * remove itself; the owner disposes. */ onDismiss?: () => void; className?: string; /** Forwarded ref to the underlying `
`. */ ref?: Ref; } /** A single transient notification card (D64). Controlled and presentational: * it holds no state, runs no timer, and never removes itself — `onDismiss` * reports and the owner disposes, exactly as Dialog (D50) and Menu (D53) do. * * Toast does not carry its own `role`/`aria-live`. Politeness belongs to the * two persistent wrappers inside ToastRegion, because a live region must * pre-exist the content it announces; a role on the toast itself would * reintroduce the mount-with-content problem one level down. * * Composed by hand with ToastRegion for full control, or driven by * ToastProvider's queue. */ export declare function Toast({ variant, children, action, onDismiss, className, ref, }: ToastProps): import("react").JSX.Element; //# sourceMappingURL=Toast.d.ts.map