import type { PropType } from 'vue';
import type { Placement, Options } from '@popperjs/core';
import type { MenuOption } from './types';
declare const _default: import("vue").DefineComponent<{
    placement: {
        type: PropType<Placement>;
        default: string;
    };
    trigger: {
        type: PropType<"click" | "hover">;
        default: string;
    };
    transition: {
        type: StringConstructor;
        default: string;
    };
    openDelay: {
        type: NumberConstructor;
        default: number;
    };
    closeDelay: {
        type: NumberConstructor;
        default: number;
    };
    popperOptions: {
        type: PropType<Options>;
    };
    menuOptions: {
        type: PropType<MenuOption[]>;
        required: true;
    };
    hideAfterClick: {
        type: BooleanConstructor;
        default: boolean;
    };
}, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "visible-change")[], "select" | "visible-change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    placement: {
        type: PropType<Placement>;
        default: string;
    };
    trigger: {
        type: PropType<"click" | "hover">;
        default: string;
    };
    transition: {
        type: StringConstructor;
        default: string;
    };
    openDelay: {
        type: NumberConstructor;
        default: number;
    };
    closeDelay: {
        type: NumberConstructor;
        default: number;
    };
    popperOptions: {
        type: PropType<Options>;
    };
    menuOptions: {
        type: PropType<MenuOption[]>;
        required: true;
    };
    hideAfterClick: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & {
    onSelect?: ((...args: any[]) => any) | undefined;
    "onVisible-change"?: ((...args: any[]) => any) | undefined;
}, {
    transition: string;
    trigger: "click" | "hover";
    placement: Placement;
    openDelay: number;
    closeDelay: number;
    hideAfterClick: boolean;
}, {}>;
export default _default;
