type Position = 'top-right' | 'top-left' | 'top-center' | 'bottom-right' | 'bottom-left' | 'bottom-center'; type ToasterType = { theme?: 'dark' | 'light'; expand?: boolean; visibleToasts?: number; offset?: number; mobileOffset?: number; gap?: number; dir?: 'rtl' | 'ltr'; toastOptions?: ToastOptionsType; }; type ToastOptionsType = { position?: Position; closeButton?: boolean; richColors?: boolean; duration?: number; invert?: boolean; onDismiss?: (toast?: ToastType) => void; onAutoClose?: (toast?: ToastType) => void; }; type ToastContentType = { id?: number | string; title: string; description?: string; type?: 'success' | 'error' | 'info' | 'warning' | 'loading'; action?: { label: string; onClick: (event: MouseEvent) => void; cancel?: boolean; }; }; type ToastType = ToastContentType & ToastOptionsType; type PromiseT = Promise | (() => Promise); type ExternalToast = Omit; interface PromiseIExtendedResult extends ExternalToast { message: string; } type PromiseTExtendedResult = PromiseIExtendedResult | ((data: Data) => PromiseIExtendedResult | Promise); type PromiseTResult = string | ((data: Data) => string | Promise); type PromiseExternalToast = Omit; type PromiseData = PromiseExternalToast & { loading?: string; success?: PromiseTResult | PromiseTExtendedResult; error?: PromiseTResult | PromiseTExtendedResult; description?: PromiseTResult; finally?: () => void | Promise; }; declare function setConfig(userConfig: ToasterType): void; declare function dismissToast(id?: ToastType['id'], exitTime?: number): void; declare const toast: { (message: string, options?: Omit): string | number; message(message: string, options?: Omit): string | number; success(message: string, options?: ExternalToast): string | number; error(message: string, options?: ExternalToast): string | number; info(message: string, options?: ExternalToast): string | number; warning(message: string, options?: ExternalToast): string | number; loading(message: string, options?: ExternalToast): string | number; dismiss: typeof dismissToast; promise: (promise: PromiseT, data?: PromiseData) => void; config: typeof setConfig; }; export { toast as default };