import React from "react"; export interface ToastData { id: string; title?: string; description?: string; type?: "success" | "error" | "warning" | "info"; duration?: number; action?: { label: string; onClick: () => void; }; onClose?: () => void; } export interface GlassToastProps extends ToastData, Omit, keyof ToastData> { /** * Callback when toast is dismissed */ onDismiss?: (id: string) => void; } export interface GlassToastProviderProps { /** * Children */ children: React.ReactNode; /** * Default toast duration (ms) */ duration?: number; /** * Maximum number of toasts to show */ maxToasts?: number; /** * Toast position */ position?: "top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-center" | "bottom-center"; } export interface GlassToastViewportProps { /** * Custom className */ className?: string; /** * Hotkey to focus viewport */ hotkey?: string[]; } export interface GlassToastActionProps { /** * Action content */ children: React.ReactNode; /** * Action className */ className?: string; } export declare const useToast: () => { toasts: ToastData[]; addToast: (toast: Omit) => string; removeToast: (id: string) => void; updateToast: (id: string, updates: Partial) => void; }; /** * GlassToast component * Individual toast notification */ export declare const GlassToast: React.FC; /** * GlassToastProvider component * Provides toast context and manages toast state */ export declare const GlassToastProvider: React.FC; /** * GlassToastViewport component * Container for displaying toasts */ export declare const GlassToastViewport: React.FC; /** * GlassToastAction component * Action button for toast */ export declare const GlassToastAction: React.FC void; }>; /** * Hook for creating different types of toasts */ export declare const useToastActions: () => { success: (title: string, description?: string, options?: Partial) => string; error: (title: string, description?: string, options?: Partial) => string; warning: (title: string, description?: string, options?: Partial) => string; info: (title: string, description?: string, options?: Partial) => string; custom: (toast: Omit) => string; }; //# sourceMappingURL=GlassToast.d.ts.map