all-package-names
Version:
Fast lookup and iteration over all NPM package names
22 lines • 753 B
TypeScript
import type { FileHandle } from "node:fs/promises";
export type PagedReaderOptions = {
pageSize?: number;
maxCachedPages?: number;
};
/**
* Small paged reader for repeated random access against a file handle.
*
* Pages are cached in insertion order and the oldest page is evicted when the
* cache grows past `maxCachedPages`.
*/
export declare class PagedReader {
private readonly pageSize;
private readonly maxCachedPages;
private readonly cache;
private readonly handle;
constructor(handle: FileHandle, options?: PagedReaderOptions);
read(offset: number, length: number): Promise<Buffer>;
readByte(offset: number): Promise<number | undefined>;
private readPage;
}
//# sourceMappingURL=paged-reader.d.ts.map