import { Component } from 'vue';

declare const _default: <T extends {
    disabled?: boolean;
    [key: string]: unknown;
}>(__VLS_props: Awaited<typeof __VLS_setup>["props"], __VLS_ctx?: __VLS_Prettify<Pick<Awaited<typeof __VLS_setup>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: __VLS_Prettify<__VLS_OmitKeepDiscriminatedUnion<(Partial<{}> & Omit<{} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, never>) & ({
        disabled?: boolean;
        outerTag?: string | Component;
        scrollerTag?: string;
        handle?: string;
        itemKey: keyof T | string;
        itemHeight?: string | number;
        virtualScroll?: boolean;
        renderScrollTag?: boolean;
        horizontalScrollbar?: string;
    } & {
        modelValue?: T[];
    }), keyof import('vue').VNodeProps | keyof import('vue').AllowedComponentProps>> & {} & (import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps);
    expose(exposed: import('vue').ShallowUnwrapRef<{
        scrollToLast: () => void;
    }>): void;
    attrs: any;
    slots: ReturnType<() => {
        header?(_: {}): any;
        item?(_: {
            key: string;
            item: T;
            index: number;
            itemProps: {
                class: {
                    drag__item: boolean;
                    drag__draggable: boolean;
                    drag__active: boolean;
                };
                onDragover: (e: DragEvent) => void;
                onDragstart: () => void;
                style: string;
            };
        }): any;
    }>;
    emit: typeof __VLS_emit;
}>) => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
    [key: string]: any;
}> & {
    __ctx?: Awaited<typeof __VLS_setup>;
};
export default _default;
type __VLS_Prettify<T> = {
    [K in keyof T]: T[K];
} & {};
