tethr
Version:
Controlls USB-connected cameras, webcam, and smartphone camera from browser
42 lines (41 loc) • 1.41 kB
TypeScript
/**
* DataView-like class that adds automatic read & write offset tracking, string operations, and useful methods for PTP packet encoding/decoding. Uses little-endian as default
*/
export declare class PTPDataView {
private currentByteOffset;
private currentByteLength;
private dataView;
private buffer;
constructor(bufferOrSize?: ArrayBufferLike | number);
get byteLength(): number;
skip(bytes: number): this;
goto(offset: number): this;
readUint8: () => number;
readInt8: () => number;
readUint16: () => number;
readInt16: () => number;
readUint32: () => number;
readUint64: () => bigint;
readAsciiString: () => string;
readFixedUTF16String: () => string;
readUTF16StringNT: () => string;
readDate: () => Date;
readUint8Array: () => number[];
readUint16Array: () => number[];
readInt16Array: () => number[];
readUint32Array: () => number[];
peekRest: () => ArrayBuffer;
private readArray;
writeUint8(value: number): void;
writeInt8(value: number): void;
writeUint16(value: number): void;
writeInt16(value: number): void;
writeUint32(value: number): void;
writeInt32(value: number): void;
writeBigUint64(value: bigint): void;
writeBigInt64(value: bigint): void;
writeCheckSum(): void;
toBuffer(): ArrayBuffer;
private updateByteLength;
private resizeBuffer;
}