import { ExtractPropTypes, PropType } from 'vue'; import { default as MessageConstructor } from './message.vue'; declare const messageTypes: readonly ["success", "error", "warning"]; type MessageTypes = typeof messageTypes[number]; declare const messageProps: { /** * 消息文字 */ readonly message: { readonly type: StringConstructor; readonly required: true; }; /** * 消息类型 */ readonly type: { readonly type: PropType; readonly validator: (value: MessageTypes) => boolean; readonly default: "success"; }; /** * 显示时间,单位为毫秒。 设为 0 则不会自动关闭 */ readonly duration: { readonly type: NumberConstructor; readonly default: 3000; }; /** * 是否显示关闭按钮 */ readonly showClose: { readonly type: BooleanConstructor; readonly default: false; }; /** * Message 距离窗口顶部的偏移量 */ readonly offset: { readonly type: NumberConstructor; readonly default: 16; }; /** * 关闭时的回调函数, 参数为被关闭的 message 实例 */ readonly onClose: { readonly type: FunctionConstructor; readonly default: () => void; }; /** * 唯一标识符 */ readonly id: { readonly type: StringConstructor; readonly required: true; }; }; type MessageProps = ExtractPropTypes; type MessageInstance = InstanceType; type MessageFunction = { (options: MessageParamsNormalized | MessageParamsNormalized['message']): void; } & Record void> & { closeAll: (type?: MessageTypes) => void; }; interface MessageHandler { close: () => void; } type MessageParamsNormalized = Partial> & Pick; export type { MessageFunction, MessageHandler, MessageInstance, MessageParamsNormalized, MessageProps, MessageTypes, }; export { messageProps, messageTypes, };