import { TdMessageProps } from './type';
import './style';
export * from './type';
export * from './plugin';
export type MessageProps = TdMessageProps;
export declare const Message: {
    new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
        placement: StringConstructor;
        className: StringConstructor;
        closeBtn: {
            type: import("vue").PropType<TdMessageProps["closeBtn"]>;
            default: TdMessageProps["closeBtn"];
        };
        content: {
            type: import("vue").PropType<TdMessageProps["content"]>;
        };
        duration: {
            type: NumberConstructor;
            default: number;
        };
        icon: {
            type: import("vue").PropType<TdMessageProps["icon"]>;
            default: TdMessageProps["icon"];
        };
        theme: {
            type: import("vue").PropType<TdMessageProps["theme"]>;
            default: TdMessageProps["theme"];
            validator(val: TdMessageProps["theme"]): boolean;
        };
        onClose: import("vue").PropType<TdMessageProps["onClose"]>;
        onCloseBtnClick: import("vue").PropType<TdMessageProps["onCloseBtnClick"]>;
        onDurationEnd: import("vue").PropType<TdMessageProps["onDurationEnd"]>;
    }>>, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
        placement: StringConstructor;
        className: StringConstructor;
        closeBtn: {
            type: import("vue").PropType<TdMessageProps["closeBtn"]>;
            default: TdMessageProps["closeBtn"];
        };
        content: {
            type: import("vue").PropType<TdMessageProps["content"]>;
        };
        duration: {
            type: NumberConstructor;
            default: number;
        };
        icon: {
            type: import("vue").PropType<TdMessageProps["icon"]>;
            default: TdMessageProps["icon"];
        };
        theme: {
            type: import("vue").PropType<TdMessageProps["theme"]>;
            default: TdMessageProps["theme"];
            validator(val: TdMessageProps["theme"]): boolean;
        };
        onClose: import("vue").PropType<TdMessageProps["onClose"]>;
        onCloseBtnClick: import("vue").PropType<TdMessageProps["onCloseBtnClick"]>;
        onDurationEnd: import("vue").PropType<TdMessageProps["onDurationEnd"]>;
    }>>, {
        icon: boolean | ((h: typeof import("vue").h) => import("..").TNodeReturnValue);
        duration: number;
        theme: import("./type").MessageThemeList;
        closeBtn: string | boolean | ((h: typeof import("vue").h) => import("..").TNodeReturnValue);
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        placement: StringConstructor;
        className: StringConstructor;
        closeBtn: {
            type: import("vue").PropType<TdMessageProps["closeBtn"]>;
            default: TdMessageProps["closeBtn"];
        };
        content: {
            type: import("vue").PropType<TdMessageProps["content"]>;
        };
        duration: {
            type: NumberConstructor;
            default: number;
        };
        icon: {
            type: import("vue").PropType<TdMessageProps["icon"]>;
            default: TdMessageProps["icon"];
        };
        theme: {
            type: import("vue").PropType<TdMessageProps["theme"]>;
            default: TdMessageProps["theme"];
            validator(val: TdMessageProps["theme"]): boolean;
        };
        onClose: import("vue").PropType<TdMessageProps["onClose"]>;
        onCloseBtnClick: import("vue").PropType<TdMessageProps["onCloseBtnClick"]>;
        onDurationEnd: import("vue").PropType<TdMessageProps["onDurationEnd"]>;
    }>>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, {
        icon: boolean | ((h: typeof import("vue").h) => import("..").TNodeReturnValue);
        duration: number;
        theme: import("./type").MessageThemeList;
        closeBtn: string | boolean | ((h: typeof import("vue").h) => import("..").TNodeReturnValue);
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    placement: StringConstructor;
    className: StringConstructor;
    closeBtn: {
        type: import("vue").PropType<TdMessageProps["closeBtn"]>;
        default: TdMessageProps["closeBtn"];
    };
    content: {
        type: import("vue").PropType<TdMessageProps["content"]>;
    };
    duration: {
        type: NumberConstructor;
        default: number;
    };
    icon: {
        type: import("vue").PropType<TdMessageProps["icon"]>;
        default: TdMessageProps["icon"];
    };
    theme: {
        type: import("vue").PropType<TdMessageProps["theme"]>;
        default: TdMessageProps["theme"];
        validator(val: TdMessageProps["theme"]): boolean;
    };
    onClose: import("vue").PropType<TdMessageProps["onClose"]>;
    onCloseBtnClick: import("vue").PropType<TdMessageProps["onCloseBtnClick"]>;
    onDurationEnd: import("vue").PropType<TdMessageProps["onDurationEnd"]>;
}>>, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
    icon: boolean | ((h: typeof import("vue").h) => import("..").TNodeReturnValue);
    duration: number;
    theme: import("./type").MessageThemeList;
    closeBtn: string | boolean | ((h: typeof import("vue").h) => import("..").TNodeReturnValue);
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin;
export { default as MessagePlugin } from './plugin';
export default Message;
