import { PopupVisibleChangeContext } from '../popup/index';
import { DropdownOption } from './type';
declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
    dropdownClass: import("@vue/composition-api").ComputedRef<string>;
    handleMenuClick: (data: DropdownOption, context: {
        e: MouseEvent;
    }) => void;
    isPopupVisible: import("@vue/composition-api").Ref<boolean>;
    handleVisibleChange: (visible: boolean, context: PopupVisibleChangeContext) => void;
}> & import("@vue/composition-api").Data, {}, {}, {
    direction: {
        type: import("vue").PropType<"left" | "right">;
        default: "left" | "right";
        validator(val: "left" | "right"): boolean;
    };
    disabled: BooleanConstructor;
    hideAfterItemClick: {
        type: BooleanConstructor;
        default: boolean;
    };
    maxColumnWidth: {
        type: import("vue").PropType<string | number>;
        default: number;
    };
    maxHeight: {
        type: NumberConstructor;
        default: number;
    };
    minColumnWidth: {
        type: import("vue").PropType<string | number>;
        default: number;
    };
    options: {
        type: import("vue").PropType<DropdownOption[]>;
        default: () => DropdownOption[];
    };
    placement: {
        type: import("vue").PropType<"left" | "top" | "bottom" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "left-top" | "left-bottom" | "right-top" | "right-bottom">;
        default: "left" | "top" | "bottom" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "left-top" | "left-bottom" | "right-top" | "right-bottom";
        validator(val: "left" | "top" | "bottom" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "left-top" | "left-bottom" | "right-top" | "right-bottom"): boolean;
    };
    popupProps: {
        type: import("vue").PropType<import("../popup/type").TdPopupProps>;
    };
    trigger: {
        type: import("vue").PropType<"click" | "focus" | "hover" | "context-menu">;
        default: "click" | "focus" | "hover" | "context-menu";
        validator(val: "click" | "focus" | "hover" | "context-menu"): boolean;
    };
    onClick: import("vue").PropType<(dropdownItem: DropdownOption, context: {
        e: MouseEvent;
    }) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
    direction: {
        type: import("vue").PropType<"left" | "right">;
        default: "left" | "right";
        validator(val: "left" | "right"): boolean;
    };
    disabled: BooleanConstructor;
    hideAfterItemClick: {
        type: BooleanConstructor;
        default: boolean;
    };
    maxColumnWidth: {
        type: import("vue").PropType<string | number>;
        default: number;
    };
    maxHeight: {
        type: NumberConstructor;
        default: number;
    };
    minColumnWidth: {
        type: import("vue").PropType<string | number>;
        default: number;
    };
    options: {
        type: import("vue").PropType<DropdownOption[]>;
        default: () => DropdownOption[];
    };
    placement: {
        type: import("vue").PropType<"left" | "top" | "bottom" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "left-top" | "left-bottom" | "right-top" | "right-bottom">;
        default: "left" | "top" | "bottom" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "left-top" | "left-bottom" | "right-top" | "right-bottom";
        validator(val: "left" | "top" | "bottom" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "left-top" | "left-bottom" | "right-top" | "right-bottom"): boolean;
    };
    popupProps: {
        type: import("vue").PropType<import("../popup/type").TdPopupProps>;
    };
    trigger: {
        type: import("vue").PropType<"click" | "focus" | "hover" | "context-menu">;
        default: "click" | "focus" | "hover" | "context-menu";
        validator(val: "click" | "focus" | "hover" | "context-menu"): boolean;
    };
    onClick: import("vue").PropType<(dropdownItem: DropdownOption, context: {
        e: MouseEvent;
    }) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
    direction: "left" | "right";
    maxHeight: number;
    disabled: boolean;
    options: DropdownOption[];
    trigger: "click" | "focus" | "hover" | "context-menu";
    placement: "left" | "top" | "bottom" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "left-top" | "left-bottom" | "right-top" | "right-bottom";
    maxColumnWidth: string | number;
    minColumnWidth: string | number;
    hideAfterItemClick: boolean;
} & {
    onClick?: (dropdownItem: DropdownOption, context: {
        e: MouseEvent;
    }) => void;
    popupProps?: unknown;
}, import("@vue/composition-api").ShallowUnwrapRef<{
    dropdownClass: import("@vue/composition-api").ComputedRef<string>;
    handleMenuClick: (data: DropdownOption, context: {
        e: MouseEvent;
    }) => void;
    isPopupVisible: import("@vue/composition-api").Ref<boolean>;
    handleVisibleChange: (visible: boolean, context: PopupVisibleChangeContext) => void;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
    direction: "left" | "right";
    maxHeight: number;
    disabled: boolean;
    options: DropdownOption[];
    trigger: "click" | "focus" | "hover" | "context-menu";
    placement: "left" | "top" | "bottom" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "left-top" | "left-bottom" | "right-top" | "right-bottom";
    maxColumnWidth: string | number;
    minColumnWidth: string | number;
    hideAfterItemClick: boolean;
} & {
    onClick?: (dropdownItem: DropdownOption, context: {
        e: MouseEvent;
    }) => void;
    popupProps?: unknown;
}, {
    direction: "left" | "right";
    maxHeight: number;
    disabled: boolean;
    options: DropdownOption[];
    trigger: "click" | "focus" | "hover" | "context-menu";
    placement: "left" | "top" | "bottom" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "left-top" | "left-bottom" | "right-top" | "right-bottom";
    maxColumnWidth: string | number;
    minColumnWidth: string | number;
    hideAfterItemClick: boolean;
}, true>);
export default _default;
