@runejs/core
Version:
Core logging, networking, and buffer functionality for RuneJS applications.
82 lines (81 loc) • 3.39 kB
TypeScript
/// <reference types="node" />
export declare type DataType = 'BYTE' | 'SHORT' | 'SMART' | 'INT24' | 'INT' | 'LONG' | 'STRING' | 'byte' | 'short' | 'smart' | 'int24' | 'int' | 'long' | 'string';
export declare type Endianness = 'LITTLE_ENDIAN' | 'BIG_ENDIAN' | 'MIDDLE_ENDIAN_1' | 'MIDDLE_ENDIAN_2' | 'little_endian' | 'big_endian' | 'middle_endian_1' | 'middle_endian_2' | 'le' | 'LE' | 'be' | 'BE' | 'me1' | 'ME1' | 'me2' | 'ME2';
export declare type Signedness = 'SIGNED' | 'UNSIGNED' | 'signed' | 'unsigned' | 's' | 'u' | 'S' | 'U';
export declare const MAX_SIGNED_LENGTHS: {
byte: number;
short: number;
smart: number;
int24: number;
int: number;
long: bigint;
};
export declare const BYTE_LENGTH: {
byte: number;
short: number;
smart: number;
int24: number;
int: number;
long: number;
};
export declare const BIT_LENGTH: {
byte: number;
short: number;
smart: number;
int24: number;
int: number;
long: number;
};
export declare const ENDIAN_SUFFIX: {
little_endian: string;
big_endian: string;
middle_endian_1: string;
middle_endian_2: string;
};
export declare class ByteBuffer extends Uint8Array {
readInt8: (offset: number) => number;
readUInt8: (offset: number) => number;
copy: (targetBuffer: Uint8Array, targetStart?: number, sourceStart?: number, sourceEnd?: number) => number;
private _writerIndex;
private _readerIndex;
private _bitIndex;
static getType(type?: DataType): DataType;
static getSignage(signed: Signedness): Signedness;
static getEndianness(endian: Endianness): Endianness;
static fromNodeBuffer(buffer: Buffer): ByteBuffer;
static toNodeBuffer(byteBuffer: ByteBuffer): Buffer;
toNodeBuffer(): Buffer;
get(type: 'string' | 'STRING'): string;
get(type: DataType, signed?: Signedness, endian?: Endianness): number;
put(value: string, type: 'string' | 'STRING'): ByteBuffer;
put(value: number | bigint, type?: DataType, endian?: Endianness): ByteBuffer;
at(index: number, signed?: Signedness): number;
getSlice(position: number, length: number): ByteBuffer;
putBytes(from: ByteBuffer | Buffer, fromStart?: number, fromEnd?: number): ByteBuffer;
getBytes(to: ByteBuffer | Buffer, length?: number): void;
putBits(bitCount: number, value: number): ByteBuffer;
openBitBuffer(): ByteBuffer;
closeBitBuffer(): void;
flipWriter(): ByteBuffer;
flipReader(): ByteBuffer;
getString(terminatingChar?: number): string;
putString(value: string): ByteBuffer;
putSmart(value: number): ByteBuffer;
getSmart(offset: number, signed?: Signedness): number;
readUInt24BE(offset: number): number;
readInt24BE(offset: number): number;
readUInt24LE(offset: number): number;
readInt24LE(offset: number): number;
writeUInt24BE(value: number, offset: number): void;
writeInt24BE(value: number, offset: number): void;
writeUInt24LE(value: number, offset: number): void;
writeInt24LE(value: number, offset: number): void;
get writerIndex(): number;
set writerIndex(value: number);
get readerIndex(): number;
set readerIndex(value: number);
get readable(): number;
get writable(): number;
get bitIndex(): number;
set bitIndex(value: number);
}