UNPKG

@datagouv/vue-toaster

Version:
145 lines (131 loc) 4.01 kB
import { ComponentOptionsMixin } from 'vue'; import { DefineComponent } from 'vue'; import { ExtractPropTypes } from 'vue'; import { Plugin as Plugin_2 } from 'vue'; import { PropType } from 'vue'; import { PublicProps } from 'vue'; import { RendererElement } from 'vue'; import { RendererNode } from 'vue'; import { VNode } from 'vue'; declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T; declare type __VLS_Prettify<T> = { [K in keyof T]: T[K]; } & {}; declare type __VLS_TypePropsToRuntimeProps<T> = { [K in keyof T]-?: {} extends Pick<T, K> ? { type: PropType<__VLS_NonUndefinedable<T[K]>>; } : { type: PropType<T[K]>; required: true; }; }; declare type __VLS_WithDefaults<P, D> = { [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & { default: D[K]; }> : P[K]; }; export declare function createToaster(globalOptions?: Options): { show(message: string, options?: Options): { vNode: VNode<RendererNode, RendererElement, { [key: string]: any; }>; destroy: () => void; el: Element | null; }; clear(): void; success(message: string, options?: Options): { vNode: VNode<RendererNode, RendererElement, { [key: string]: any; }>; destroy: () => void; el: Element | null; }; error(message: string, options?: Options): { vNode: VNode<RendererNode, RendererElement, { [key: string]: any; }>; destroy: () => void; el: Element | null; }; info(message: string, options?: Options): { vNode: VNode<RendererNode, RendererElement, { [key: string]: any; }>; destroy: () => void; el: Element | null; }; warning(message: string, options?: Options): { vNode: VNode<RendererNode, RendererElement, { [key: string]: any; }>; destroy: () => void; el: Element | null; }; }; export declare type Options = { message?: string; type?: Type; position?: Position; duration?: number | false; dismissible?: boolean; onClick?: Function; onClose?: Function; queue?: boolean; maxToasts?: number | false; pauseOnHover?: boolean; useDefaultCss?: boolean; }; declare const plugin: Plugin_2<Options>; export default plugin; export { plugin } export declare type Position = "top" | "bottom" | "top-right" | "bottom-right" | "top-left" | "bottom-left"; export declare const Positions: Readonly<Record<string, Position>>; declare interface Props { message: string; type?: string; position?: Position; maxToasts?: number | false; duration?: number | false; dismissible?: boolean; queue?: boolean; props?: boolean; useDefaultCss?: boolean; onClose?: Function; onClick?: Function; } export declare const Toaster: DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, { type: string; position: Position; maxToasts: boolean; duration: number; dismissible: boolean; queue: boolean; props: boolean; useDefaultCss: boolean; onClose: () => void; onClick: () => void; }>, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, { type: string; position: Position; maxToasts: boolean; duration: number; dismissible: boolean; queue: boolean; props: boolean; useDefaultCss: boolean; onClose: () => void; onClick: () => void; }>>>, { type: string; position: Position; maxToasts: number | false; duration: number | false; dismissible: boolean; queue: boolean; props: boolean; useDefaultCss: boolean; onClose: Function; onClick: Function; }, {}>; export declare type Type = "default" | "success" | "info" | "warning" | "error"; export { }