UNPKG

1.88 kBTypeScriptView Raw
1import Vue, {VNode} from 'vue'
2
3export type MessageType = 'success' | 'warning' | 'info' | 'error'
4
5/** Message Component */
6export declare class ElMessageComponent extends Vue {
7 /** Close the Loading instance */
8 close (): void
9}
10
11export interface CloseEventHandler {
12 /**
13 * Triggers when a message is being closed
14 *
15 * @param instance The message component that is being closed
16 */
17 (instance: ElMessageComponent): void
18}
19
20/** Options used in Message */
21export interface ElMessageOptions {
22 /** Message text */
23 message: string | VNode
24
25 /** Message type */
26 type?: MessageType
27
28 /** Custom icon's class, overrides type */
29 iconClass?: string
30
31 /** Custom class name for Message */
32 customClass?: string
33
34 /** Display duration, millisecond. If set to 0, it will not turn off automatically */
35 duration?: number
36
37 /** Whether to show a close button */
38 showClose?: boolean
39
40 /** Whether to center the text */
41 center?: boolean
42
43 /** Whether message is treated as HTML string */
44 dangerouslyUseHTMLString?: boolean
45
46 /** Callback function when closed with the message instance as the parameter */
47 onClose?: CloseEventHandler
48}
49
50export interface ElMessage {
51 /** Show an info message */
52 (text: string): ElMessageComponent
53
54 /** Show message */
55 (options: ElMessageOptions): ElMessageComponent
56
57 /** Show a success message */
58 success (text: string): ElMessageComponent
59
60 /** Show a warning message */
61 warning (text: string): ElMessageComponent
62
63 /** Show an info message */
64 info (text: string): ElMessageComponent
65
66 /** Show an error message */
67 error (text: string): ElMessageComponent
68}
69
70declare module 'vue/types/vue' {
71 interface Vue {
72 /** Used to show feedback after an activity. The difference with Notification is that the latter is often used to show a system level passive notification. */
73 $message: ElMessage
74 }
75}