export type PaginatorFunction = (key: any, docId: string | null, limit: number | undefined) => Promise>; export type PaginatorExecutor = (latestPaginatorFunctionResult: PaginatorResponse, acc: any[], limit: number | undefined) => Promise>; export interface PaginatorResponse { rows: Array; nextKey: any | null | undefined; nextDocId: string | null | undefined; done: boolean; } export interface RowsChunk { startIdx: number; endIdx: number; rows: Array; nextKey: any | null; nextDocId: string | null; } export interface MissingRowsChunk { missing: [number, number]; lastEndIdx: number; lastKey: any | null; lastDocId: string | null; rows?: Array; } export declare function sleep(ms: number): Promise; export declare function retry

(fn: () => Promise

, retryCount?: number, sleepTime?: number, exponentialFactor?: number): Promise

; export declare function getRowsUsingPagination(paginator: PaginatorFunction, filter?: (value: X, idx: number, array: Array) => boolean, startIdx?: number, endIdx?: number, cache?: Array>): Promise>;