import { ServerSideDataSource, GetRowsParams, GetRowsResult } from './types';
export declare function getBlockNumber(rowIndex: number, blockSize: number): number;
export declare function getBlockRange(blockNumber: number, blockSize: number): {
    start: number;
    end: number;
};
export declare function getRequiredBlocks(startRow: number, endRow: number, blockSize: number): number[];
export declare function loadBlock(dataSource: ServerSideDataSource, blockNumber: number, blockSize: number, params: Partial<GetRowsParams>): Promise<GetRowsResult>;
export declare function getRowFromCache(rowIndex: number, blockSize: number, loadedBlocks: Map<number, any[]>): any | undefined;
export declare function isBlockLoaded(blockNumber: number, loadedBlocks: Map<number, any[]>): boolean;
export declare function isBlockLoading(blockNumber: number, loadingBlocks: Set<number>): boolean;
//# sourceMappingURL=datasource.d.ts.map