export type VirtualWindow = {
    startIndex: number;
    endIndex: number;
};
export type ComputeVirtualWindowInput = {
    rowCount: number;
    rowHeightPx: number;
    overscan: number;
    visibleTop: number;
    visibleBottom: number;
};
export type ShouldTriggerVirtualizedInfiniteLoadInput = {
    autoLoad: boolean;
    canLoadMore: boolean;
    totalHeight: number;
    visibleBottom: number;
    thresholdPx: number;
    isCoolingDown: boolean;
};
export type VerticallyScrollableInput = {
    overflowY: string;
    scrollHeight: number;
    clientHeight: number;
};
export declare const clamp: (value: number, min: number, max: number) => number;
export declare const isVerticallyScrollable: ({ overflowY, scrollHeight, clientHeight, }: VerticallyScrollableInput) => boolean;
export declare const shouldTriggerVirtualizedInfiniteLoad: ({ autoLoad, canLoadMore, totalHeight, visibleBottom, thresholdPx, isCoolingDown, }: ShouldTriggerVirtualizedInfiniteLoadInput) => boolean;
export declare const computeVirtualWindowBounds: ({ rowCount, rowHeightPx, overscan, visibleTop, visibleBottom, }: ComputeVirtualWindowInput) => VirtualWindow;
//# sourceMappingURL=virtualization.d.ts.map