import React, { type FC, type ReactNode } from 'react'; import { type ToastColorType, type ToastLinkProps } from '../../types'; type ToastState = { queue: ToastItem[]; }; export interface ToastItem { autoCloseInterval?: number; color?: ToastColorType; enableAutoClose?: boolean; hasIcon: boolean; iconName?: string; id: string; isDismissible: boolean; isOpen: boolean; linkProps: ToastLinkProps; content: { message: JSX.Element | string; link?: JSX.Element | string; }; } export interface ToastContextType extends ToastState { clear: () => void; hide: (id: string) => void; setQueue: (newQueue: ToastItem[]) => void; show: (content: { message: JSX.Element | string; link?: JSX.Element | string; }, id: string, options?: { autoCloseInterval?: number; color?: ToastColorType; enableAutoClose?: boolean; hasIcon?: boolean; iconName?: string; isDismissible?: boolean; linkProps: ToastLinkProps; }) => void; } export declare const ToastContext: React.Context; interface ToastProviderProps { children: ReactNode; } export declare const ToastProvider: FC; export {};