@gmod/tabix 1.6.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,8 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const abortable_promise_cache_1 = __importDefault(require("@gmod/abortable-promise-cache"));
7
7
  const quick_lru_1 = __importDefault(require("quick-lru"));
8
- const buffer_1 = require("buffer");
9
- const generic_filehandle_1 = require("generic-filehandle");
8
+ const generic_filehandle2_1 = require("generic-filehandle2");
10
9
  const bgzf_filehandle_1 = require("@gmod/bgzf-filehandle");
11
10
  const util_1 = require("./util");
12
11
  const tbi_1 = __importDefault(require("./tbi"));
@@ -15,7 +14,6 @@ function isASCII(str) {
15
14
  // eslint-disable-next-line no-control-regex
16
15
  return /^[\u0000-\u007F]*$/.test(str);
17
16
  }
18
- const decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf8') : undefined;
19
17
  class TabixIndexedFile {
20
18
  /**
21
19
  * @param {object} args
@@ -48,10 +46,10 @@ class TabixIndexedFile {
48
46
  this.filehandle = filehandle;
49
47
  }
50
48
  else if (path) {
51
- this.filehandle = new generic_filehandle_1.LocalFile(path);
49
+ this.filehandle = new generic_filehandle2_1.LocalFile(path);
52
50
  }
53
51
  else if (url) {
54
- this.filehandle = new generic_filehandle_1.RemoteFile(url);
52
+ this.filehandle = new generic_filehandle2_1.RemoteFile(url);
55
53
  }
56
54
  else {
57
55
  throw new TypeError('must provide either filehandle or path');
@@ -70,35 +68,35 @@ class TabixIndexedFile {
70
68
  }
71
69
  else if (tbiPath) {
72
70
  this.index = new tbi_1.default({
73
- filehandle: new generic_filehandle_1.LocalFile(tbiPath),
71
+ filehandle: new generic_filehandle2_1.LocalFile(tbiPath),
74
72
  renameRefSeqs,
75
73
  });
76
74
  }
77
75
  else if (csiPath) {
78
76
  this.index = new csi_1.default({
79
- filehandle: new generic_filehandle_1.LocalFile(csiPath),
77
+ filehandle: new generic_filehandle2_1.LocalFile(csiPath),
80
78
  renameRefSeqs,
81
79
  });
82
80
  }
83
81
  else if (path) {
84
82
  this.index = new tbi_1.default({
85
- filehandle: new generic_filehandle_1.LocalFile(`${path}.tbi`),
83
+ filehandle: new generic_filehandle2_1.LocalFile(`${path}.tbi`),
86
84
  renameRefSeqs,
87
85
  });
88
86
  }
89
87
  else if (csiUrl) {
90
88
  this.index = new csi_1.default({
91
- filehandle: new generic_filehandle_1.RemoteFile(csiUrl),
89
+ filehandle: new generic_filehandle2_1.RemoteFile(csiUrl),
92
90
  });
93
91
  }
94
92
  else if (tbiUrl) {
95
93
  this.index = new tbi_1.default({
96
- filehandle: new generic_filehandle_1.RemoteFile(tbiUrl),
94
+ filehandle: new generic_filehandle2_1.RemoteFile(tbiUrl),
97
95
  });
98
96
  }
99
97
  else if (url) {
100
98
  this.index = new tbi_1.default({
101
- filehandle: new generic_filehandle_1.RemoteFile(`${url}.tbi`),
99
+ filehandle: new generic_filehandle2_1.RemoteFile(`${url}.tbi`),
102
100
  });
103
101
  }
104
102
  else {
@@ -124,7 +122,6 @@ class TabixIndexedFile {
124
122
  * rejected on error
125
123
  */
126
124
  async getLines(refName, s, e, opts) {
127
- var _a, _b;
128
125
  let signal;
129
126
  let options = {};
130
127
  let callback;
@@ -138,8 +135,8 @@ class TabixIndexedFile {
138
135
  }
139
136
  const metadata = await this.index.getMetadata(options);
140
137
  (0, util_1.checkAbortSignal)(signal);
141
- const start = s !== null && s !== void 0 ? s : 0;
142
- const end = e !== null && e !== void 0 ? e : metadata.maxRefLength;
138
+ const start = s ?? 0;
139
+ const end = e ?? metadata.maxRefLength;
143
140
  if (!(start <= end)) {
144
141
  throw new TypeError('invalid start and end coordinates. start must be less than or equal to end');
145
142
  }
@@ -148,17 +145,18 @@ class TabixIndexedFile {
148
145
  }
149
146
  const chunks = await this.index.blocksForRange(refName, start, end, options);
150
147
  (0, util_1.checkAbortSignal)(signal);
148
+ const decoder = new TextDecoder('utf8');
151
149
  // now go through each chunk and parse and filter the lines out of it
152
150
  for (const c of chunks) {
153
151
  const { buffer, cpositions, dpositions } = await this.chunkCache.get(c.toString(), c, signal);
154
152
  (0, util_1.checkAbortSignal)(signal);
155
153
  let blockStart = 0;
156
154
  let pos = 0;
157
- const str = (_a = decoder === null || decoder === void 0 ? void 0 : decoder.decode(buffer)) !== null && _a !== void 0 ? _a : buffer.toString();
158
155
  // fast path, Buffer is just ASCII chars and not gigantor, can be
159
156
  // converted to string and processed directly. if it is not ASCII or
160
157
  // gigantic (chrome max str len is 512Mb), we have to decode line by line
161
- const strIsASCII = buffer.length < 500000000 && isASCII(str);
158
+ const str = decoder.decode(buffer);
159
+ const strIsASCII = isASCII(str);
162
160
  while (blockStart < str.length) {
163
161
  let line;
164
162
  let n;
@@ -170,12 +168,12 @@ class TabixIndexedFile {
170
168
  line = str.slice(blockStart, n);
171
169
  }
172
170
  else {
173
- n = buffer.indexOf('\n', blockStart);
171
+ n = buffer.indexOf('\n'.charCodeAt(0), blockStart);
174
172
  if (n === -1) {
175
173
  break;
176
174
  }
177
175
  const b = buffer.slice(blockStart, n);
178
- line = (_b = decoder === null || decoder === void 0 ? void 0 : decoder.decode(b)) !== null && _b !== void 0 ? _b : b.toString();
176
+ line = decoder.decode(b);
179
177
  }
180
178
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
181
179
  if (dpositions) {
@@ -222,10 +220,10 @@ class TabixIndexedFile {
222
220
  async getHeaderBuffer(opts = {}) {
223
221
  const { firstDataLine, metaChar, maxBlockSize } = await this.getMetadata(opts);
224
222
  (0, util_1.checkAbortSignal)(opts.signal);
225
- const maxFetch = ((firstDataLine === null || firstDataLine === void 0 ? void 0 : firstDataLine.blockPosition) || 0) + maxBlockSize;
226
- // TODO: what if we don't have a firstDataLine, and the header
227
- // actually takes up more than one block? this case is not covered here
228
- const buf = await this._readRegion(0, maxFetch, opts);
223
+ const maxFetch = (firstDataLine?.blockPosition || 0) + maxBlockSize;
224
+ // TODO: what if we don't have a firstDataLine, and the header actually
225
+ // takes up more than one block? this case is not covered here
226
+ const buf = await this.filehandle.read(maxFetch, 0, opts);
229
227
  const bytes = await (0, bgzf_filehandle_1.unzip)(buf);
230
228
  // trim off lines after the last non-meta line
231
229
  if (metaChar) {
@@ -252,8 +250,9 @@ class TabixIndexedFile {
252
250
  * @returns {Promise} for a string
253
251
  */
254
252
  async getHeader(opts = {}) {
253
+ const decoder = new TextDecoder('utf8');
255
254
  const bytes = await this.getHeaderBuffer(opts);
256
- return bytes.toString('utf8');
255
+ return decoder.decode(bytes);
257
256
  }
258
257
  /**
259
258
  * get an array of reference sequence names, in the order in which they occur
@@ -403,20 +402,13 @@ class TabixIndexedFile {
403
402
  async lineCount(refName, opts = {}) {
404
403
  return this.index.lineCount(refName, opts);
405
404
  }
406
- async _readRegion(pos, size, opts = {}) {
407
- const b = buffer_1.Buffer.alloc(size);
408
- const { bytesRead, buffer } = await this.filehandle.read(b, 0, size, pos, opts);
409
- return buffer.subarray(0, bytesRead);
410
- }
411
405
  /**
412
406
  * read and uncompress the data in a chunk (composed of one or more
413
407
  * contiguous bgzip blocks) of the file
414
408
  */
415
409
  async readChunk(c, opts = {}) {
416
- // fetch the uncompressed data, uncompress carefully a block at a time, and
417
- // stop when done
418
- const data = await this._readRegion(c.minv.blockPosition, c.fetchedSize(), opts);
419
- return (0, bgzf_filehandle_1.unzipChunkSlice)(data, c);
410
+ const ret = await this.filehandle.read(c.fetchedSize(), c.minv.blockPosition, opts);
411
+ return (0, bgzf_filehandle_1.unzipChunkSlice)(ret, c);
420
412
  }
421
413
  }
422
414
  exports.default = TabixIndexedFile;
@@ -1 +1 @@
1
- {"version":3,"file":"tabixIndexedFile.js","sourceRoot":"","sources":["../src/tabixIndexedFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tabixIndexedFile.js","sourceRoot":"","sources":["../src/tabixIndexedFile.ts"],"names":[],"mappings":"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"}
package/dist/tbi.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import { Buffer } from 'buffer';
2
1
  import VirtualOffset from './virtualOffset';
3
2
  import Chunk from './chunk';
4
3
  import IndexFile, { Options } from './indexFile';
@@ -28,10 +27,10 @@ export default class TabixIndex extends IndexFile {
28
27
  refNameToId: Record<string, number>;
29
28
  maxBlockSize: number;
30
29
  }>;
31
- parsePseudoBin(bytes: Buffer, offset: number): {
30
+ parsePseudoBin(bytes: Uint8Array, offset: number): {
32
31
  lineCount: number;
33
32
  };
34
- _parseNameBytes(namesBytes: Buffer): {
33
+ _parseNameBytes(namesBytes: Uint8Array): {
35
34
  refNameToId: Record<string, number>;
36
35
  refIdToName: string[];
37
36
  };
package/dist/tbi.js CHANGED
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
@@ -61,25 +71,21 @@ class TabixIndex extends indexFile_1.default {
61
71
  if (!idx) {
62
72
  return -1;
63
73
  }
64
- const { stats } = indexData.indices[refId];
65
- if (stats) {
66
- return stats.lineCount;
67
- }
68
- return -1;
74
+ return indexData.indices[refId].stats?.lineCount ?? -1;
69
75
  }
70
76
  // fetch and parse the index
71
77
  async _parse(opts = {}) {
72
78
  const buf = await this.filehandle.readFile(opts);
73
79
  const bytes = await (0, bgzf_filehandle_1.unzip)(buf);
74
80
  (0, util_1.checkAbortSignal)(opts.signal);
75
- // check TBI magic numbers
76
- if (bytes.readUInt32LE(0) !== TBI_MAGIC /* "TBI\1" */) {
81
+ const dataView = new DataView(bytes.buffer);
82
+ const magic = dataView.getUint32(0, true);
83
+ if (magic !== TBI_MAGIC /* "TBI\1" */) {
77
84
  throw new Error('Not a TBI file');
78
- // TODO: do we need to support big-endian TBI files?
79
85
  }
80
86
  // number of reference sequences in the index
81
- const refCount = bytes.readInt32LE(4);
82
- const formatFlags = bytes.readInt32LE(8);
87
+ const refCount = dataView.getUint32(4, true);
88
+ const formatFlags = dataView.getUint32(8, true);
83
89
  const coordinateType = formatFlags & 0x10000 ? 'zero-based-half-open' : '1-based-closed';
84
90
  const formatOpts = {
85
91
  0: 'generic',
@@ -91,36 +97,36 @@ class TabixIndex extends indexFile_1.default {
91
97
  throw new Error(`invalid Tabix preset format flags ${formatFlags}`);
92
98
  }
93
99
  const columnNumbers = {
94
- ref: bytes.readInt32LE(12),
95
- start: bytes.readInt32LE(16),
96
- end: bytes.readInt32LE(20),
100
+ ref: dataView.getInt32(12, true),
101
+ start: dataView.getInt32(16, true),
102
+ end: dataView.getInt32(20, true),
97
103
  };
98
- const metaValue = bytes.readInt32LE(24);
104
+ const metaValue = dataView.getInt32(24, true);
99
105
  const depth = 5;
100
106
  const maxBinNumber = ((1 << ((depth + 1) * 3)) - 1) / 7;
101
107
  const maxRefLength = 2 ** (14 + depth * 3);
102
108
  const metaChar = metaValue ? String.fromCharCode(metaValue) : null;
103
- const skipLines = bytes.readInt32LE(28);
109
+ const skipLines = dataView.getInt32(28, true);
104
110
  // read sequence dictionary
105
- const nameSectionLength = bytes.readInt32LE(32);
111
+ const nameSectionLength = dataView.getInt32(32, true);
106
112
  const { refNameToId, refIdToName } = this._parseNameBytes(bytes.slice(36, 36 + nameSectionLength));
107
113
  // read the indexes for each reference sequence
108
114
  let currOffset = 36 + nameSectionLength;
109
115
  let firstDataLine;
110
116
  const indices = new Array(refCount).fill(0).map(() => {
111
117
  // the binning index
112
- const binCount = bytes.readInt32LE(currOffset);
118
+ const binCount = dataView.getInt32(currOffset, true);
113
119
  currOffset += 4;
114
120
  const binIndex = {};
115
121
  let stats;
116
122
  for (let j = 0; j < binCount; j += 1) {
117
- const bin = bytes.readUInt32LE(currOffset);
123
+ const bin = dataView.getUint32(currOffset, true);
118
124
  currOffset += 4;
119
125
  if (bin > maxBinNumber + 1) {
120
126
  throw new Error('tabix index contains too many bins, please use a CSI index');
121
127
  }
122
128
  else if (bin === maxBinNumber + 1) {
123
- const chunkCount = bytes.readInt32LE(currOffset);
129
+ const chunkCount = dataView.getInt32(currOffset, true);
124
130
  currOffset += 4;
125
131
  if (chunkCount === 2) {
126
132
  stats = this.parsePseudoBin(bytes, currOffset);
@@ -128,7 +134,7 @@ class TabixIndex extends indexFile_1.default {
128
134
  currOffset += 16 * chunkCount;
129
135
  }
130
136
  else {
131
- const chunkCount = bytes.readInt32LE(currOffset);
137
+ const chunkCount = dataView.getInt32(currOffset, true);
132
138
  currOffset += 4;
133
139
  const chunks = new Array(chunkCount);
134
140
  for (let k = 0; k < chunkCount; k += 1) {
@@ -142,7 +148,7 @@ class TabixIndex extends indexFile_1.default {
142
148
  }
143
149
  }
144
150
  // the linear index
145
- const linearCount = bytes.readInt32LE(currOffset);
151
+ const linearCount = dataView.getInt32(currOffset, true);
146
152
  currOffset += 4;
147
153
  const linearIndex = new Array(linearCount);
148
154
  for (let k = 0; k < linearCount; k += 1) {
@@ -150,7 +156,11 @@ class TabixIndex extends indexFile_1.default {
150
156
  currOffset += 8;
151
157
  firstDataLine = this._findFirstData(firstDataLine, linearIndex[k]);
152
158
  }
153
- return { binIndex, linearIndex, stats };
159
+ return {
160
+ binIndex,
161
+ linearIndex,
162
+ stats,
163
+ };
154
164
  });
155
165
  return {
156
166
  indices,
@@ -168,7 +178,7 @@ class TabixIndex extends indexFile_1.default {
168
178
  };
169
179
  }
170
180
  parsePseudoBin(bytes, offset) {
171
- const lineCount = (0, util_1.longToNumber)(long_1.default.fromBytesLE(bytes.slice(offset + 16, offset + 24), true));
181
+ const lineCount = (0, util_1.longToNumber)(long_1.default.fromBytesLE(bytes.subarray(offset + 16, offset + 24), true));
172
182
  return { lineCount };
173
183
  }
174
184
  _parseNameBytes(namesBytes) {
@@ -176,11 +186,11 @@ class TabixIndex extends indexFile_1.default {
176
186
  let currNameStart = 0;
177
187
  const refIdToName = [];
178
188
  const refNameToId = {};
189
+ const decoder = new TextDecoder('utf8');
179
190
  for (let i = 0; i < namesBytes.length; i += 1) {
180
191
  if (!namesBytes[i]) {
181
192
  if (currNameStart < i) {
182
- let refName = namesBytes.toString('utf8', currNameStart, i);
183
- refName = this.renameRefSeq(refName);
193
+ const refName = this.renameRefSeq(decoder.decode(namesBytes.subarray(currNameStart, i)));
184
194
  refIdToName[currRefId] = refName;
185
195
  refNameToId[refName] = currRefId;
186
196
  }
@@ -188,7 +198,10 @@ class TabixIndex extends indexFile_1.default {
188
198
  currRefId += 1;
189
199
  }
190
200
  }
191
- return { refNameToId, refIdToName };
201
+ return {
202
+ refNameToId,
203
+ refIdToName,
204
+ };
192
205
  }
193
206
  async blocksForRange(refName, min, max, opts = {}) {
194
207
  if (min < 0) {
package/dist/tbi.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tbi.js","sourceRoot":"","sources":["../src/tbi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tbi.js","sourceRoot":"","sources":["../src/tbi.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { Buffer } from 'buffer';
2
1
  export default class VirtualOffset {
3
2
  blockPosition: number;
4
3
  dataPosition: number;
@@ -6,4 +5,4 @@ export default class VirtualOffset {
6
5
  toString(): string;
7
6
  compareTo(b: VirtualOffset): number;
8
7
  }
9
- export declare function fromBytes(bytes: Buffer, offset?: number, bigendian?: boolean): VirtualOffset;
8
+ export declare function fromBytes(bytes: Uint8Array, offset?: number): VirtualOffset;
@@ -14,10 +14,7 @@ class VirtualOffset {
14
14
  }
15
15
  }
16
16
  exports.default = VirtualOffset;
17
- function fromBytes(bytes, offset = 0, bigendian = false) {
18
- if (bigendian) {
19
- throw new Error('big-endian virtual file offsets not implemented');
20
- }
17
+ function fromBytes(bytes, offset = 0) {
21
18
  return new VirtualOffset(bytes[offset + 7] * 0x10000000000 +
22
19
  bytes[offset + 6] * 0x100000000 +
23
20
  bytes[offset + 5] * 0x1000000 +
@@ -1 +1 @@
1
- {"version":3,"file":"virtualOffset.js","sourceRoot":"","sources":["../src/virtualOffset.ts"],"names":[],"mappings":";;AAmBA,8BAcC;AAhCD,MAAqB,aAAa;IAGhC,YAAY,aAAqB,EAAE,YAAoB;QACrD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA,CAAC,wCAAwC;QAC3E,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA,CAAC,sCAAsC;IACzE,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,EAAE,CAAA;IACrD,CAAC;IAED,SAAS,CAAC,CAAgB;QACxB,OAAO,CACL,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAC3E,CAAA;IACH,CAAC;CACF;AAjBD,gCAiBC;AACD,SAAgB,SAAS,CAAC,KAAa,EAAE,MAAM,GAAG,CAAC,EAAE,SAAS,GAAG,KAAK;IACpE,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IACpE,CAAC;IAED,OAAO,IAAI,aAAa,CACtB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,aAAa;QAChC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,WAAW;QAChC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,SAAS;QAC9B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,OAAO;QAC5B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,KAAK;QAC1B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,EACpB,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAE,CAC3C,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"virtualOffset.js","sourceRoot":"","sources":["../src/virtualOffset.ts"],"names":[],"mappings":";;AAkBA,8BAUC;AA5BD,MAAqB,aAAa;IAGhC,YAAY,aAAqB,EAAE,YAAoB;QACrD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA,CAAC,wCAAwC;QAC3E,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA,CAAC,sCAAsC;IACzE,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,EAAE,CAAA;IACrD,CAAC;IAED,SAAS,CAAC,CAAgB;QACxB,OAAO,CACL,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAC3E,CAAA;IACH,CAAC;CACF;AAjBD,gCAiBC;AACD,SAAgB,SAAS,CAAC,KAAiB,EAAE,MAAM,GAAG,CAAC;IACrD,OAAO,IAAI,aAAa,CACtB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,aAAa;QAChC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,WAAW;QAChC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,SAAS;QAC9B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,OAAO;QAC5B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,KAAK;QAC1B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,EACpB,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAE,CAC3C,CAAA;AACH,CAAC"}
package/esm/csi.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import { Buffer } from 'buffer';
2
1
  import VirtualOffset from './virtualOffset';
3
2
  import Chunk from './chunk';
4
3
  import IndexFile, { Options } from './indexFile';
@@ -9,7 +8,7 @@ export default class CSI extends IndexFile {
9
8
  constructor(args: any);
10
9
  lineCount(refName: string, opts?: Options): Promise<number>;
11
10
  indexCov(): void;
12
- parseAuxData(bytes: Buffer, offset: number): {
11
+ parseAuxData(bytes: Uint8Array, offset: number): {
13
12
  refIdToName: string[];
14
13
  refNameToId: Record<string, number>;
15
14
  skipLines: number;
@@ -22,7 +21,7 @@ export default class CSI extends IndexFile {
22
21
  format: string;
23
22
  coordinateType: string;
24
23
  };
25
- _parseNameBytes(namesBytes: Buffer): {
24
+ _parseNameBytes(namesBytes: Uint8Array): {
26
25
  refNameToId: Record<string, number>;
27
26
  refIdToName: string[];
28
27
  };
@@ -78,7 +77,7 @@ export default class CSI extends IndexFile {
78
77
  coordinateType: string;
79
78
  format: string;
80
79
  }>;
81
- parsePseudoBin(bytes: Buffer, offset: number): {
80
+ parsePseudoBin(bytes: Uint8Array, offset: number): {
82
81
  lineCount: number;
83
82
  };
84
83
  blocksForRange(refName: string, min: number, max: number, opts?: Options): Promise<Chunk[]>;