import type { CSSProperties, PropType, StyleValue } from 'vue';
import { ButtonProps } from '../button';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    visible: {
        type: BooleanConstructor;
        default: boolean;
    };
    defaultVisible: {
        type: BooleanConstructor;
        default: boolean;
    };
    placement: {
        type: PropType<"top" | "bottom" | "left" | "right">;
        default: string;
        validator: (value: any) => boolean;
    };
    title: StringConstructor;
    mask: {
        type: BooleanConstructor;
        default: boolean;
    };
    maskClosable: {
        type: BooleanConstructor;
        default: boolean;
    };
    closable: {
        type: BooleanConstructor;
        default: boolean;
    };
    okText: StringConstructor;
    cancelText: StringConstructor;
    okLoading: {
        type: BooleanConstructor;
        default: boolean;
    };
    okButtonProps: {
        type: PropType<ButtonProps>;
    };
    cancelButtonProps: {
        type: PropType<ButtonProps>;
    };
    unmountOnClose: BooleanConstructor;
    width: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    height: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    popupContainer: {
        type: PropType<string | HTMLElement>;
        default: string;
    };
    drawerStyle: {
        type: PropType<CSSProperties>;
    };
    bodyClass: {
        type: PropType<string | any[]>;
    };
    bodyStyle: {
        type: PropType<StyleValue>;
    };
    onBeforeOk: {
        type: PropType<(done: (closed: boolean) => void) => void | boolean | Promise<void | boolean>>;
    };
    onBeforeCancel: {
        type: PropType<() => boolean>;
    };
    escToClose: {
        type: BooleanConstructor;
        default: boolean;
    };
    renderToBody: {
        type: BooleanConstructor;
        default: boolean;
    };
    header: {
        type: BooleanConstructor;
        default: boolean;
    };
    footer: {
        type: BooleanConstructor;
        default: boolean;
    };
    hideCancel: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, {
    prefixCls: string;
    style: import("vue").ComputedRef<CSSProperties>;
    t: (key: string, ...args: any[]) => string;
    mounted: import("vue").Ref<boolean, boolean>;
    computedVisible: import("vue").ComputedRef<boolean>;
    mergedOkLoading: import("vue").ComputedRef<boolean>;
    zIndex: Readonly<import("vue").Ref<number, number>>;
    handleOk: (e: Event) => Promise<void>;
    handleCancel: (e: Event) => void;
    handleOpen: () => void;
    handleClose: () => void;
    handleMask: (e: Event) => void;
    isFixed: import("vue").ComputedRef<boolean>;
    teleportContainer: import("vue").Ref<string | HTMLElement | undefined, string | HTMLElement | undefined>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    'update:visible': (visible: boolean) => true;
    ok: (e: Event) => true;
    cancel: (e: Event) => true;
    open: () => true;
    close: () => true;
    beforeOpen: () => true;
    beforeClose: () => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    visible: {
        type: BooleanConstructor;
        default: boolean;
    };
    defaultVisible: {
        type: BooleanConstructor;
        default: boolean;
    };
    placement: {
        type: PropType<"top" | "bottom" | "left" | "right">;
        default: string;
        validator: (value: any) => boolean;
    };
    title: StringConstructor;
    mask: {
        type: BooleanConstructor;
        default: boolean;
    };
    maskClosable: {
        type: BooleanConstructor;
        default: boolean;
    };
    closable: {
        type: BooleanConstructor;
        default: boolean;
    };
    okText: StringConstructor;
    cancelText: StringConstructor;
    okLoading: {
        type: BooleanConstructor;
        default: boolean;
    };
    okButtonProps: {
        type: PropType<ButtonProps>;
    };
    cancelButtonProps: {
        type: PropType<ButtonProps>;
    };
    unmountOnClose: BooleanConstructor;
    width: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    height: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    popupContainer: {
        type: PropType<string | HTMLElement>;
        default: string;
    };
    drawerStyle: {
        type: PropType<CSSProperties>;
    };
    bodyClass: {
        type: PropType<string | any[]>;
    };
    bodyStyle: {
        type: PropType<StyleValue>;
    };
    onBeforeOk: {
        type: PropType<(done: (closed: boolean) => void) => void | boolean | Promise<void | boolean>>;
    };
    onBeforeCancel: {
        type: PropType<() => boolean>;
    };
    escToClose: {
        type: BooleanConstructor;
        default: boolean;
    };
    renderToBody: {
        type: BooleanConstructor;
        default: boolean;
    };
    header: {
        type: BooleanConstructor;
        default: boolean;
    };
    footer: {
        type: BooleanConstructor;
        default: boolean;
    };
    hideCancel: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    onOpen?: (() => any) | undefined;
    onCancel?: ((e: Event) => any) | undefined;
    onClose?: (() => any) | undefined;
    "onUpdate:visible"?: ((visible: boolean) => any) | undefined;
    onOk?: ((e: Event) => any) | undefined;
    onBeforeOpen?: (() => any) | undefined;
    onBeforeClose?: (() => any) | undefined;
}>, {
    unmountOnClose: boolean;
    popupContainer: string | HTMLElement;
    renderToBody: boolean;
    visible: boolean;
    closable: boolean;
    height: string | number;
    footer: boolean;
    header: boolean;
    mask: boolean;
    width: string | number;
    defaultVisible: boolean;
    maskClosable: boolean;
    escToClose: boolean;
    placement: "top" | "bottom" | "left" | "right";
    okLoading: boolean;
    hideCancel: boolean;
}, {}, {
    ClientOnly: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }>[] | null | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
    ArcoButton: {
        new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
            type: {
                type: PropType<"dashed" | "text" | "outline" | "primary" | "secondary">;
            };
            shape: {
                type: PropType<"round" | "circle" | "square">;
            };
            status: {
                type: PropType<"normal" | "success" | "warning" | "danger">;
            };
            size: {
                type: PropType<"mini" | "medium" | "large" | "small">;
            };
            long: {
                type: BooleanConstructor;
                default: boolean;
            };
            loading: {
                type: BooleanConstructor;
                default: boolean;
            };
            disabled: {
                type: BooleanConstructor;
            };
            htmlType: {
                type: StringConstructor;
                default: string;
            };
            autofocus: {
                type: BooleanConstructor;
                default: boolean;
            };
            href: StringConstructor;
        }>> & Readonly<{
            onClick?: ((ev: MouseEvent) => any) | undefined;
        }>, {
            prefixCls: string;
            cls: import("vue").ComputedRef<(string | {
                [x: string]: boolean;
            })[]>;
            mergedDisabled: import("vue").ComputedRef<boolean>;
            handleClick: (ev: MouseEvent) => void;
        }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
            click: (ev: MouseEvent) => true;
        }, import("vue").PublicProps, {
            disabled: boolean;
            autofocus: boolean;
            loading: boolean;
            long: boolean;
            htmlType: string;
        }, true, {}, {}, {
            IconLoading: any;
        } & import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import("vue").ExtractPropTypes<{
            type: {
                type: PropType<"dashed" | "text" | "outline" | "primary" | "secondary">;
            };
            shape: {
                type: PropType<"round" | "circle" | "square">;
            };
            status: {
                type: PropType<"normal" | "success" | "warning" | "danger">;
            };
            size: {
                type: PropType<"mini" | "medium" | "large" | "small">;
            };
            long: {
                type: BooleanConstructor;
                default: boolean;
            };
            loading: {
                type: BooleanConstructor;
                default: boolean;
            };
            disabled: {
                type: BooleanConstructor;
            };
            htmlType: {
                type: StringConstructor;
                default: string;
            };
            autofocus: {
                type: BooleanConstructor;
                default: boolean;
            };
            href: StringConstructor;
        }>> & Readonly<{
            onClick?: ((ev: MouseEvent) => any) | undefined;
        }>, {
            prefixCls: string;
            cls: import("vue").ComputedRef<(string | {
                [x: string]: boolean;
            })[]>;
            mergedDisabled: import("vue").ComputedRef<boolean>;
            handleClick: (ev: MouseEvent) => void;
        }, {}, {}, {}, {
            disabled: boolean;
            autofocus: boolean;
            loading: boolean;
            long: boolean;
            htmlType: string;
        }>;
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
    } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
        type: {
            type: PropType<"dashed" | "text" | "outline" | "primary" | "secondary">;
        };
        shape: {
            type: PropType<"round" | "circle" | "square">;
        };
        status: {
            type: PropType<"normal" | "success" | "warning" | "danger">;
        };
        size: {
            type: PropType<"mini" | "medium" | "large" | "small">;
        };
        long: {
            type: BooleanConstructor;
            default: boolean;
        };
        loading: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
        };
        htmlType: {
            type: StringConstructor;
            default: string;
        };
        autofocus: {
            type: BooleanConstructor;
            default: boolean;
        };
        href: StringConstructor;
    }>> & Readonly<{
        onClick?: ((ev: MouseEvent) => any) | undefined;
    }>, {
        prefixCls: string;
        cls: import("vue").ComputedRef<(string | {
            [x: string]: boolean;
        })[]>;
        mergedDisabled: import("vue").ComputedRef<boolean>;
        handleClick: (ev: MouseEvent) => void;
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        click: (ev: MouseEvent) => true;
    }, string, {
        disabled: boolean;
        autofocus: boolean;
        loading: boolean;
        long: boolean;
        htmlType: string;
    }, {}, string, {}, {
        IconLoading: any;
    } & import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
        Group: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
            type: {
                type: PropType<"dashed" | "text" | "outline" | "primary" | "secondary">;
            };
            status: {
                type: PropType<"normal" | "success" | "warning" | "danger">;
            };
            shape: {
                type: PropType<"round" | "circle" | "square">;
            };
            size: {
                type: PropType<"mini" | "medium" | "large" | "small">;
            };
            disabled: {
                type: BooleanConstructor;
            };
        }>, {
            prefixCls: string;
        }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
            type: {
                type: PropType<"dashed" | "text" | "outline" | "primary" | "secondary">;
            };
            status: {
                type: PropType<"normal" | "success" | "warning" | "danger">;
            };
            shape: {
                type: PropType<"round" | "circle" | "square">;
            };
            size: {
                type: PropType<"mini" | "medium" | "large" | "small">;
            };
            disabled: {
                type: BooleanConstructor;
            };
        }>> & Readonly<{}>, {
            disabled: boolean;
        }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
        install: (app: import("vue").App<any>, options?: import("../_utils/types").ArcoOptions | undefined) => void;
    };
    IconHover: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        prefix: {
            type: StringConstructor;
        };
        size: {
            type: PropType<"mini" | "medium" | "large" | "small">;
            default: string;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>, {
        prefixCls: string;
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        prefix: {
            type: StringConstructor;
        };
        size: {
            type: PropType<"mini" | "medium" | "large" | "small">;
            default: string;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>> & Readonly<{}>, {
        disabled: boolean;
        size: "mini" | "medium" | "large" | "small";
    }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
    IconClose: any;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
