@withjoy/joykit
Version:
UI Component Library for Joy web
44 lines (43 loc) • 1.34 kB
TypeScript
import React from 'react';
import { ToastPosition } from './types';
import { ToasterContextType } from './ToastContext';
import { ToastProps } from './components/Toast';
export interface ToasterProps {
/**
* @default 'top'
*/
position: ToastPosition;
}
export declare const toasterDefaultProps: {
position: ToastPosition;
};
interface ToasterState {
overlayKey: string;
toasts: string[];
}
export declare class Toaster extends React.PureComponent<ToasterProps, ToasterState> {
static defaultProps: ToasterProps;
static displayName: string;
static contextType: React.Context<ToasterContextType>;
context: ToasterContextType;
toastDescriptionsById: {
[id: string]: ToastProps;
};
constructor(props: ToasterProps);
componentDidMount(): void;
componentWillUnmount(): void;
/**
* @param toastProps - *ToastProps* to be spread over a <Toast /> component.
*
* @returns {string} The newly created/updated Toast ID
*/
show: (toastProps: ToastProps) => string;
protected handleOnToastClose: (toastId: string) => void;
render(): React.ReactNode;
private getToastDescriptions;
private getNormalizedPosition;
private getOverlayStyles;
private clear;
private removeToast;
}
export {};