import './style';
import { TdDrawerProps } from './type';
export type DrawerProps = TdDrawerProps;
export * from './type';
export * from './plugin';
export declare const Drawer: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
        attach: {
            type: import("vue").PropType<import("@/common").AttachNode>;
        };
        closeOnOverlayClick: {
            type: BooleanConstructor;
            default: boolean;
        };
        destroyOnClose: BooleanConstructor;
        footer: {
            type: import("vue").PropType<(h: typeof import("vue").h) => import("@/common").SlotReturnValue>;
        };
        items: {
            type: import("vue").PropType<import("@/components").DrawerItem[]>;
        };
        overlayProps: {
            type: import("vue").PropType<import("@/overlay/type").TdOverlayProps>;
            default: () => {};
        };
        placement: {
            type: import("vue").PropType<"left" | "right">;
            default: "left" | "right";
            validator(val: "left" | "right"): boolean;
        };
        showOverlay: {
            type: BooleanConstructor;
            default: boolean;
        };
        title: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        };
        visible: BooleanConstructor;
        zIndex: {
            type: NumberConstructor;
        };
        onClose: import("vue").PropType<(trigger: "overlay") => void>;
        onItemClick: import("vue").PropType<(index: number, item: import("@/components").DrawerItem, context: {
            e: MouseEvent;
        }) => void>;
        onOverlayClick: import("vue").PropType<(context: {
            e: MouseEvent;
        }) => void>;
    }>> & Readonly<{
        onItemClick?: (...args: any[]) => any;
        onOverlayClick?: (...args: any[]) => any;
        "onUpdate:visible"?: (...args: any[]) => any;
    }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("itemClick" | "overlayClick" | "update:visible")[], import("vue").PublicProps, {
        closeOnOverlayClick: boolean;
        destroyOnClose: boolean;
        overlayProps: import("@/overlay/type").TdOverlayProps;
        placement: "left" | "right";
        showOverlay: boolean;
        visible: boolean;
    }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        attach: {
            type: import("vue").PropType<import("@/common").AttachNode>;
        };
        closeOnOverlayClick: {
            type: BooleanConstructor;
            default: boolean;
        };
        destroyOnClose: BooleanConstructor;
        footer: {
            type: import("vue").PropType<(h: typeof import("vue").h) => import("@/common").SlotReturnValue>;
        };
        items: {
            type: import("vue").PropType<import("@/components").DrawerItem[]>;
        };
        overlayProps: {
            type: import("vue").PropType<import("@/overlay/type").TdOverlayProps>;
            default: () => {};
        };
        placement: {
            type: import("vue").PropType<"left" | "right">;
            default: "left" | "right";
            validator(val: "left" | "right"): boolean;
        };
        showOverlay: {
            type: BooleanConstructor;
            default: boolean;
        };
        title: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        };
        visible: BooleanConstructor;
        zIndex: {
            type: NumberConstructor;
        };
        onClose: import("vue").PropType<(trigger: "overlay") => void>;
        onItemClick: import("vue").PropType<(index: number, item: import("@/components").DrawerItem, context: {
            e: MouseEvent;
        }) => void>;
        onOverlayClick: import("vue").PropType<(context: {
            e: MouseEvent;
        }) => void>;
    }>> & Readonly<{
        onItemClick?: (...args: any[]) => any;
        onOverlayClick?: (...args: any[]) => any;
        "onUpdate:visible"?: (...args: any[]) => any;
    }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, {
        closeOnOverlayClick: boolean;
        destroyOnClose: boolean;
        overlayProps: import("@/overlay/type").TdOverlayProps;
        placement: "left" | "right";
        showOverlay: boolean;
        visible: boolean;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    attach: {
        type: import("vue").PropType<import("@/common").AttachNode>;
    };
    closeOnOverlayClick: {
        type: BooleanConstructor;
        default: boolean;
    };
    destroyOnClose: BooleanConstructor;
    footer: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("@/common").SlotReturnValue>;
    };
    items: {
        type: import("vue").PropType<import("@/components").DrawerItem[]>;
    };
    overlayProps: {
        type: import("vue").PropType<import("@/overlay/type").TdOverlayProps>;
        default: () => {};
    };
    placement: {
        type: import("vue").PropType<"left" | "right">;
        default: "left" | "right";
        validator(val: "left" | "right"): boolean;
    };
    showOverlay: {
        type: BooleanConstructor;
        default: boolean;
    };
    title: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
    };
    visible: BooleanConstructor;
    zIndex: {
        type: NumberConstructor;
    };
    onClose: import("vue").PropType<(trigger: "overlay") => void>;
    onItemClick: import("vue").PropType<(index: number, item: import("@/components").DrawerItem, context: {
        e: MouseEvent;
    }) => void>;
    onOverlayClick: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
}>> & Readonly<{
    onItemClick?: (...args: any[]) => any;
    onOverlayClick?: (...args: any[]) => any;
    "onUpdate:visible"?: (...args: any[]) => any;
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("itemClick" | "overlayClick" | "update:visible")[], "itemClick" | "overlayClick" | "update:visible", {
    closeOnOverlayClick: boolean;
    destroyOnClose: boolean;
    overlayProps: import("@/overlay/type").TdOverlayProps;
    placement: "left" | "right";
    showOverlay: boolean;
    visible: boolean;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin;
export default Drawer;
