import Chunk from './chunk.ts'; import IndexFile from './indexFile.ts'; import VirtualOffset from './virtualOffset.ts'; import type { Options } from './indexFile.ts'; import type { GenericFilehandle } from 'generic-filehandle2'; export default class CSI extends IndexFile { private maxBinNumber; private depth; private minShift; constructor(args: { filehandle: GenericFilehandle; }); lineCount(refName: string, opts?: Options): Promise; indexCov(): void; parseAuxData(bytes: Uint8Array, offset: number): { refIdToName: string[]; refNameToId: Record; skipLines: number; metaChar: string | undefined; columnNumbers: { ref: number; start: number; end: number; }; format: string; coordinateType: string; }; _parse(opts?: Options): Promise<{ csi: boolean; refCount: number; maxBlockSize: number; firstDataLine: VirtualOffset | undefined; csiVersion: number; indices: { binIndex: Record; stats: { lineCount: number; } | undefined; }[]; depth: number; maxBinNumber: number; maxRefLength: number; refIdToName: string[]; refNameToId: Record; skipLines: number; metaChar: string | undefined; columnNumbers: { ref: number; start: number; end: number; }; format: string; coordinateType: string; } | { csi: boolean; refCount: number; maxBlockSize: number; firstDataLine: VirtualOffset | undefined; csiVersion: number; indices: { binIndex: Record; stats: { lineCount: number; } | undefined; }[]; depth: number; maxBinNumber: number; maxRefLength: number; refIdToName: never[]; refNameToId: {}; metaChar: undefined; columnNumbers: { ref: number; start: number; end: number; }; coordinateType: string; format: string; }>; parsePseudoBin(bytes: Uint8Array, offset: number): { lineCount: number; }; blocksForRange(refName: string, min: number, max: number, opts?: Options): Promise; /** * calculate the list of bins that may overlap with region [beg,end) (zero-based half-open) */ reg2bins(beg: number, end: number): (readonly [number, number])[]; }