import React, { Component } from 'react'; import { PropsType as ToastPropsType } from '../Toast'; type ToastType = Pick>; type MetaDataType = unknown; export interface PropsType { portalId?: string; /** * This callback can be used to respond to calls of toaster.notify, An example * would be to log an error every time a toast is shown with severity "error" * * @example * ``` * { * if (toaster.severity === 'error') { * log(meta); * } * }} * /> * * window.toaster.notify({ * severity: 'error', * title: 'Something went wrong', * }, 'Some error'); * ``` */ onNotify?(toast: ToastType, meta?: MetaDataType): void; } interface StateType { toasts: Array; } declare global { interface Window { toaster: { notify(toast: ToastType, meta?: MetaDataType): void; }; } } declare class Toaster extends Component { private static portalId; private toastId; constructor(props: PropsType); private closeToast; private removeToast; private getToastId; componentDidMount(): void; notify: (toast: ToastType, meta?: MetaDataType) => void; render(): React.JSX.Element; } export default Toaster;