import Message from './message';
import './style';
export declare const MessagePlugin: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    align: {
        type: import("vue").PropType<import("./type").MessageAlignType>;
        default: import("./type").MessageAlignType;
        validator(val: import("./type").MessageAlignType): boolean;
    };
    closeBtn: {
        type: import("vue").PropType<string | boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        default: string | boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    };
    content: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
    };
    duration: {
        type: NumberConstructor;
        default: number;
    };
    gap: {
        type: import("vue").PropType<string | number | boolean>;
        default: string | number | boolean;
    };
    icon: {
        type: import("vue").PropType<boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        default: boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    };
    link: {
        type: import("vue").PropType<string | object | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
    };
    marquee: {
        type: import("vue").PropType<boolean | import("./type").MessageMarquee>;
        default: boolean | import("./type").MessageMarquee;
    };
    offset: {
        type: import("vue").PropType<(string | number)[]>;
    };
    single: {
        type: BooleanConstructor;
        default: boolean;
    };
    theme: {
        type: import("vue").PropType<import("./type").MessageThemeList>;
        default: import("./type").MessageThemeList;
        validator(val: import("./type").MessageThemeList): boolean;
    };
    visible: {
        type: BooleanConstructor;
        default: any;
    };
    modelValue: {
        type: BooleanConstructor;
        default: any;
    };
    defaultVisible: BooleanConstructor;
    zIndex: {
        type: NumberConstructor;
    };
    onCloseBtnClick: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onDurationEnd: import("vue").PropType<() => void>;
    onLinkClick: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    align: {
        type: import("vue").PropType<import("./type").MessageAlignType>;
        default: import("./type").MessageAlignType;
        validator(val: import("./type").MessageAlignType): boolean;
    };
    closeBtn: {
        type: import("vue").PropType<string | boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        default: string | boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    };
    content: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
    };
    duration: {
        type: NumberConstructor;
        default: number;
    };
    gap: {
        type: import("vue").PropType<string | number | boolean>;
        default: string | number | boolean;
    };
    icon: {
        type: import("vue").PropType<boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        default: boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    };
    link: {
        type: import("vue").PropType<string | object | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
    };
    marquee: {
        type: import("vue").PropType<boolean | import("./type").MessageMarquee>;
        default: boolean | import("./type").MessageMarquee;
    };
    offset: {
        type: import("vue").PropType<(string | number)[]>;
    };
    single: {
        type: BooleanConstructor;
        default: boolean;
    };
    theme: {
        type: import("vue").PropType<import("./type").MessageThemeList>;
        default: import("./type").MessageThemeList;
        validator(val: import("./type").MessageThemeList): boolean;
    };
    visible: {
        type: BooleanConstructor;
        default: any;
    };
    modelValue: {
        type: BooleanConstructor;
        default: any;
    };
    defaultVisible: BooleanConstructor;
    zIndex: {
        type: NumberConstructor;
    };
    onCloseBtnClick: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onDurationEnd: import("vue").PropType<() => void>;
    onLinkClick: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
}>> & Readonly<{}>, {
    align: import("./type").MessageAlignType;
    closeBtn: string | boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    duration: number;
    gap: string | number | boolean;
    icon: boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    marquee: boolean | import("./type").MessageMarquee;
    single: boolean;
    theme: import("./type").MessageThemeList;
    visible: boolean;
    modelValue: boolean;
    defaultVisible: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default MessagePlugin;
declare module 'vue' {
    interface ComponentCustomProperties {
        $message: typeof Message;
    }
}
