@iotize/device-client.js
Version:
IoTize Device client for Javascript
115 lines (114 loc) • 4.21 kB
TypeScript
import { KaitaiStream, StreamBufferType } from "./kaitai-stream";
export declare class KaitaiStreamReader extends KaitaiStream {
static fromArray(array: Uint8Array): KaitaiStreamReader;
static create(packet: Uint8Array | KaitaiStreamReader): KaitaiStreamReader;
/**
KaitaiStream is an implementation of Kaitai Struct API for JavaScript.
Based on DataStream - https://github.com/kig/DataStream.js
@param {ArrayBuffer} arrayBuffer ArrayBuffer to read from.
@param {?Number} byteOffset Offset from arrayBuffer beginning for the KaitaiStream.
*/
constructor(arrayBuffer?: StreamBufferType, byteOffset?: number, isBigEndian?: boolean);
readS(size: 1 | 2 | 4): number;
read(type: 'f' | 'u' | 's' | 'b', bitSize: number, isLittleEndian?: boolean): any;
/**
Reads an 8-bit signed int from the stream.
@return {number} The read number.
*/
readS1(): number;
/**
Reads a 16-bit big-endian signed int from the stream.
@return {number} The read number.
*/
readS2be(): number;
/**
Reads a 32-bit big-endian signed int from the stream.
@return {number} The read number.
*/
readS4be(): number;
/**
Reads a 64-bit big-endian unsigned int from the stream. Note that
JavaScript does not support 64-bit integers natively, so it will
automatically upgrade internal representation to use IEEE 754
double precision float.
@return {number} The read number.
*/
readS8be(): number;
/**
Reads a 16-bit little-endian signed int from the stream.
@return {number} The read number.
*/
readS2le(): number;
/**
Reads a 32-bit little-endian signed int from the stream.
@return {number} The read number.
*/
readS4le(): number;
/**
Reads a 64-bit little-endian unsigned int from the stream. Note that
JavaScript does not support 64-bit integers natively, so it will
automatically upgrade internal representation to use IEEE 754
double precision float.
@return {number} The read number.
*/
readS8le(): number;
/**
* Read unsigned
* @param size
*/
readU(size: 1 | 2 | 4 | number): number;
/**
Reads an 8-bit unsigned int from the stream.
@return {number} The read number.
*/
readU1(): number;
/**
Reads a 16-bit big-endian unsigned int from the stream.
@return {number} The read number.
*/
readU2be(): number;
/**
Reads a 32-bit big-endian unsigned int from the stream.
@return {number} The read number.
*/
readU4be(): number;
/**
Reads a 64-bit big-endian unsigned int from the stream. Note that
JavaScript does not support 64-bit integers natively, so it will
automatically upgrade internal representation to use IEEE 754
double precision float.
@return {number} The read number.
*/
readU8be(): number;
/**
Reads a 16-bit little-endian unsigned int from the stream.
@return {number} The read number.
*/
readU2le(): number;
/**
Reads a 32-bit little-endian unsigned int from the stream.
@return {number} The read number.
*/
readU4le(): number;
/**
Reads a 64-bit little-endian unsigned int from the stream. Note that
JavaScript does not support 64-bit integers natively, so it will
automatically upgrade internal representation to use IEEE 754
double precision float.
@return {number} The read number.
*/
readU8le(): number;
readF(size: 4 | 8): number;
readF4be(): number;
readF8be(): number;
readF4le(): number;
readF8le(): number;
readBitsBoolean(n: number): boolean;
readB(n: number): number;
forwardBits(n: number): this;
readBitsInt(n: number): number;
readBytes(len: number): Uint8Array;
readBytesFull(): Uint8Array;
readBytesTerm(terminator: number, include: boolean, consume: boolean, eosError: boolean): Uint8Array;
ensureFixedContents(expected: Uint8Array): Uint8Array;
}