declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & (new () => {
    $slots: S;
});
declare const __VLS_component: import('vue').DefineComponent<{}, {
    scrollToBottom: typeof scrollToBottom;
    scrollToItem: typeof scrollToItem;
    updateItems: typeof updateItems;
    updateItemsFromBottom: typeof updateItemsFromBottom;
    $emit: (event: "user-position", ...args: any[]) => void;
    direction: string;
    items: unknown[];
    keyField: string;
    itemSize: number;
    minItemSize: string | number;
    listTag: string;
    itemTag: string;
    dynamic: boolean;
    scrollerHeight: string | number;
    scrollerWidth: string | number;
    $props: {
        readonly direction?: string | undefined;
        readonly items?: unknown[] | undefined;
        readonly keyField?: string | undefined;
        readonly itemSize?: number | undefined;
        readonly minItemSize?: string | number | undefined;
        readonly listTag?: string | undefined;
        readonly itemTag?: string | undefined;
        readonly dynamic?: boolean | undefined;
        readonly scrollerHeight?: string | number | undefined;
        readonly scrollerWidth?: string | number | undefined;
    };
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{}>>, {}, {}>;
type __VLS_TemplateResult = {
    attrs: Partial<{}>;
    slots: {
        default?(_: {
            item: any;
            index: any;
            active: any;
        }): any;
    };
    refs: {
        scroller: CreateComponentPublicInstance<Readonly<ExtractPropTypes<{
            items: {
                type: ArrayConstructor;
                required: true;
            };
            dynamic: {
                type: BooleanConstructor;
                default: boolean;
            };
            keyField: {
                type: StringConstructor;
                default: string;
            };
            direction: {
                type: StringConstructor;
                default: string;
                validator: (value: unknown) => boolean;
            };
            listTag: {
                type: StringConstructor;
                default: string;
            };
            itemTag: {
                type: StringConstructor;
                default: string;
            };
            minItemSize: {
                type: (StringConstructor | NumberConstructor)[];
            };
        }>>, any, {
            vscrollData: {
                active: boolean;
                sizes: {};
                keyField: string;
                simpleArray: boolean;
            };
        }, {
            simpleArray(): any;
            itemsWithSize(): {
                [x: number]: any;
                item: any;
                size: any;
            }[];
        }, {
            dynamicScrollerUpdateItems(): void;
            dynamicScrollerUpdateItemsFromBottom(): void;
            scrollToItem(index: any): void;
            scrollToBottom(): void;
        }, ComponentOptionsMixin, ComponentOptionsMixin, {}, VNodeProps & AllowedComponentProps & ComponentCustomProps & Readonly<ExtractPropTypes<{
            items: {
                type: ArrayConstructor;
                required: true;
            };
            dynamic: {
                type: BooleanConstructor;
                default: boolean;
            };
            keyField: {
                type: StringConstructor;
                default: string;
            };
            direction: {
                type: StringConstructor;
                default: string;
                validator: (value: unknown) => boolean;
            };
            listTag: {
                type: StringConstructor;
                default: string;
            };
            itemTag: {
                type: StringConstructor;
                default: string;
            };
            minItemSize: {
                type: (StringConstructor | NumberConstructor)[];
            };
        }>>, {
            direction: string;
            keyField: string;
            listTag: string;
            itemTag: string;
            dynamic: boolean;
        }, true, {}, {}, OptionTypesType<{}, {}, {}, {}, {}, {}>, Readonly<ExtractPropTypes<{
            items: {
                type: ArrayConstructor;
                required: true;
            };
            dynamic: {
                type: BooleanConstructor;
                default: boolean;
            };
            keyField: {
                type: StringConstructor;
                default: string;
            };
            direction: {
                type: StringConstructor;
                default: string;
                validator: (value: unknown) => boolean;
            };
            listTag: {
                type: StringConstructor;
                default: string;
            };
            itemTag: {
                type: StringConstructor;
                default: string;
            };
            minItemSize: {
                type: (StringConstructor | NumberConstructor)[];
            };
        }>>, any, {
            vscrollData: {
                active: boolean;
                sizes: {};
                keyField: string;
                simpleArray: boolean;
            };
        }, {
            simpleArray(): any;
            itemsWithSize(): {
                [x: number]: any;
                item: any;
                size: any;
            }[];
        }, {
            dynamicScrollerUpdateItems(): void;
            dynamicScrollerUpdateItemsFromBottom(): void;
            scrollToItem(index: any): void;
            scrollToBottom(): void;
        }, {
            direction: string;
            keyField: string;
            listTag: string;
            itemTag: string;
            dynamic: boolean;
        }> | ({
            $: ComponentInternalInstance;
            $data: {};
            $props: Partial<{}> & Omit<{} & VNodeProps & AllowedComponentProps & ComponentCustomProps & Readonly<ExtractPropTypes<{}>>, never>;
            $attrs: Data;
            $refs: Data;
            $slots: Readonly<InternalSlots>;
            $root: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
            $parent: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
            $emit: (event: string, ...args: any[]) => void;
            $el: any;
            $options: ComponentOptionsBase<Readonly<ExtractPropTypes<{}>>, {
                scrollToItem: (index: any) => void;
                _updateVisibleItems: (checkItem: any, checkPositionDiff?: boolean) => {
                    continuous: boolean;
                };
                $emit: (event: "user-position", ...args: any[]) => void;
                direction: string;
                itemClass: string | unknown[] | Record<string, any>;
                items: unknown[];
                listClass: string | unknown[] | Record<string, any>;
                keyField: string;
                itemSize: number;
                minItemSize: string | number;
                sizeField: string;
                buffer: number;
                skipHover: boolean;
                listTag: string;
                itemTag: string;
                $props: {
                    readonly direction?: string | undefined;
                    readonly itemClass?: string | unknown[] | Record<string, any> | undefined;
                    readonly items?: unknown[] | undefined;
                    readonly listClass?: string | unknown[] | Record<string, any> | undefined;
                    readonly keyField?: string | undefined;
                    readonly itemSize?: number | undefined;
                    readonly minItemSize?: string | number | undefined;
                    readonly sizeField?: string | undefined;
                    readonly buffer?: number | undefined;
                    readonly skipHover?: boolean | undefined;
                    readonly listTag?: string | undefined;
                    readonly itemTag?: string | undefined;
                };
            }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {}, {}, string, {}> & MergedComponentOptionsOverride;
            $forceUpdate: () => void;
            $nextTick: typeof nextTick;
            $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: WatchOptions<boolean> | undefined): WatchStopHandle;
        } & Omit<Readonly<ExtractPropTypes<{}>>, "$props" | "$emit" | "direction" | "itemClass" | "items" | "listClass" | "keyField" | "itemSize" | "minItemSize" | "sizeField" | "buffer" | "skipHover" | "listTag" | "itemTag" | "scrollToItem" | "_updateVisibleItems"> & ShallowUnwrapRef<{
            scrollToItem: (index: any) => void;
            _updateVisibleItems: (checkItem: any, checkPositionDiff?: boolean) => {
                continuous: boolean;
            };
            $emit: (event: "user-position", ...args: any[]) => void;
            direction: string;
            itemClass: string | unknown[] | Record<string, any>;
            items: unknown[];
            listClass: string | unknown[] | Record<string, any>;
            keyField: string;
            itemSize: number;
            minItemSize: string | number;
            sizeField: string;
            buffer: number;
            skipHover: boolean;
            listTag: string;
            itemTag: string;
            $props: {
                readonly direction?: string | undefined;
                readonly itemClass?: string | unknown[] | Record<string, any> | undefined;
                readonly items?: unknown[] | undefined;
                readonly listClass?: string | unknown[] | Record<string, any> | undefined;
                readonly keyField?: string | undefined;
                readonly itemSize?: number | undefined;
                readonly minItemSize?: string | number | undefined;
                readonly sizeField?: string | undefined;
                readonly buffer?: number | undefined;
                readonly skipHover?: boolean | undefined;
                readonly listTag?: string | undefined;
                readonly itemTag?: string | undefined;
            };
        }> & ExtractComputedReturns<{}> & ComponentCustomProperties & {} & {
            $slots: {
                default?(_: {
                    item: any;
                    index: any;
                    active: any;
                }): any;
            };
        }) | null;
    };
    rootEl: any;
};
declare function scrollToBottom(): void;
declare function scrollToItem(index: any): void;
declare function updateItems(): void;
declare function updateItemsFromBottom(): void;
//# sourceMappingURL=scroller.vue.d.ts.map