import { type PropType, type ExtractPropTypes, type Ref } from 'vue';
import { DropdownDirection } from '../../utils';
export declare const DROPDOWN_KEY: string;
declare const _props: {
    zIndex: {
        type: NumberConstructor;
        default: number;
    };
    duration: {
        type: NumberConstructor;
        default: number;
    };
    direction: {
        type: PropType<DropdownDirection>;
        default: DropdownDirection;
    };
    activeColor: {
        type: StringConstructor;
        default: string;
    };
    isCloseOnClickOutside: {
        type: BooleanConstructor;
        default: boolean;
    };
    isCloseOnClickMask: {
        type: BooleanConstructor;
        default: boolean;
    };
    swipeThreshold: {
        type: NumberConstructor;
        default: number;
    };
};
export type DropdownProps = ExtractPropTypes<typeof _props>;
export interface DropdownProvide {
    id: string;
    props: ExtractPropTypes<typeof _props>;
    offset: Ref<number>;
    updateOffset: () => void;
}
declare const _default: import("vue").DefineComponent<{
    zIndex: {
        type: NumberConstructor;
        default: number;
    };
    duration: {
        type: NumberConstructor;
        default: number;
    };
    direction: {
        type: PropType<DropdownDirection>;
        default: DropdownDirection;
    };
    activeColor: {
        type: StringConstructor;
        default: string;
    };
    isCloseOnClickOutside: {
        type: BooleanConstructor;
        default: boolean;
    };
    isCloseOnClickMask: {
        type: BooleanConstructor;
        default: boolean;
    };
    swipeThreshold: {
        type: NumberConstructor;
        default: number;
    };
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
    zIndex: {
        type: NumberConstructor;
        default: number;
    };
    duration: {
        type: NumberConstructor;
        default: number;
    };
    direction: {
        type: PropType<DropdownDirection>;
        default: DropdownDirection;
    };
    activeColor: {
        type: StringConstructor;
        default: string;
    };
    isCloseOnClickOutside: {
        type: BooleanConstructor;
        default: boolean;
    };
    isCloseOnClickMask: {
        type: BooleanConstructor;
        default: boolean;
    };
    swipeThreshold: {
        type: NumberConstructor;
        default: number;
    };
}>>, {
    duration: number;
    activeColor: string;
    direction: DropdownDirection;
    isCloseOnClickMask: boolean;
    zIndex: number;
    isCloseOnClickOutside: boolean;
    swipeThreshold: number;
}>;
export default _default;
