import Vue, { ComponentOptions, PluginObject } from "vue"; interface PluginOptions { installComponents?: boolean; componentsPrefix?: string; } declare const plugin: PluginObject<PluginOptions> & { version: string }; export class RecycleScroller extends Vue { sizes: Array<{ accumulator: number }>; itemSize: number | null; totalSize: number; ready: boolean; emitUpdate: boolean; prerender: number; pageMode: boolean; buffer: number; typeField: string; sizeField: string; minItemSize: number | string | null; direction: "horizontal" | "vertical"; pool: Array<{ item: unknown; position: number; nr: { id: number; index: number; key: string; type: unknown; used: boolean; }; }>; getScroll(): { start: number; end: number }; scrollToItem(index: number): void; scrollToPosition(position: number); } export class DynamicScroller extends RecycleScroller { minItemSize: number | string; vscrollData: { active: boolean; sizes: Record<string, number>; validSizes: object; keyField: string; simpleArray: boolean; }; $refs: { scroller: RecycleScroller; }; onScrollerResize(): void; onScrollerVisible(): void; forceUpdate(clear?: boolean): void; scrollToItem(index: number): void; getItemSize(item: object, index?: number): number; scrollToBottom(): void; } export class DynamicScrollerItem extends Vue { } export default plugin;