import { default as React } from 'react'; export type ToastStatus = "normal" | "standby" | "caution" | "serious" | "critical" | "off"; export type ToastPosition = "top-right" | "top-left" | "bottom-right" | "bottom-left" | "top-center" | "bottom-center"; export interface ToastOptions { /** Status level (determines color) */ status?: ToastStatus; /** Title text (bold) */ title: string; /** Description text */ message?: string; /** Auto-dismiss duration in ms (0 = persistent, default 5000) */ duration?: number; /** Dismissible by user click (default true) */ dismissible?: boolean; /** Icon override */ icon?: React.ReactNode; /** Action button */ action?: { label: string; onClick: () => void; }; } type ToastFn = (options: ToastOptions) => string; interface ToastContextValue { toast: ToastFn; dismiss: (id: string) => void; dismissAll: () => void; } /** * Hook to show toast notifications. * Must be used within a ``. * * @example * ```tsx * const toast = useToast(); * toast({ status: 'normal', title: 'Success', message: 'Command sent' }); * ``` */ export declare function useToast(): ToastFn; /** * Hook to access full toast API (toast, dismiss, dismissAll). */ export declare function useToastManager(): ToastContextValue; export interface ToastProviderProps { /** Toast position (default: top-right) */ position?: ToastPosition; /** Maximum visible toasts (default: 5) */ maxVisible?: number; /** Default duration in ms (default: 5000) */ defaultDuration?: number; /** Children */ children: React.ReactNode; } export declare const ToastProvider: React.NamedExoticComponent; export default ToastProvider;