import type { DropdownItemProps } from './types';
export interface Props {
    modelValue?: boolean;
    btnProps?: Record<string, any>;
    label?: string;
    right?: boolean;
    items?: DropdownItemProps[];
    top?: boolean;
    topClass?: string;
    bottomClass?: string;
    panelClass?: string;
    buttonWrapperClass?: string;
    rightClass?: string;
    leftClass?: string;
    transition?: string;
    icon?: string;
    iconSize?: string;
    iconClass?: string;
    prefixIcon?: string;
    prefixIconSize?: string;
    prefixIconClass?: string;
}
declare const _default: {
    new (...args: any[]): {
        $: import("vue").ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            label: string;
            icon: string;
            iconSize: string;
            iconClass: string;
            modelValue: boolean;
            btnProps: Record<string, any>;
            right: boolean;
            items: DropdownItemProps[];
            top: boolean;
            topClass: string;
            bottomClass: string;
            panelClass: string;
            buttonWrapperClass: string;
            rightClass: string;
            leftClass: string;
            transition: string;
            prefixIcon: string;
            prefixIconSize: string;
        }> & Omit<Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
            modelValue: boolean;
            btnProps: () => {
                variant: string;
            };
            label: string;
            right: boolean;
            items: () => never[];
            top: boolean;
            topClass: string;
            bottomClass: string;
            panelClass: string;
            buttonWrapperClass: string;
            leftClass: string;
            rightClass: string;
            transition: string;
            icon: string;
            iconSize: string;
            iconClass: string;
            prefixIcon: string;
            prefixIconSize: string;
        }>>> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "label" | "icon" | "iconSize" | "iconClass" | "modelValue" | "btnProps" | "right" | "items" | "top" | "topClass" | "bottomClass" | "panelClass" | "buttonWrapperClass" | "rightClass" | "leftClass" | "transition" | "prefixIcon" | "prefixIconSize">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import("vue").Slot | undefined;
        }>;
        $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
        $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
        $emit: (event: string, ...args: any[]) => void;
        $el: any;
        $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
            modelValue: boolean;
            btnProps: () => {
                variant: string;
            };
            label: string;
            right: boolean;
            items: () => never[];
            top: boolean;
            topClass: string;
            bottomClass: string;
            panelClass: string;
            buttonWrapperClass: string;
            leftClass: string;
            rightClass: string;
            transition: string;
            icon: string;
            iconSize: string;
            iconClass: string;
            prefixIcon: string;
            prefixIconSize: string;
        }>>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
            label: string;
            icon: string;
            iconSize: string;
            iconClass: string;
            modelValue: boolean;
            btnProps: Record<string, any>;
            right: boolean;
            items: DropdownItemProps[];
            top: boolean;
            topClass: string;
            bottomClass: string;
            panelClass: string;
            buttonWrapperClass: string;
            rightClass: string;
            leftClass: string;
            transition: string;
            prefixIcon: string;
            prefixIconSize: string;
        }> & {
            beforeCreate?: ((() => void) | (() => void)[]) | undefined;
            created?: ((() => void) | (() => void)[]) | undefined;
            beforeMount?: ((() => void) | (() => void)[]) | undefined;
            mounted?: ((() => void) | (() => void)[]) | undefined;
            beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
            updated?: ((() => void) | (() => void)[]) | undefined;
            activated?: ((() => void) | (() => void)[]) | undefined;
            deactivated?: ((() => void) | (() => void)[]) | undefined;
            beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
            beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
            destroyed?: ((() => void) | (() => void)[]) | undefined;
            unmounted?: ((() => void) | (() => void)[]) | undefined;
            renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void)[]) | undefined;
        };
        $forceUpdate: () => void;
        $nextTick: typeof import("vue").nextTick;
        $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
    } & Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
        modelValue: boolean;
        btnProps: () => {
            variant: string;
        };
        label: string;
        right: boolean;
        items: () => never[];
        top: boolean;
        topClass: string;
        bottomClass: string;
        panelClass: string;
        buttonWrapperClass: string;
        leftClass: string;
        rightClass: string;
        transition: string;
        icon: string;
        iconSize: string;
        iconClass: string;
        prefixIcon: string;
        prefixIconSize: string;
    }>>> & import("vue").ShallowUnwrapRef<{}> & {} & import("vue").ComponentCustomProperties;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
    modelValue: boolean;
    btnProps: () => {
        variant: string;
    };
    label: string;
    right: boolean;
    items: () => never[];
    top: boolean;
    topClass: string;
    bottomClass: string;
    panelClass: string;
    buttonWrapperClass: string;
    leftClass: string;
    rightClass: string;
    transition: string;
    icon: string;
    iconSize: string;
    iconClass: string;
    prefixIcon: string;
    prefixIconSize: string;
}>>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
    label: string;
    icon: string;
    iconSize: string;
    iconClass: string;
    modelValue: boolean;
    btnProps: Record<string, any>;
    right: boolean;
    items: DropdownItemProps[];
    top: boolean;
    topClass: string;
    bottomClass: string;
    panelClass: string;
    buttonWrapperClass: string;
    rightClass: string;
    leftClass: string;
    transition: string;
    prefixIcon: string;
    prefixIconSize: string;
}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
    $slots: typeof import('./Dropdown.vue.__VLS_template').default;
});
export default _default;
declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
declare type __VLS_TypePropsToRuntimeProps<T> = {
    [K in keyof T]-?: {} extends Pick<T, K> ? {
        type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
    } : {
        type: import('vue').PropType<T[K]>;
        required: true;
    };
};
declare type __VLS_WithDefaults<P, D> = {
    [K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
        default: D[K];
    } : P[K];
};
