@mrhiden/cstruct
Version:
For packing and unpacking bytes (C like structures) in/from Buffer based on Object/Array type for parsing.
24 lines (23 loc) • 1.1 kB
TypeScript
/// <reference types="node" />
import { CStruct } from "./cstruct";
import { CStructReadResult, CStructWriteResult, Model, Types } from "./types";
import { Class, CStructClassOptions } from "./decorators-types";
/**
* C_Struct LE - Little Endian
* Binary/Object and vice versa parser for JavaScript
*
* Parse MODEL,
* Parse TYPES,
* Uses Object, JSON, C_Struct lang (kind of C)
*/
export declare class CStructLE<T> extends CStruct<T> {
constructor(model: Model, types?: Types);
make<T = any>(struct: T): CStructWriteResult;
write<T = any>(buffer: Buffer, struct: T, offset?: number): CStructWriteResult;
read<T = any>(buffer: Buffer, offset?: number): CStructReadResult<T>;
static make<T = any>(struct: T): CStructWriteResult;
static write<T = any>(struct: T, buffer: Buffer, offset?: number): CStructWriteResult;
static read<T = any>(TClass: Class<T>, buffer: Buffer, offset?: number): CStructReadResult<T>;
static from<T = any>(from: Class | CStructClassOptions | T): CStructLE<T>;
static fromModelTypes<T = any>(model: Model, types?: Types): CStructLE<T>;
}