@adaptui/react
Version:
Collection of headless components/hooks that are accessible, composable, customizable from low level to build your own UI & Design System powered by Reakit
34 lines (33 loc) • 2.04 kB
TypeScript
import { DefaultToast, StateReturnType } from "./index";
export declare type DefaultToastOptions<T extends DefaultToast> = Omit<T, "id" | "visible" | "reverseOrder" | "createdAt">;
export declare type DefaultToastProviderOptions<T extends DefaultToast> = Partial<DefaultToastOptions<T>>;
export declare type ConfigurableToastOptions<T extends DefaultToast> = Omit<T, "visible">;
export declare type ToastOptions<T extends DefaultToast> = Partial<ConfigurableToastOptions<T>>;
export interface ToastStore<T extends DefaultToast> extends StateReturnType<T> {
}
export interface CreateToast<T extends DefaultToast, Content> {
createToast: CreateToastHandler<T, Content>;
}
export declare type CreateToastHandler<T extends DefaultToast, Content> = (content: Content, options?: ToastOptions<T>) => T;
export declare type AddToast<T extends DefaultToast, Content> = (content: Content, options?: ToastOptions<T>) => string;
export declare type ShowToast<T extends DefaultToast, Content> = (content: Content, options?: ToastOptions<T>) => string;
export declare type UpdateToast<T extends DefaultToast> = (toastId: string, toast: Partial<T>) => void;
export declare type UpdateFieldToast<T extends DefaultToast> = (field: keyof T, fieldValue: any, toast: Partial<T>) => void;
export declare type UpdateAllToast<T extends DefaultToast> = (toast: Partial<T>) => void;
export declare type DismissToast = (toastId?: string) => void;
export declare type RemoveToast = (toastId?: string) => void;
export declare type ToastHandlers<T extends DefaultToast, Content> = {
addToast: AddToast<T, Content>;
showToast: ShowToast<T, Content>;
updateToast: UpdateToast<T>;
updateFieldToast: UpdateFieldToast<T>;
updateAllToast: UpdateAllToast<T>;
dismissToast: DismissToast;
removeToast: RemoveToast;
};
export declare type CreateToastStoreReturn<T extends DefaultToast, Content> = [
React.FC<Partial<DefaultToastOptions<T>>>,
() => ToastStore<T>,
() => CreateToast<T, Content>,
() => ToastHandlers<T, Content>
];