@gmod/bbi
Version:
Parser for BigWig/BigBed files
48 lines (47 loc) • 1.61 kB
TypeScript
import type { Feature } from './types.ts';
import type { BigWigFeatureArrays, SummaryFeatureArrays } from './unzip.ts';
import type { GenericFilehandle } from 'generic-filehandle2';
import type { Observer } from 'rxjs';
interface CoordRequest {
chrId: number;
start: number;
end: number;
}
interface Options {
signal?: AbortSignal;
request?: CoordRequest;
}
/**
* View into a subset of the data in a BigWig file.
*
* Adapted by Robert Buels and Colin Diesh from bigwig.js in the Dalliance
* Genome Explorer by Thomas Down.
*/
export declare class BlockView {
private bbi;
private refsByName;
private rTreeOffset;
private uncompressBufSize;
private blockType;
private rTreePromise?;
private featureCache;
constructor(bbi: GenericFilehandle, refsByName: Record<string, number>, rTreeOffset: number, uncompressBufSize: number, blockType: string);
readWigData(chrName: string, start: number, end: number, observer: Observer<Feature[]>, opts?: Options): Promise<void>;
private parseSummaryBlock;
private parseBigBedBlock;
private parseBigWigBlock;
private parseBigWigBlockAsArrays;
readFeatures(observer: Observer<Feature[]>, blocks: {
offset: number;
length: number;
}[], opts?: Options): Promise<void>;
readBigWigFeaturesAsArrays(blocks: {
offset: number;
length: number;
}[], opts?: Options): Promise<BigWigFeatureArrays>;
readSummaryFeaturesAsArrays(blocks: {
offset: number;
length: number;
}[], opts?: Options): Promise<SummaryFeatureArrays>;
}
export {};