genomic-reader
Version:
A Typescript library for reading BigWig, BigBed, 2bit, and Bam files. Capable of streaming. For use in the browser or on Node.js.
21 lines (20 loc) • 1.29 kB
TypeScript
/// <reference types="node" />
import { DataLoader, BufferedDataLoader } from "../loader/DataLoader";
import { HeaderData } from "./BigWigHeaderReader";
import { Readable } from "stream";
export interface SequenceRecord {
dnaSize: number;
nBlockCount: number;
nBlockStarts: number[];
nBlockSizes: number[];
maskBlockCount: number;
maskBlockStarts: number[];
maskBlockSizes: number[];
reserved: number;
offset: number;
}
export declare function loadTwoBitHeaderData(dataLoaderR: DataLoader, littleEndian: boolean): Promise<HeaderData>;
export declare function loadSequenceRecord(dataLoaderR: DataLoader, header: HeaderData, sequence: string): Promise<SequenceRecord>;
export declare function streamSequence(dataLoader: DataLoader, header: HeaderData, sequence: SequenceRecord, start: number, end: number, chunkSize?: number, oneHotEncodedData?: boolean): Promise<Readable>;
export declare function loadOneHotEncodingFromSequence(dataLoader: DataLoader | BufferedDataLoader, header: HeaderData, sequence: SequenceRecord, start: number, end: number): Promise<Array<Array<number>>>;
export declare function loadSequence(dataLoader: DataLoader | BufferedDataLoader, header: HeaderData, sequence: SequenceRecord, start: number, end: number): Promise<string>;