import type { PropType } from 'vue';
import { CSSProperties } from 'vue';
import { ClassName } from '../_utils/types';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    popupVisible: {
        type: BooleanConstructor;
        default: undefined;
    };
    defaultPopupVisible: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    content: StringConstructor;
    position: {
        type: PropType<"br" | "rt" | "tr" | "top" | "bottom" | "left" | "right" | "tl" | "bl" | "lt" | "lb" | "rb">;
        default: string;
    };
    mini: {
        type: BooleanConstructor;
        default: boolean;
    };
    backgroundColor: {
        type: StringConstructor;
    };
    contentClass: {
        type: PropType<ClassName>;
    };
    contentStyle: {
        type: PropType<CSSProperties>;
    };
    arrowClass: {
        type: PropType<ClassName>;
    };
    arrowStyle: {
        type: PropType<CSSProperties>;
    };
    popupContainer: {
        type: PropType<string | HTMLElement>;
    };
}>, {
    prefixCls: string;
    computedPopupVisible: import("vue").ComputedRef<boolean>;
    contentCls: import("vue").ComputedRef<(ClassName | undefined)[]>;
    computedContentStyle: import("vue").ComputedRef<CSSProperties | undefined>;
    arrowCls: import("vue").ComputedRef<(ClassName | undefined)[]>;
    computedArrowStyle: import("vue").ComputedRef<CSSProperties | undefined>;
    handlePopupVisibleChange: (visible: boolean) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    'update:popupVisible': (visible: boolean) => true;
    popupVisibleChange: (visible: boolean) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    popupVisible: {
        type: BooleanConstructor;
        default: undefined;
    };
    defaultPopupVisible: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    content: StringConstructor;
    position: {
        type: PropType<"br" | "rt" | "tr" | "top" | "bottom" | "left" | "right" | "tl" | "bl" | "lt" | "lb" | "rb">;
        default: string;
    };
    mini: {
        type: BooleanConstructor;
        default: boolean;
    };
    backgroundColor: {
        type: StringConstructor;
    };
    contentClass: {
        type: PropType<ClassName>;
    };
    contentStyle: {
        type: PropType<CSSProperties>;
    };
    arrowClass: {
        type: PropType<ClassName>;
    };
    arrowStyle: {
        type: PropType<CSSProperties>;
    };
    popupContainer: {
        type: PropType<string | HTMLElement>;
    };
}>> & Readonly<{
    "onUpdate:popupVisible"?: ((visible: boolean) => any) | undefined;
    onPopupVisibleChange?: ((visible: boolean) => any) | undefined;
}>, {
    mini: boolean;
    disabled: boolean;
    position: "br" | "rt" | "tr" | "top" | "bottom" | "left" | "right" | "tl" | "bl" | "lt" | "lb" | "rb";
    popupVisible: boolean;
    defaultPopupVisible: boolean;
}, {}, {
    Trigger: {
        new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
            popupVisible: {
                type: BooleanConstructor;
                default: undefined;
            };
            defaultPopupVisible: {
                type: BooleanConstructor;
                default: boolean;
            };
            trigger: {
                type: PropType<"focus" | "hover" | "click" | "contextMenu" | ("focus" | "hover" | "click" | "contextMenu")[]>;
                default: string;
            };
            position: {
                type: PropType<"br" | "rt" | "tr" | "top" | "bottom" | "left" | "right" | "tl" | "bl" | "lt" | "lb" | "rb">;
                default: string;
            };
            disabled: {
                type: BooleanConstructor;
                default: boolean;
            };
            popupOffset: {
                type: NumberConstructor;
                default: number;
            };
            popupTranslate: {
                type: PropType<import("../trigger").TriggerPopupTranslate>;
            };
            showArrow: {
                type: BooleanConstructor;
                default: boolean;
            };
            alignPoint: {
                type: BooleanConstructor;
                default: boolean;
            };
            popupHoverStay: {
                type: BooleanConstructor;
                default: boolean;
            };
            blurToClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            clickToClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            clickOutsideToClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            unmountOnClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            contentClass: {
                type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
            };
            contentStyle: {
                type: PropType<CSSProperties>;
            };
            arrowClass: {
                type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
            };
            arrowStyle: {
                type: PropType<CSSProperties>;
            };
            popupStyle: {
                type: PropType<CSSProperties>;
            };
            animationName: {
                type: StringConstructor;
                default: string;
            };
            duration: {
                type: PropType<number | {
                    enter: number;
                    leave: number;
                }>;
            };
            mouseEnterDelay: {
                type: NumberConstructor;
                default: number;
            };
            mouseLeaveDelay: {
                type: NumberConstructor;
                default: number;
            };
            focusDelay: {
                type: NumberConstructor;
                default: number;
            };
            autoFitPopupWidth: {
                type: BooleanConstructor;
                default: boolean;
            };
            autoFitPopupMinWidth: {
                type: BooleanConstructor;
                default: boolean;
            };
            autoFixPosition: {
                type: BooleanConstructor;
                default: boolean;
            };
            popupContainer: {
                type: PropType<string | HTMLElement>;
            };
            updateAtScroll: {
                type: BooleanConstructor;
                default: boolean;
            };
            autoFitTransformOrigin: {
                type: BooleanConstructor;
                default: boolean;
            };
            hideEmpty: {
                type: BooleanConstructor;
                default: boolean;
            };
            openedClass: {
                type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
            };
            autoFitPosition: {
                type: BooleanConstructor;
                default: boolean;
            };
            renderToBody: {
                type: BooleanConstructor;
                default: boolean;
            };
            preventFocus: {
                type: BooleanConstructor;
                default: boolean;
            };
            scrollToClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            scrollToCloseDistance: {
                type: NumberConstructor;
                default: number;
            };
        }>> & Readonly<{
            onResize?: (() => any) | undefined;
            onHide?: (() => any) | undefined;
            onShow?: (() => any) | undefined;
            "onUpdate:popupVisible"?: ((visible: boolean) => any) | undefined;
            onPopupVisibleChange?: ((visible: boolean) => any) | undefined;
        }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
            'update:popupVisible': (visible: boolean) => true;
            popupVisibleChange: (visible: boolean) => true;
            show: () => true;
            hide: () => true;
            resize: () => true;
        }, import("vue").PublicProps, {
            disabled: boolean;
            position: "br" | "rt" | "tr" | "top" | "bottom" | "left" | "right" | "tl" | "bl" | "lt" | "lb" | "rb";
            popupVisible: boolean;
            defaultPopupVisible: boolean;
            trigger: "focus" | "hover" | "click" | "contextMenu" | ("focus" | "hover" | "click" | "contextMenu")[];
            popupOffset: number;
            showArrow: boolean;
            alignPoint: boolean;
            popupHoverStay: boolean;
            blurToClose: boolean;
            clickToClose: boolean;
            clickOutsideToClose: boolean;
            unmountOnClose: boolean;
            animationName: string;
            mouseEnterDelay: number;
            mouseLeaveDelay: number;
            focusDelay: number;
            autoFitPopupWidth: boolean;
            autoFitPopupMinWidth: boolean;
            autoFixPosition: boolean;
            updateAtScroll: boolean;
            autoFitTransformOrigin: boolean;
            hideEmpty: boolean;
            autoFitPosition: boolean;
            renderToBody: boolean;
            preventFocus: boolean;
            scrollToClose: boolean;
            scrollToCloseDistance: number;
        }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import("vue").ExtractPropTypes<{
            popupVisible: {
                type: BooleanConstructor;
                default: undefined;
            };
            defaultPopupVisible: {
                type: BooleanConstructor;
                default: boolean;
            };
            trigger: {
                type: PropType<"focus" | "hover" | "click" | "contextMenu" | ("focus" | "hover" | "click" | "contextMenu")[]>;
                default: string;
            };
            position: {
                type: PropType<"br" | "rt" | "tr" | "top" | "bottom" | "left" | "right" | "tl" | "bl" | "lt" | "lb" | "rb">;
                default: string;
            };
            disabled: {
                type: BooleanConstructor;
                default: boolean;
            };
            popupOffset: {
                type: NumberConstructor;
                default: number;
            };
            popupTranslate: {
                type: PropType<import("../trigger").TriggerPopupTranslate>;
            };
            showArrow: {
                type: BooleanConstructor;
                default: boolean;
            };
            alignPoint: {
                type: BooleanConstructor;
                default: boolean;
            };
            popupHoverStay: {
                type: BooleanConstructor;
                default: boolean;
            };
            blurToClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            clickToClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            clickOutsideToClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            unmountOnClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            contentClass: {
                type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
            };
            contentStyle: {
                type: PropType<CSSProperties>;
            };
            arrowClass: {
                type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
            };
            arrowStyle: {
                type: PropType<CSSProperties>;
            };
            popupStyle: {
                type: PropType<CSSProperties>;
            };
            animationName: {
                type: StringConstructor;
                default: string;
            };
            duration: {
                type: PropType<number | {
                    enter: number;
                    leave: number;
                }>;
            };
            mouseEnterDelay: {
                type: NumberConstructor;
                default: number;
            };
            mouseLeaveDelay: {
                type: NumberConstructor;
                default: number;
            };
            focusDelay: {
                type: NumberConstructor;
                default: number;
            };
            autoFitPopupWidth: {
                type: BooleanConstructor;
                default: boolean;
            };
            autoFitPopupMinWidth: {
                type: BooleanConstructor;
                default: boolean;
            };
            autoFixPosition: {
                type: BooleanConstructor;
                default: boolean;
            };
            popupContainer: {
                type: PropType<string | HTMLElement>;
            };
            updateAtScroll: {
                type: BooleanConstructor;
                default: boolean;
            };
            autoFitTransformOrigin: {
                type: BooleanConstructor;
                default: boolean;
            };
            hideEmpty: {
                type: BooleanConstructor;
                default: boolean;
            };
            openedClass: {
                type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
            };
            autoFitPosition: {
                type: BooleanConstructor;
                default: boolean;
            };
            renderToBody: {
                type: BooleanConstructor;
                default: boolean;
            };
            preventFocus: {
                type: BooleanConstructor;
                default: boolean;
            };
            scrollToClose: {
                type: BooleanConstructor;
                default: boolean;
            };
            scrollToCloseDistance: {
                type: NumberConstructor;
                default: number;
            };
        }>> & Readonly<{
            onResize?: (() => any) | undefined;
            onHide?: (() => any) | undefined;
            onShow?: (() => any) | undefined;
            "onUpdate:popupVisible"?: ((visible: boolean) => any) | undefined;
            onPopupVisibleChange?: ((visible: boolean) => any) | undefined;
        }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, {
            disabled: boolean;
            position: "br" | "rt" | "tr" | "top" | "bottom" | "left" | "right" | "tl" | "bl" | "lt" | "lb" | "rb";
            popupVisible: boolean;
            defaultPopupVisible: boolean;
            trigger: "focus" | "hover" | "click" | "contextMenu" | ("focus" | "hover" | "click" | "contextMenu")[];
            popupOffset: number;
            showArrow: boolean;
            alignPoint: boolean;
            popupHoverStay: boolean;
            blurToClose: boolean;
            clickToClose: boolean;
            clickOutsideToClose: boolean;
            unmountOnClose: boolean;
            animationName: string;
            mouseEnterDelay: number;
            mouseLeaveDelay: number;
            focusDelay: number;
            autoFitPopupWidth: boolean;
            autoFitPopupMinWidth: boolean;
            autoFixPosition: boolean;
            updateAtScroll: boolean;
            autoFitTransformOrigin: boolean;
            hideEmpty: boolean;
            autoFitPosition: boolean;
            renderToBody: boolean;
            preventFocus: boolean;
            scrollToClose: boolean;
            scrollToCloseDistance: number;
        }>;
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
    } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
        popupVisible: {
            type: BooleanConstructor;
            default: undefined;
        };
        defaultPopupVisible: {
            type: BooleanConstructor;
            default: boolean;
        };
        trigger: {
            type: PropType<"focus" | "hover" | "click" | "contextMenu" | ("focus" | "hover" | "click" | "contextMenu")[]>;
            default: string;
        };
        position: {
            type: PropType<"br" | "rt" | "tr" | "top" | "bottom" | "left" | "right" | "tl" | "bl" | "lt" | "lb" | "rb">;
            default: string;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        popupOffset: {
            type: NumberConstructor;
            default: number;
        };
        popupTranslate: {
            type: PropType<import("../trigger").TriggerPopupTranslate>;
        };
        showArrow: {
            type: BooleanConstructor;
            default: boolean;
        };
        alignPoint: {
            type: BooleanConstructor;
            default: boolean;
        };
        popupHoverStay: {
            type: BooleanConstructor;
            default: boolean;
        };
        blurToClose: {
            type: BooleanConstructor;
            default: boolean;
        };
        clickToClose: {
            type: BooleanConstructor;
            default: boolean;
        };
        clickOutsideToClose: {
            type: BooleanConstructor;
            default: boolean;
        };
        unmountOnClose: {
            type: BooleanConstructor;
            default: boolean;
        };
        contentClass: {
            type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
        };
        contentStyle: {
            type: PropType<CSSProperties>;
        };
        arrowClass: {
            type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
        };
        arrowStyle: {
            type: PropType<CSSProperties>;
        };
        popupStyle: {
            type: PropType<CSSProperties>;
        };
        animationName: {
            type: StringConstructor;
            default: string;
        };
        duration: {
            type: PropType<number | {
                enter: number;
                leave: number;
            }>;
        };
        mouseEnterDelay: {
            type: NumberConstructor;
            default: number;
        };
        mouseLeaveDelay: {
            type: NumberConstructor;
            default: number;
        };
        focusDelay: {
            type: NumberConstructor;
            default: number;
        };
        autoFitPopupWidth: {
            type: BooleanConstructor;
            default: boolean;
        };
        autoFitPopupMinWidth: {
            type: BooleanConstructor;
            default: boolean;
        };
        autoFixPosition: {
            type: BooleanConstructor;
            default: boolean;
        };
        popupContainer: {
            type: PropType<string | HTMLElement>;
        };
        updateAtScroll: {
            type: BooleanConstructor;
            default: boolean;
        };
        autoFitTransformOrigin: {
            type: BooleanConstructor;
            default: boolean;
        };
        hideEmpty: {
            type: BooleanConstructor;
            default: boolean;
        };
        openedClass: {
            type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
        };
        autoFitPosition: {
            type: BooleanConstructor;
            default: boolean;
        };
        renderToBody: {
            type: BooleanConstructor;
            default: boolean;
        };
        preventFocus: {
            type: BooleanConstructor;
            default: boolean;
        };
        scrollToClose: {
            type: BooleanConstructor;
            default: boolean;
        };
        scrollToCloseDistance: {
            type: NumberConstructor;
            default: number;
        };
    }>> & Readonly<{
        onResize?: (() => any) | undefined;
        onHide?: (() => any) | undefined;
        onShow?: (() => any) | undefined;
        "onUpdate:popupVisible"?: ((visible: boolean) => any) | undefined;
        onPopupVisibleChange?: ((visible: boolean) => any) | undefined;
    }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        'update:popupVisible': (visible: boolean) => true;
        popupVisibleChange: (visible: boolean) => true;
        show: () => true;
        hide: () => true;
        resize: () => true;
    }, string, {
        disabled: boolean;
        position: "br" | "rt" | "tr" | "top" | "bottom" | "left" | "right" | "tl" | "bl" | "lt" | "lb" | "rb";
        popupVisible: boolean;
        defaultPopupVisible: boolean;
        trigger: "focus" | "hover" | "click" | "contextMenu" | ("focus" | "hover" | "click" | "contextMenu")[];
        popupOffset: number;
        showArrow: boolean;
        alignPoint: boolean;
        popupHoverStay: boolean;
        blurToClose: boolean;
        clickToClose: boolean;
        clickOutsideToClose: boolean;
        unmountOnClose: boolean;
        animationName: string;
        mouseEnterDelay: number;
        mouseLeaveDelay: number;
        focusDelay: number;
        autoFitPopupWidth: boolean;
        autoFitPopupMinWidth: boolean;
        autoFixPosition: boolean;
        updateAtScroll: boolean;
        autoFitTransformOrigin: boolean;
        hideEmpty: boolean;
        autoFitPosition: boolean;
        renderToBody: boolean;
        preventFocus: boolean;
        scrollToClose: boolean;
        scrollToCloseDistance: number;
    }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
        install: (app: import("vue").App<any>, options?: import("../_utils/types").ArcoOptions | undefined) => void;
    };
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
