import type { StringPluginArgChoices } from './types'; import { type BaseElem, type SelectorRoot } from "base-elem-js"; export interface IToasterDefaults { content: string; duration: number; ariaLive: 'off' | 'polite' | 'assertive'; animationDuration: number; appendTo: SelectorRoot; outerCss: string; closeIconCss: string; closeTextCopy: string; enabledCss: string; dismissCss: string; btnDismissCss: string; cssGroupKey: string; oneOnly: boolean; } export interface IToasterOptions extends Partial { content: string; } export default class Toastr { #private; static defaults: IToasterDefaults; static version: string; static pluginName: string; static DismissedEventName: string; private toastrFinallyTimer; private active; private toasterBodyBuilt; $element: BaseElem; $toastrBody: BaseElem; $toastrWrap: BaseElem; params: IToasterDefaults; constructor(element: HTMLElement, options: IToasterOptions | StringPluginArgChoices); dismiss(): void; setContent(content: any, updateNow?: boolean): void; launch(): void; static setContent(element: BaseElem, content: string, updateNow?: boolean): void; static remove(element: BaseElem, plugin?: Toastr): void; } export interface ToastrPlugin { toastr(options?: IToasterOptions | StringPluginArgChoices): BaseElem; } declare module 'base-elem-js' { interface BaseElem extends ToastrPlugin { } }