bireader 3.1.5 → 3.1.7

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.
@@ -1,1383 +0,0 @@
1
- /// <reference types="node" />
2
- import { BigValue, endian, hexdumpOptions, stringOptions } from '../common.js';
3
- /**
4
- * For file system in Node
5
- */
6
- type FileDescriptor = number;
7
- /**
8
- * file system read modes
9
- */
10
- type fsMode = "w+" | "r";
11
- export declare class BiBaseStreamer {
12
- /**
13
- * Endianness of default read.
14
- *
15
- * @type {endian}
16
- */
17
- endian: endian;
18
- /**
19
- * Current read byte location.
20
- */
21
- offset: number;
22
- /**
23
- * Current read byte's bit location.
24
- */
25
- bitoffset: number;
26
- /**
27
- * Size in bytes of the current file.
28
- */
29
- size: number;
30
- /**
31
- * Size in bits of the current file.
32
- */
33
- sizeB: number;
34
- /**
35
- * Allows the file to extend reading or writing outside of current size
36
- */
37
- strict: boolean;
38
- /**
39
- * Console log a hexdump on error.
40
- */
41
- errorDump: boolean;
42
- /**
43
- * Current buffer chunk.
44
- *
45
- * @type {Buffer|null}
46
- */
47
- data: Buffer | null;
48
- /**
49
- * When the data buffer needs to be extended while strict mode is ``false``, this will be the amount it extends.
50
- *
51
- * Otherwise it extends just the amount of the next written value.
52
- *
53
- * This can greatly speed up data writes when large files are being written.
54
- *
55
- * NOTE: Using ``BiWriter.get`` or ``BiWriter.return`` will now remove all data after the current write position. Use ``BiWriter.data`` to get the full buffer instead.
56
- */
57
- extendBufferSize: number;
58
- fd: FileDescriptor | null;
59
- filePath: string;
60
- fsMode: fsMode;
61
- /**
62
- * The settings that used when using the .str getter / setter
63
- */
64
- private strDefaults;
65
- maxFileSize: number | null;
66
- constructor(filePath: string, readwrite: boolean);
67
- /**
68
- * Settings for when using .str
69
- *
70
- * @param {stringOptions} settings options to use with .str
71
- */
72
- set strSettings(settings: stringOptions);
73
- /**
74
- * Enabling write mode in reader.
75
- *
76
- * @param {boolean} writeMode - Enabling write mode in reader.
77
- */
78
- writeMode(writeMode: boolean): void;
79
- /**
80
- * Opens the file. Must be run before reading or writing.
81
- *
82
- * @returns {number} file size
83
- */
84
- open(): number;
85
- /**
86
- * Internal update size
87
- */
88
- updateSize(): void;
89
- /**
90
- * Closes the file.
91
- *
92
- * @returns {void}
93
- */
94
- close(): void;
95
- /**
96
- * Internal reader
97
- *
98
- * @param start - likely this.offset
99
- * @param length
100
- * @param consume
101
- * @returns
102
- */
103
- read(start: number, length: number, consume?: boolean): Buffer;
104
- /**
105
- * Internal writer
106
- *
107
- * @param start - likely this.offset
108
- * @param data
109
- * @param consume
110
- * @returns {number}
111
- */
112
- write(start: number, data: Buffer, consume?: boolean): number;
113
- /**
114
- * internal write commit
115
- *
116
- * @param consume
117
- * @returns {number}
118
- */
119
- commit(consume?: boolean): number;
120
- /**
121
- * Renames the file you are working on.
122
- *
123
- * Must be full file path and file name.
124
- *
125
- * Keeps write / read position.
126
- *
127
- * Note: This is permanent and can't be undone.
128
- *
129
- * @param {string} newFilePath - New full file path and name.
130
- */
131
- renameFile(newFilePath: string): void;
132
- /**
133
- * Deletes the working file.
134
- *
135
- * Note: This is permanentand can't be undone.
136
- *
137
- * It doesn't send the file to the recycling bin for recovery.
138
- */
139
- deleteFile(): void;
140
- /**
141
- * internal extend
142
- *
143
- *
144
- * @param length amount needed
145
- * @returns {void}
146
- */
147
- extendArray(length: number): void;
148
- isBufferOrUint8Array(obj: Buffer | Uint8Array): boolean;
149
- /**
150
- *
151
- * Change endian, defaults to little.
152
- *
153
- * Can be changed at any time, doesn't loose position.
154
- *
155
- * @param {endian} endian - endianness ``big`` or ``little``
156
- */
157
- endianness(endian: endian): void;
158
- /**
159
- * Sets endian to big.
160
- */
161
- bigEndian(): void;
162
- /**
163
- * Sets endian to big.
164
- */
165
- big(): void;
166
- /**
167
- * Sets endian to big.
168
- */
169
- be(): void;
170
- /**
171
- * Sets endian to little.
172
- */
173
- littleEndian(): void;
174
- /**
175
- * Sets endian to little.
176
- */
177
- little(): void;
178
- /**
179
- * Sets endian to little.
180
- */
181
- le(): void;
182
- /**
183
- * Size in bytes of the current buffer.
184
- *
185
- * @returns {number} size
186
- */
187
- get length(): number;
188
- /**
189
- * Size in bytes of the current buffer.
190
- *
191
- * @returns {number} size
192
- */
193
- get len(): number;
194
- /**
195
- * Size in bytes of the current buffer.
196
- *
197
- * @returns {number} size
198
- */
199
- get FileSize(): number;
200
- /**
201
- * Size in bits of the current buffer.
202
- *
203
- * @returns {number} size
204
- */
205
- get lengthB(): number;
206
- /**
207
- * Size in bits of the current buffer.
208
- *
209
- * @returns {number} size
210
- */
211
- get FileSizeB(): number;
212
- /**
213
- * Size in bits of the current buffer.
214
- *
215
- * @returns {number} size
216
- */
217
- get lenb(): number;
218
- /**
219
- * Get the current byte position.
220
- *
221
- * @return {number} current byte position
222
- */
223
- get tell(): number;
224
- /**
225
- * Get the current byte position.
226
- *
227
- * @return {number} current byte position
228
- */
229
- get FTell(): number;
230
- /**
231
- * Get the current byte position.
232
- *
233
- * @return {number} current byte position
234
- */
235
- get getOffset(): number;
236
- /**
237
- * Get the current byte position;
238
- *
239
- * @return {number} current byte position
240
- */
241
- get saveOffset(): number;
242
- /**
243
- * Get the current byte position;
244
- *
245
- * @return {number} current byte position
246
- */
247
- get off(): number;
248
- /**
249
- * Get the current bit position (0-7).
250
- *
251
- * @return {number} current bit position
252
- */
253
- get getOffsetBit(): number;
254
- /**
255
- * Get the current bit position (0-7).
256
- *
257
- * @return {number} current bit position
258
- */
259
- get tellB(): number;
260
- /**
261
- * Get the current bit position (0-7).
262
- *
263
- * @return {number} current bit position
264
- */
265
- get FTellB(): number;
266
- /**
267
- * Get the current bit position (0-7).
268
- *
269
- * @return {number} current bit position
270
- */
271
- get offb(): number;
272
- /**
273
- * Get the current absolute bit position (from start of data).
274
- *
275
- * @return {number} current absolute bit position
276
- */
277
- get getOffsetAbsBit(): number;
278
- /**
279
- * Get the current absolute bit position (from start of data).
280
- *
281
- * @return {number} current bit position
282
- */
283
- get saveOffsetAbsBit(): number;
284
- /**
285
- * Get the current absolute bit position (from start of data).
286
- *
287
- * @return {number} current absolute bit position
288
- */
289
- get tellAbsB(): number;
290
- /**
291
- * Get the current absolute bit position (from start of data).
292
- *
293
- * @return {number} current absolute bit position
294
- */
295
- get saveOffsetBit(): number;
296
- /**
297
- * Get the current absolute bit position (from start of data).
298
- *
299
- * @return {number} current absolute bit position
300
- */
301
- get offab(): number;
302
- /**
303
- * Size in bytes of current read position to the end
304
- *
305
- * @returns {number} size
306
- */
307
- get remain(): number;
308
- /**
309
- * Size in bytes of current read position to the end
310
- *
311
- * @returns {number} size
312
- */
313
- get FEoF(): number;
314
- /**
315
- * Size in bits of current read position to the end
316
- *
317
- * @returns {number} size
318
- */
319
- get remainB(): number;
320
- /**
321
- * Size in bits of current read position to the end
322
- *
323
- * @returns {number} size
324
- */
325
- get FEoFB(): number;
326
- /**
327
- * Row line of the file (16 bytes per row).
328
- *
329
- * @returns {number} size
330
- */
331
- get getLine(): number;
332
- /**
333
- * Row line of the file (16 bytes per row).
334
- *
335
- * @returns {number} size
336
- */
337
- get row(): number;
338
- /**
339
- * Returns current data.
340
- *
341
- * Note: Will remove all data after current position if ``extendBufferSize`` was set.
342
- *
343
- * Use ``.data`` instead if you want the full buffer data.
344
- *
345
- * @returns {Buffer|Uint8Array} ``Buffer``
346
- */
347
- get get(): Buffer;
348
- /**
349
- * Returns current data.
350
- *
351
- * Note: Will remove all data after current position if ``extendBufferSize`` was set.
352
- *
353
- * Use ``.data`` instead if you want the full buffer data.
354
- *
355
- * @returns {Buffer} ``Buffer``
356
- */
357
- get return(): Buffer;
358
- /**
359
- * Creates hex dump string. Will console log or return string if set in options.
360
- *
361
- * @param {object} options
362
- * @param {hexdumpOptions?} options - hex dump options
363
- * @param {number?} options.length - number of bytes to log, default ``192`` or end of data
364
- * @param {number?} options.startByte - byte to start dump (default ``0``)
365
- * @param {boolean?} options.supressUnicode - Supress unicode character preview for even columns.
366
- * @param {boolean?} options.returnString - Returns the hex dump string instead of logging it.
367
- */
368
- hexdump(options?: hexdumpOptions): void | string;
369
- /**
370
- * Turn hexdump on error off (default on).
371
- */
372
- errorDumpOff(): void;
373
- /**
374
- * Turn hexdump on error on (default on).
375
- */
376
- errorDumpOn(): void;
377
- /**
378
- * Disallows extending data if position is outside of max size.
379
- */
380
- restrict(): void;
381
- /**
382
- * Allows extending data if position is outside of max size.
383
- */
384
- unrestrict(): void;
385
- /**
386
- * removes data.
387
- */
388
- end(): void;
389
- /**
390
- * removes data.
391
- */
392
- done(): void;
393
- /**
394
- * removes data.
395
- */
396
- finished(): void;
397
- /**
398
- * Searches for byte position of string from current read position.
399
- *
400
- * Returns -1 if not found.
401
- *
402
- * Does not change current read position.
403
- *
404
- * @param {string} string - String to search for.
405
- */
406
- findString(string: string): number;
407
- /**
408
- * Searches for byte value (can be signed or unsigned) position from current read position.
409
- *
410
- * Returns -1 if not found.
411
- *
412
- * Does not change current read position.
413
- *
414
- * @param {number} value - Number to search for.
415
- * @param {boolean} unsigned - If the number is unsigned (default true)
416
- * @param {endian} endian - endianness of value (default set endian).
417
- */
418
- findByte(value: number, unsigned?: boolean, endian?: endian): number;
419
- /**
420
- * Searches for short value (can be signed or unsigned) position from current read position.
421
- *
422
- * Returns -1 if not found.
423
- *
424
- * Does not change current read position.
425
- *
426
- * @param {number} value - Number to search for.
427
- * @param {boolean} unsigned - If the number is unsigned (default true)
428
- * @param {endian} endian - endianness of value (default set endian).
429
- */
430
- findShort(value: number, unsigned?: boolean, endian?: endian): number;
431
- /**
432
- * Searches for integer value (can be signed or unsigned) position from current read position.
433
- *
434
- * Returns -1 if not found.
435
- *
436
- * Does not change current read position.
437
- *
438
- * @param {number} value - Number to search for.
439
- * @param {boolean} unsigned - If the number is unsigned (default true)
440
- * @param {endian} endian - endianness of value (default set endian).
441
- */
442
- findInt(value: number, unsigned?: boolean, endian?: endian): number;
443
- /**
444
- * Searches for 64 bit value (can be signed or unsigned) position from current read position.
445
- *
446
- * Returns -1 if not found.
447
- *
448
- * Does not change current read position.
449
- *
450
- * @param {BigValue} value - Number to search for.
451
- * @param {boolean} unsigned - If the number is unsigned (default true)
452
- * @param {endian} endian - endianness of value (default set endian).
453
- */
454
- findInt64(value: BigValue, unsigned?: boolean, endian?: endian): number;
455
- /**
456
- * Searches for half float value position from current read position.
457
- *
458
- * Returns -1 if not found.
459
- *
460
- * Does not change current read position.
461
- *
462
- * @param {number} value - Number to search for.
463
- * @param {endian} endian - endianness of value (default set endian).
464
- */
465
- findHalfFloat(value: number, endian?: endian): number;
466
- /**
467
- * Searches for float value position from current read position.
468
- *
469
- * Returns -1 if not found.
470
- *
471
- * Does not change current read position.
472
- *
473
- * @param {number} value - Number to search for.
474
- * @param {endian} endian - endianness of value (default set endian).
475
- */
476
- findFloat(value: number, endian?: endian): number;
477
- /**
478
- * Searches for double float value position from current read position.
479
- *
480
- * Returns -1 if not found.
481
- *
482
- * Does not change current read position.
483
- *
484
- * @param {number} value - Number to search for.
485
- * @param {endian} endian - endianness of value (default set endian).
486
- */
487
- findDoubleFloat(value: number, endian?: endian): number;
488
- /**
489
- * Aligns current byte position.
490
- *
491
- * Note: Will extend array if strict mode is off and outside of max size.
492
- *
493
- * @param {number} number - Byte to align
494
- */
495
- align(number: number): void;
496
- /**
497
- * Reverse aligns current byte position.
498
- *
499
- * Note: Will extend array if strict mode is off and outside of max size.
500
- *
501
- * @param {number} number - Byte to align
502
- */
503
- alignRev(number: number): void;
504
- /**
505
- * Offset current byte or bit position.
506
- *
507
- * Note: Will extend array if strict mode is off and outside of max size.
508
- *
509
- * @param {number} bytes - Bytes to skip
510
- * @param {number} bits - Bits to skip
511
- */
512
- skip(bytes: number, bits?: number): void;
513
- /**
514
- * Offset current byte or bit position.
515
- *
516
- * Note: Will extend array if strict mode is off and outside of max size.
517
- *
518
- * @param {number} bytes - Bytes to skip
519
- * @param {number} bits - Bits to skip
520
- */
521
- jump(bytes: number, bits?: number): void;
522
- /**
523
- * Change position directly to address.
524
- *
525
- * Note: Will extend array if strict mode is off and outside of max size.
526
- *
527
- * @param {number} byte - byte to set to
528
- * @param {number} bit - bit to set to
529
- */
530
- FSeek(byte: number, bit?: number): void;
531
- /**
532
- * Offset current byte or bit position.
533
- *
534
- * Note: Will extend array if strict mode is off and outside of max size.
535
- *
536
- * @param {number} bytes - Bytes to skip
537
- * @param {number} bits - Bits to skip
538
- */
539
- seek(bytes: number, bits?: number): void;
540
- /**
541
- * Change position directly to address.
542
- *
543
- * Note: Will extend array if strict mode is off and outside of max size.
544
- *
545
- * @param {number} byte - byte to set to
546
- * @param {number} bit - bit to set to
547
- */
548
- goto(byte: number, bit?: number): void;
549
- /**
550
- * Change position directly to address.
551
- *
552
- * Note: Will extend array if strict mode is off and outside of max size.
553
- *
554
- * @param {number} byte - byte to set to
555
- * @param {number} bit - bit to set to
556
- */
557
- pointer(byte: number, bit?: number): void;
558
- /**
559
- * Change position directly to address.
560
- *
561
- * Note: Will extend array if strict mode is off and outside of max size.
562
- *
563
- * @param {number} byte - byte to set to
564
- * @param {number} bit - bit to set to
565
- */
566
- warp(byte: number, bit?: number): void;
567
- /**
568
- * Set byte and bit position to start of data.
569
- */
570
- rewind(): void;
571
- /**
572
- * Set byte and bit position to start of data.
573
- */
574
- gotoStart(): void;
575
- /**
576
- * Set current byte and bit position to end of data.
577
- */
578
- last(): void;
579
- /**
580
- * Set current byte and bit position to end of data.
581
- */
582
- gotoEnd(): void;
583
- /**
584
- * Set byte and bit position to start of data.
585
- */
586
- EoF(): void;
587
- /**
588
- * Deletes part of data from start to current byte position unless supplied, returns removed.
589
- *
590
- * Note: Errors in strict mode.
591
- *
592
- * @param {number} startOffset - Start location (default 0)
593
- * @param {number} endOffset - End location (default current position)
594
- * @param {boolean} consume - Move position to end of removed data (default false)
595
- * @returns {Buffer} Removed data as ``Buffer``
596
- */
597
- delete(startOffset?: number, endOffset?: number, consume?: boolean): Buffer;
598
- /**
599
- * Deletes part of data from current byte position to end, returns removed.
600
- *
601
- * Note: Errors in strict mode.
602
- *
603
- * @returns {Buffer} Removed data as ``Buffer``
604
- */
605
- clip(): Buffer;
606
- /**
607
- * Deletes part of data from current byte position to end, returns removed.
608
- *
609
- * Note: Errors in strict mode.
610
- *
611
- * @returns {Buffer} Removed data as ``Buffer``
612
- */
613
- trim(): Buffer;
614
- /**
615
- * Deletes part of data from current byte position to supplied length, returns removed.
616
- *
617
- * Note: Errors in strict mode.
618
- *
619
- * @param {number} length - Length of data in bytes to remove
620
- * @param {boolean} consume - Move position to end of removed data (default false)
621
- * @returns {Buffer} Removed data as ``Buffer``
622
- */
623
- crop(length: number, consume?: boolean): Buffer;
624
- /**
625
- * Deletes part of data from current position to supplied length, returns removed.
626
- *
627
- * Note: Only works in strict mode.
628
- *
629
- * @param {number} length - Length of data in bytes to remove
630
- * @param {boolean} consume - Move position to end of removed data (default false)
631
- * @returns {Buffer} Removed data as ``Buffer``
632
- */
633
- drop(length: number, consume?: boolean): Buffer;
634
- /**
635
- * Replaces data in data.
636
- *
637
- * Note: Errors on strict mode.
638
- *
639
- * @param {Buffer|Uint8Array} data - ``Uint8Array`` or ``Buffer`` to replace in data
640
- * @param {boolean} consume - Move current byte position to end of data (default false)
641
- * @param {number} offset - Offset to add it at (defaults to current position)
642
- */
643
- replace(data: Buffer | Uint8Array, consume?: boolean, offset?: number): void;
644
- /**
645
- * Replaces data in data.
646
- *
647
- * Note: Errors on strict mode.
648
- *
649
- * @param {Buffer|Uint8Array} data - ``Uint8Array`` or ``Buffer`` to replace in data
650
- * @param {boolean} consume - Move current byte position to end of data (default false)
651
- * @param {number} offset - Offset to add it at (defaults to current position)
652
- */
653
- overwrite(data: Buffer | Uint8Array, consume?: boolean, offset?: number): void;
654
- /**
655
- * Returns part of data from current byte position to end of data unless supplied.
656
- *
657
- * @param {number} startOffset - Start location (default current position)
658
- * @param {number} endOffset - End location (default end of data)
659
- * @param {boolean} consume - Move position to end of lifted data (default false)
660
- * @param {number} fillValue - Byte value to to fill returned data (does NOT fill unless supplied)
661
- * @returns {Buffer} Selected data as ``Buffer``
662
- */
663
- lift(startOffset?: number, endOffset?: number, consume?: boolean, fillValue?: number): Buffer;
664
- /**
665
- * Returns part of data from current byte position to end of data unless supplied.
666
- *
667
- * @param {number} startOffset - Start location (default current position)
668
- * @param {number} endOffset - End location (default end of data)
669
- * @param {boolean} consume - Move position to end of lifted data (default false)
670
- * @param {number} fillValue - Byte value to to fill returned data (does NOT fill unless supplied)
671
- * @returns {Buffer} Selected data as ``Buffer``
672
- */
673
- fill(startOffset?: number, endOffset?: number, consume?: boolean, fillValue?: number): Buffer;
674
- /**
675
- * Extract data from current position to length supplied.
676
- *
677
- * Note: Does not affect supplied data.
678
- *
679
- * @param {number} length - Length of data in bytes to copy from current offset
680
- * @param {number} consume - Moves offset to end of length
681
- * @returns {Buffer} Selected data as ``Buffer``
682
- */
683
- extract(length: number, consume?: boolean): Buffer;
684
- /**
685
- * Extract data from current position to length supplied.
686
- *
687
- * Note: Does not affect supplied data.
688
- *
689
- * @param {number} length - Length of data in bytes to copy from current offset
690
- * @param {number} consume - Moves offset to end of length
691
- * @returns {Buffer} Selected data as ``Buffer``
692
- */
693
- slice(length: number, consume?: boolean): Buffer;
694
- /**
695
- * Extract data from current position to length supplied.
696
- *
697
- * Note: Does not affect supplied data.
698
- *
699
- * @param {number} length - Length of data in bytes to copy from current offset
700
- * @param {number} consume - Moves offset to end of length
701
- * @returns {Buffer|Uint8Array} Selected data or ``Buffer``
702
- */
703
- wrap(length: number, consume?: boolean): Buffer;
704
- /**
705
- * Inserts data into data.
706
- *
707
- * Note: Errors on strict mode.
708
- *
709
- * @param {Buffer|Uint8Array} data - ``Uint8Array`` or ``Buffer`` to add to data
710
- * @param {boolean} consume - Move current byte position to end of data (default false)
711
- * @param {number} offset - Byte position to add at (defaults to current position)
712
- */
713
- insert(data: Buffer | Uint8Array, consume?: boolean, offset?: number): void;
714
- /**
715
- * Inserts data into data.
716
- *
717
- * Note: Errors on strict mode.
718
- *
719
- * @param {Buffer|Uint8Array} data - ``Uint8Array`` or ``Buffer`` to add to data
720
- * @param {boolean} consume - Move current byte position to end of data (default false)
721
- * @param {number} offset - Byte position to add at (defaults to current position)
722
- */
723
- place(data: Buffer | Uint8Array, consume?: boolean, offset?: number): void;
724
- /**
725
- * Adds data to start of supplied data.
726
- *
727
- * Note: Errors on strict mode.
728
- *
729
- * @param {Buffer|Uint8Array} data - ``Uint8Array`` or ``Buffer`` to add to data
730
- * @param {boolean} consume - Move current write position to end of data (default false)
731
- */
732
- unshift(data: Buffer | Uint8Array, consume?: boolean): void;
733
- /**
734
- * Adds data to start of supplied data.
735
- *
736
- * Note: Errors on strict mode.
737
- *
738
- * @param {Buffer|Uint8Array} data - ``Uint8Array`` or ``Buffer`` to add to data
739
- * @param {boolean} consume - Move current write position to end of data (default false)
740
- */
741
- prepend(data: Buffer | Uint8Array, consume?: boolean): void;
742
- /**
743
- * Adds data to end of supplied data.
744
- *
745
- * Note: Errors on strict mode.
746
- *
747
- * @param {Buffer|Uint8Array} data - ``Uint8Array`` or ``Buffer`` to add to data
748
- * @param {boolean} consume - Move current write position to end of data (default false)
749
- */
750
- push(data: Buffer | Uint8Array, consume?: boolean): void;
751
- /**
752
- * Adds data to end of supplied data.
753
- *
754
- * Note: Errors on strict mode.
755
- *
756
- * @param {Buffer|Uint8Array} data - ``Uint8Array`` or ``Buffer`` to add to data
757
- * @param {boolean} consume - Move current write position to end of data (default false)
758
- */
759
- append(data: Buffer | Uint8Array, consume?: boolean): void;
760
- /**
761
- * XOR data.
762
- *
763
- * @param {number|string|Uint8Array|Buffer} xorKey - Value, string or array to XOR
764
- * @param {number} startOffset - Start location (default current byte position)
765
- * @param {number} endOffset - End location (default end of data)
766
- * @param {boolean} consume - Move current position to end of data (default false)
767
- */
768
- xor(xorKey: number | string | Uint8Array | Buffer, startOffset?: number, endOffset?: number, consume?: boolean): void;
769
- /**
770
- * XOR data.
771
- *
772
- * @param {number|string|Uint8Array|Buffer} xorKey - Value, string or array to XOR
773
- * @param {number} length - Length in bytes to XOR from curent position (default 1 byte for value, length of string or array for Uint8Array or Buffer)
774
- * @param {boolean} consume - Move current position to end of data (default false)
775
- */
776
- xorThis(xorKey: number | string | Uint8Array | Buffer, length?: number, consume?: boolean): void;
777
- /**
778
- * OR data
779
- *
780
- * @param {number|string|Uint8Array|Buffer} orKey - Value, string or array to OR
781
- * @param {number} startOffset - Start location (default current byte position)
782
- * @param {number} endOffset - End location (default end of data)
783
- * @param {boolean} consume - Move current position to end of data (default false)
784
- */
785
- or(orKey: number | string | Uint8Array | Buffer, startOffset?: number, endOffset?: number, consume?: boolean): void;
786
- /**
787
- * OR data.
788
- *
789
- * @param {number|string|Uint8Array|Buffer} orKey - Value, string or array to OR
790
- * @param {number} length - Length in bytes to OR from curent position (default 1 byte for value, length of string or array for Uint8Array or Buffer)
791
- * @param {boolean} consume - Move current position to end of data (default false)
792
- */
793
- orThis(orKey: number | string | Uint8Array | Buffer, length?: number, consume?: boolean): void;
794
- /**
795
- * AND data.
796
- *
797
- * @param {number|string|Array<number>|Buffer} andKey - Value, string or array to AND
798
- * @param {number} startOffset - Start location (default current byte position)
799
- * @param {number} endOffset - End location (default end of data)
800
- * @param {boolean} consume - Move current position to end of data (default false)
801
- */
802
- and(andKey: number | string | Array<number> | Buffer, startOffset?: number, endOffset?: number, consume?: boolean): void;
803
- /**
804
- * AND data.
805
- *
806
- * @param {number|string|Array<number>|Buffer} andKey - Value, string or array to AND
807
- * @param {number} length - Length in bytes to AND from curent position (default 1 byte for value, length of string or array for Uint8Array or Buffer)
808
- * @param {boolean} consume - Move current position to end of data (default false)
809
- */
810
- andThis(andKey: number | string | Array<number> | Buffer, length?: number, consume?: boolean): void;
811
- /**
812
- * Add value to data.
813
- *
814
- * @param {number|string|Array<number>|Buffer} addKey - Value, string or array to add to data
815
- * @param {number} startOffset - Start location (default current byte position)
816
- * @param {number} endOffset - End location (default end of data)
817
- * @param {boolean} consume - Move current position to end of data (default false)
818
- */
819
- add(addKey: number | string | Array<number> | Buffer, startOffset?: number, endOffset?: number, consume?: boolean): void;
820
- /**
821
- * Add value to data.
822
- *
823
- * @param {number|string|Array<number>|Buffer} addKey - Value, string or array to add to data
824
- * @param {number} length - Length in bytes to add from curent position (default 1 byte for value, length of string or array for Uint8Array or Buffer)
825
- * @param {boolean} consume - Move current position to end of data (default false)
826
- */
827
- addThis(addKey: number | string | Array<number> | Buffer, length?: number, consume?: boolean): void;
828
- /**
829
- * Not data.
830
- *
831
- * @param {number} startOffset - Start location (default current byte position)
832
- * @param {number} endOffset - End location (default end of data)
833
- * @param {boolean} consume - Move current position to end of data (default false)
834
- */
835
- not(startOffset?: number, endOffset?: number, consume?: boolean): void;
836
- /**
837
- * Not data.
838
- *
839
- * @param {number} length - Length in bytes to NOT from curent position (default 1 byte for value, length of string or array for Uint8Array or Buffer)
840
- * @param {boolean} consume - Move current position to end of data (default false)
841
- */
842
- notThis(length?: number, consume?: boolean): void;
843
- /**
844
- * Left shift data.
845
- *
846
- * @param {number|string|Array<number>|Buffer} shiftKey - Value, string or array to left shift data
847
- * @param {number} startOffset - Start location (default current byte position)
848
- * @param {number} endOffset - End location (default end of data)
849
- * @param {boolean} consume - Move current position to end of data (default false)
850
- */
851
- lShift(shiftKey: number | string | Array<number> | Buffer, startOffset?: number, endOffset?: number, consume?: boolean): void;
852
- /**
853
- * Left shift data.
854
- *
855
- * @param {number|string|Array<number>|Buffer} shiftKey - Value, string or array to left shift data
856
- * @param {number} length - Length in bytes to left shift from curent position (default 1 byte for value, length of string or array for Uint8Array or Buffer)
857
- * @param {boolean} consume - Move current position to end of data (default false)
858
- */
859
- lShiftThis(shiftKey: number | string | Array<number> | Buffer, length?: number, consume?: boolean): void;
860
- /**
861
- * Right shift data.
862
- *
863
- * @param {number|string|Array<number>|Buffer} shiftKey - Value, string or array to right shift data
864
- * @param {number} startOffset - Start location (default current byte position)
865
- * @param {number} endOffset - End location (default end of data)
866
- * @param {boolean} consume - Move current position to end of data (default false)
867
- */
868
- rShift(shiftKey: number | string | Array<number> | Buffer, startOffset?: number, endOffset?: number, consume?: boolean): void;
869
- /**
870
- * Right shift data.
871
- *
872
- * @param {number|string|Array<number>|Buffer} shiftKey - Value, string or array to right shift data
873
- * @param {number} length - Length in bytes to right shift from curent position (default 1 byte for value, length of string or array for Uint8Array or Buffer)
874
- * @param {boolean} consume - Move current position to end of data (default false)
875
- */
876
- rShiftThis(shiftKey: number | string | Array<number> | Buffer, length?: number, consume?: boolean): void;
877
- /**
878
- *
879
- * Write bits, must have at least value and number of bits.
880
- *
881
- * ``Note``: When returning to a byte write, remaining bits are skipped.
882
- *
883
- * @param {number} value - value as int
884
- * @param {number} bits - number of bits to write
885
- * @param {boolean} unsigned - if value is unsigned
886
- * @param {endian} endian - ``big`` or ``little``
887
- */
888
- writeBit(value: number, bits: number, unsigned?: boolean, endian?: endian): void;
889
- /**
890
- * Bit field writer.
891
- *
892
- * Note: When returning to a byte write, remaining bits are dropped.
893
- *
894
- * @param {number} value - value as int
895
- * @param {number} bits - bits to write
896
- * @returns number
897
- */
898
- writeUBitBE(value: number, bits: number): void;
899
- /**
900
- * Bit field writer.
901
- *
902
- * Note: When returning to a byte write, remaining bits are dropped.
903
- *
904
- * @param {number} value - value as int
905
- * @param {number} bits - bits to write
906
- * @param {boolean} unsigned - if the value is unsigned
907
- * @returns number
908
- */
909
- writeBitBE(value: number, bits: number, unsigned?: boolean): void;
910
- /**
911
- * Bit field writer.
912
- *
913
- * Note: When returning to a byte write, remaining bits are dropped.
914
- *
915
- * @param {number} value - value as int
916
- * @param {number} bits - bits to write
917
- * @returns number
918
- */
919
- writeUBitLE(value: number, bits: number): void;
920
- /**
921
- * Bit field writer.
922
- *
923
- * Note: When returning to a byte write, remaining bits are dropped.
924
- *
925
- * @param {number} value - value as int
926
- * @param {number} bits - bits to write
927
- * @param {boolean} unsigned - if the value is unsigned
928
- * @returns number
929
- */
930
- writeBitLE(value: number, bits: number, unsigned?: boolean): void;
931
- /**
932
- * Bit field reader.
933
- *
934
- * Note: When returning to a byte read, remaining bits are dropped.
935
- *
936
- * @param {number} bits - bits to read
937
- * @param {boolean} unsigned - if the value is unsigned
938
- * @param {endian} endian - ``big`` or ``little``
939
- * @returns {number}
940
- */
941
- readBit(bits?: number, unsigned?: boolean, endian?: endian): number;
942
- /**
943
- * Bit field reader.
944
- *
945
- * Note: When returning to a byte read, remaining bits are dropped.
946
- *
947
- * @param {number} bits - bits to read
948
- * @returns {number}
949
- */
950
- readUBitBE(bits: number): number;
951
- /**
952
- * Bit field reader.
953
- *
954
- * Note: When returning to a byte read, remaining bits are dropped.
955
- *
956
- * @param {number} bits - bits to read
957
- * @param {boolean} unsigned - if the value is unsigned
958
- * @returns {number}
959
- */
960
- readBitBE(bits: number, unsigned?: boolean): number;
961
- /**
962
- * Bit field reader.
963
- *
964
- * Note: When returning to a byte read, remaining bits are dropped.
965
- *
966
- * @param {number} bits - bits to read
967
- * @returns {number}
968
- */
969
- readUBitLE(bits: number): number;
970
- /**
971
- * Bit field reader.
972
- *
973
- * Note: When returning to a byte read, remaining bits are dropped.
974
- *
975
- * @param {number} bits - bits to read
976
- * @param {boolean} unsigned - if the value is unsigned
977
- * @returns {number}
978
- */
979
- readBitLE(bits: number, unsigned?: boolean): number;
980
- /**
981
- * Read byte.
982
- *
983
- * @param {boolean} unsigned - if value is unsigned or not
984
- * @returns {number}
985
- */
986
- readByte(unsigned?: boolean): number;
987
- /**
988
- * Read multiple bytes.
989
- *
990
- * @param {number} amount - amount of bytes to read
991
- * @param {boolean} unsigned - if value is unsigned or not
992
- * @returns {number[]}
993
- */
994
- readBytes(amount: number, unsigned?: boolean): number[];
995
- /**
996
- * Write byte.
997
- *
998
- * @param {number} value - value as int
999
- * @param {boolean} unsigned - if the value is unsigned
1000
- */
1001
- writeByte(value: number, unsigned?: boolean): void;
1002
- /**
1003
- * Write multiple bytes.
1004
- *
1005
- * @param {number[]} values - array of values as int
1006
- * @param {boolean} unsigned - if the value is unsigned
1007
- */
1008
- writeBytes(values: number[], unsigned?: boolean): void;
1009
- /**
1010
- * Write unsigned byte.
1011
- *
1012
- * @param {number} value - value as int
1013
- */
1014
- writeUByte(value: number): void;
1015
- /**
1016
- * Read unsigned byte.
1017
- *
1018
- * @returns {number}
1019
- */
1020
- readUByte(): number;
1021
- /**
1022
- * Read short.
1023
- *
1024
- * @param {boolean} unsigned - if value is unsigned or not
1025
- * @param {endian} endian - ``big`` or ``little``
1026
- * @returns {number}
1027
- */
1028
- readInt16(unsigned?: boolean, endian?: endian): number;
1029
- /**
1030
- * Write int16.
1031
- *
1032
- * @param {number} value - value as int
1033
- * @param {boolean} unsigned - if the value is unsigned
1034
- * @param {endian} endian - ``big`` or ``little``
1035
- */
1036
- writeInt16(value: number, unsigned?: boolean, endian?: endian): void;
1037
- /**
1038
- * Write unsigned int16.
1039
- *
1040
- * @param {number} value - value as int
1041
- * @param {endian} endian - ``big`` or ``little``
1042
- */
1043
- writeUInt16(value: number, endian?: endian): void;
1044
- /**
1045
- * Write unsigned int16.
1046
- *
1047
- * @param {number} value - value as int
1048
- */
1049
- writeUInt16BE(value: number): void;
1050
- /**
1051
- * Write unsigned int16.
1052
- *
1053
- * @param {number} value - value as int
1054
- */
1055
- writeUInt16LE(value: number): void;
1056
- /**
1057
- * Write signed int16.
1058
- *
1059
- * @param {number} value - value as int
1060
- */
1061
- writeInt16LE(value: number): void;
1062
- /**
1063
- * Read unsigned short.
1064
- *
1065
- * @param {endian} endian - ``big`` or ``little``
1066
- *
1067
- * @returns {number}
1068
- */
1069
- readUInt16(endian?: endian): number;
1070
- /**
1071
- * Read unsigned short in little endian.
1072
- *
1073
- * @returns {number}
1074
- */
1075
- readUInt16LE(): number;
1076
- /**
1077
- * Read signed short in little endian.
1078
- *
1079
- * @returns {number}
1080
- */
1081
- readInt16LE(): number;
1082
- /**
1083
- * Read unsigned short in big endian.
1084
- *
1085
- * @returns {number}
1086
- */
1087
- readUInt16BE(): number;
1088
- /**
1089
- * Read signed short in big endian.
1090
- *
1091
- * @returns {number}
1092
- */
1093
- readInt16BE(): number;
1094
- /**
1095
- * Read half float.
1096
- *
1097
- * @param {endian} endian - ``big`` or ``little``
1098
- * @returns {number}
1099
- */
1100
- readHalfFloat(endian?: endian): number;
1101
- /**
1102
- * Writes half float.
1103
- *
1104
- * @param {number} value - value as int
1105
- * @param {endian} endian - ``big`` or ``little``
1106
- */
1107
- writeHalfFloat(value: number, endian?: endian): void;
1108
- /**
1109
- * Writes half float.
1110
- *
1111
- * @param {number} value - value as int
1112
- */
1113
- writeHalfFloatBE(value: number): void;
1114
- /**
1115
- * Writes half float.
1116
- *
1117
- * @param {number} value - value as int
1118
- */
1119
- writeHalfFloatLE(value: number): void;
1120
- /**
1121
- * Read half float.
1122
- *
1123
- * @returns {number}
1124
- */
1125
- readHalfFloatBE(): number;
1126
- /**
1127
- * Read half float.
1128
- *
1129
- * @returns {number}
1130
- */
1131
- readHalfFloatLE(): number;
1132
- /**
1133
- * Read 32 bit integer.
1134
- *
1135
- * @param {boolean} unsigned - if value is unsigned or not
1136
- * @param {endian} endian - ``big`` or ``little``
1137
- * @returns {number}
1138
- */
1139
- readInt32(unsigned?: boolean, endian?: endian): number;
1140
- /**
1141
- * Write int32.
1142
- *
1143
- * @param {number} value - value as int
1144
- * @param {boolean} unsigned - if the value is unsigned
1145
- * @param {endian} endian - ``big`` or ``little``
1146
- */
1147
- writeInt32(value: number, unsigned?: boolean, endian?: endian): void;
1148
- /**
1149
- * Write unsigned int32.
1150
- *
1151
- * @param {number} value - value as int
1152
- * @param {endian} endian - ``big`` or ``little``
1153
- */
1154
- writeUInt32(value: number, endian?: endian): void;
1155
- /**
1156
- * Write signed int32.
1157
- *
1158
- * @param {number} value - value as int
1159
- */
1160
- writeInt32LE(value: number): void;
1161
- /**
1162
- * Write unsigned int32.
1163
- *
1164
- * @param {number} value - value as int
1165
- */
1166
- writeUInt32LE(value: number): void;
1167
- /**
1168
- * Write signed int32.
1169
- *
1170
- * @param {number} value - value as int
1171
- */
1172
- writeInt32BE(value: number): void;
1173
- /**
1174
- * Read signed 32 bit integer.
1175
- *
1176
- * @returns {number}
1177
- */
1178
- readInt32BE(): number;
1179
- /**
1180
- * Read unsigned 32 bit integer.
1181
- *
1182
- * @returns {number}
1183
- */
1184
- readUInt32BE(): number;
1185
- /**
1186
- * Read signed 32 bit integer.
1187
- *
1188
- * @returns {number}
1189
- */
1190
- readInt32LE(): number;
1191
- /**
1192
- * Read signed 32 bit integer.
1193
- *
1194
- * @returns {number}
1195
- */
1196
- readUInt32LE(): number;
1197
- /**
1198
- * Read unsigned 32 bit integer.
1199
- *
1200
- * @returns {number}
1201
- */
1202
- readUInt(): number;
1203
- /**
1204
- * Read float.
1205
- *
1206
- * @param {endian} endian - ``big`` or ``little``
1207
- * @returns {number}
1208
- */
1209
- readFloat(endian?: endian): number;
1210
- /**
1211
- * Write float.
1212
- *
1213
- * @param {number} value - value as int
1214
- * @param {endian} endian - ``big`` or ``little``
1215
- */
1216
- writeFloat(value: number, endian?: endian): void;
1217
- /**
1218
- * Write float.
1219
- *
1220
- * @param {number} value - value as int
1221
- */
1222
- writeFloatLE(value: number): void;
1223
- /**
1224
- * Write float.
1225
- *
1226
- * @param {number} value - value as int
1227
- */
1228
- writeFloatBE(value: number): void;
1229
- /**
1230
- * Read float.
1231
- *
1232
- * @returns {number}
1233
- */
1234
- readFloatBE(): number;
1235
- /**
1236
- * Read float.
1237
- *
1238
- * @returns {number}
1239
- */
1240
- readFloatLE(): number;
1241
- /**
1242
- * Read signed 64 bit integer.
1243
- *
1244
- * @param {boolean} unsigned - if value is unsigned or not
1245
- * @param {endian?} endian - ``big`` or ``little``
1246
- * @returns {bigint}
1247
- */
1248
- readInt64(unsigned?: boolean, endian?: endian): bigint;
1249
- /**
1250
- * Write 64 bit integer.
1251
- *
1252
- * @param {BigValue} value - value as int
1253
- * @param {boolean} unsigned - if the value is unsigned
1254
- * @param {endian} endian - ``big`` or ``little``
1255
- */
1256
- writeInt64(value: BigValue, unsigned?: boolean, endian?: endian): void;
1257
- /**
1258
- * Write unsigned 64 bit integer.
1259
- *
1260
- * @param {BigValue} value - value as int
1261
- * @param {endian} endian - ``big`` or ``little``
1262
- */
1263
- writeUInt64(value: BigValue, endian?: endian): void;
1264
- /**
1265
- * Write signed 64 bit integer.
1266
- *
1267
- * @param {BigValue} value - value as int
1268
- */
1269
- writeInt64LE(value: BigValue): void;
1270
- /**
1271
- * Write unsigned 64 bit integer.
1272
- *
1273
- * @param {BigValue} value - value as int
1274
- */
1275
- writeUInt64LE(value: BigValue): void;
1276
- /**
1277
- * Write signed 64 bit integer.
1278
- *
1279
- * @param {BigValue} value - value as int
1280
- */
1281
- writeInt64BE(value: BigValue): void;
1282
- /**
1283
- * Write unsigned 64 bit integer.
1284
- *
1285
- * @param {BigValue} value - value as int
1286
- */
1287
- writeUInt64BE(value: BigValue): void;
1288
- /**
1289
- * Read unsigned 64 bit integer.
1290
- *
1291
- * @returns {bigint}
1292
- */
1293
- readUInt64(): bigint;
1294
- /**
1295
- * Read signed 64 bit integer.
1296
- *
1297
- * @returns {bigint}
1298
- */
1299
- readInt64BE(): bigint;
1300
- /**
1301
- * Read unsigned 64 bit integer.
1302
- *
1303
- * @returns {bigint}
1304
- */
1305
- readUInt64BE(): bigint;
1306
- /**
1307
- * Read signed 64 bit integer.
1308
- *
1309
- * @returns {bigint}
1310
- */
1311
- readInt64LE(): bigint;
1312
- /**
1313
- * Read unsigned 64 bit integer.
1314
- *
1315
- * @returns {bigint}
1316
- */
1317
- readUInt64LE(): bigint;
1318
- /**
1319
- * Read double float.
1320
- *
1321
- * @param {endian} endian - ``big`` or ``little``
1322
- * @returns {number}
1323
- */
1324
- readDoubleFloat(endian?: endian): number;
1325
- /**
1326
- * Writes double float.
1327
- *
1328
- * @param {number} value - value as int
1329
- * @param {endian} endian - ``big`` or ``little``
1330
- */
1331
- writeDoubleFloat(value: number, endian?: endian): void;
1332
- /**
1333
- * Writes double float.
1334
- *
1335
- * @param {number} value - value as int
1336
- */
1337
- writeDoubleFloatBE(value: number): void;
1338
- /**
1339
- * Writes double float.
1340
- *
1341
- * @param {number} value - value as int
1342
- */
1343
- writeDoubleFloatLE(value: number): void;
1344
- /**
1345
- * Read double float.
1346
- *
1347
- * @returns {number}
1348
- */
1349
- readDoubleFloatBE(): number;
1350
- /**
1351
- * Read double float.
1352
- *
1353
- * @returns {number}
1354
- */
1355
- readDoubleFloatLE(): number;
1356
- /**
1357
- * Reads string, use options object for different types.
1358
- *
1359
- * @param {stringOptions} options
1360
- * @param {stringOptions["length"]?} options.length - for fixed length, non-terminate value utf strings
1361
- * @param {stringOptions["stringType"]?} options.stringType - utf-8, utf-16, pascal or wide-pascal
1362
- * @param {stringOptions["terminateValue"]?} options.terminateValue - only with stringType: "utf"
1363
- * @param {stringOptions["lengthReadSize"]?} options.lengthReadSize - for pascal strings. 1, 2 or 4 byte length read size
1364
- * @param {stringOptions["encoding"]?} options.encoding - TextEncoder accepted types
1365
- * @param {stringOptions["endian"]?} options.endian - for wide-pascal and utf-16
1366
- * @return {Promise<string>}
1367
- */
1368
- readString(options?: stringOptions): string;
1369
- /**
1370
- * Writes string, use options object for different types.
1371
- *
1372
- * @param {string} string - text string
1373
- * @param {stringOptions?} options
1374
- * @param {stringOptions["length"]?} options.length - for fixed length, non-terminate value utf strings
1375
- * @param {stringOptions["stringType"]?} options.stringType - utf-8, utf-16, pascal or wide-pascal
1376
- * @param {stringOptions["terminateValue"]?} options.terminateValue - only with stringType: "utf"
1377
- * @param {stringOptions["lengthWriteSize"]?} options.lengthWriteSize - for pascal strings. 1, 2 or 4 byte length write size
1378
- * @param {stringOptions["encoding"]?} options.encoding - TextEncoder accepted types
1379
- * @param {stringOptions["endian"]?} options.endian - for wide-pascal and utf-16
1380
- */
1381
- writeString(string: string, options?: stringOptions): void;
1382
- }
1383
- export {};