import { RefObject } from 'react'; export type UseVirtualScrollProps = { length: number; isActive?: boolean; onScrollToBottom?: (index: number) => void; }; export type UseVirtualScrollReturn = { listRefs: React.RefObject[]; scrollElementRef: React.RefObject; slice: [number, number]; spaceTop: number; }; export type Bounds = [[number, number], [number, number]]; export declare const defaultItemsCalculationCount = 5; export declare const arraysIsEq: (arr1: number[], arr2: number[]) => boolean; export declare const useScroll: (ref: RefObject, fn: () => void, isActive: boolean) => void; export declare const getElementHeight: (el: HTMLElement | SVGGraphicsElement | null) => number; export declare const getVisiblePosition: (top: number, height: number, elementMaxSize: number) => [number, number]; export declare const calculateSavedSizes: (savedSizes: number[], sizes: number[]) => number[]; export declare const useCalculateVisiblePosition: (scrollElement: HTMLElement | null, set: (value: React.SetStateAction<[number, number]>) => void, elementsSizes: number[]) => () => void; export declare const calculateBounds: (savedSizes: number[], sizes: number[], visiblePosition: [number, number], length: number) => Bounds;