UNPKG

@gmod/bam

Version:

Parser for BAM and BAM index (bai) files

59 lines (58 loc) 1.91 kB
import Chunk from './chunk.ts'; import IndexFile from './indexFile.ts'; import { VirtualOffset } from './virtualOffset.ts'; import type { BaseOpts } from './util.ts'; export default class CSI extends IndexFile { private maxBinNumber; private depth; private minShift; indexCov(): Promise<never[]>; parseAuxData(bytes: Uint8Array, offset: number): { refNameToId: Record<string, number>; refIdToName: string[]; columnNumbers: { ref: number; start: number; end: number; }; coordinateType: string; metaValue: number; metaChar: string; skipLines: number; format: string; formatFlags: number; }; _parse(opts: BaseOpts): Promise<{ refNameToId?: Record<string, number> | undefined; refIdToName?: string[] | undefined; columnNumbers?: { ref: number; start: number; end: number; } | undefined; coordinateType?: string | undefined; metaValue?: number | undefined; metaChar?: string | undefined; skipLines?: number | undefined; format?: string | undefined; formatFlags?: number | undefined; csiVersion: number; firstDataLine: VirtualOffset | undefined; indices: (refId: number) => { binIndex: Record<number, Chunk[]>; stats: { lineCount: number; } | undefined; } | undefined; refCount: number; csi: boolean; maxBlockSize: number; }>; protected getLowestChunk(): VirtualOffset; /** * calculate the list of bins that may overlap with region [beg,end) * (zero-based half-open). Follows the reference implementation in hts-specs * CSIv1.tex. */ protected reg2bins(beg: number, end: number): (readonly [number, number])[]; }