pipebomb.js
Version:
Library for interacting with Pipe Bomb servers
109 lines (108 loc) • 5.18 kB
TypeScript
/// <reference types="node" />
/** Class extending Uint8Array to provide a partial implementation of NodeJS Buffer as a cross-platform shim. */
export declare class BufferShim extends Uint8Array {
/**
* @param {string|Buffer|BufferShim|ArrayBuffer|SharedArrayBuffer} input
* @param {BufferEncoding} [encoding='utf8']
*/
constructor(input: string | Buffer | BufferShim | ArrayBuffer | SharedArrayBuffer, encoding?: BufferEncoding);
private static atob;
private static btoa;
private static fromUTF8ArrayOrASCIIArray;
private static toUTF8Array;
private static toUTF16Array;
private static fromUTF16Array;
private static toASCIIArrayOrBinaryArray;
private static fromBinaryArray;
private static toHexArray;
private static fromHexArray;
/** Copy a Buffer or BufferShim to an ArrayBuffer.
* @param {Buffer|BufferShim} buffer
* @returns {ArrayBuffer}
*/
static toArrayBuffer(buffer: Buffer | BufferShim): ArrayBuffer;
/** Copy an ArrayBuffer to a Buffer if possible or a BufferShim.
* @param {ArrayBuffer} buffer
* @returns {Buffer}
*/
static toNodeBuffer(buffer: ArrayBuffer): BufferShim | Buffer;
/** Fills this instance with a value.
* @param {number|string|Buffer|BufferShim|Uint8Array} value
* @param {number|BufferEncoding} [offset]
* @param {number|BufferEncoding} [end]
* @param {BufferEncoding} [encoding]
* @returns {BufferShim}
*/
fill(value: number | string | Buffer | BufferShim | Uint8Array): this;
fill(value: number | string | Buffer | BufferShim | Uint8Array, encoding: BufferEncoding): this;
fill(value: number | string | Buffer | BufferShim | Uint8Array, offset: number, end?: number): this;
fill(value: number | string | Buffer | BufferShim | Uint8Array, offset: number, encoding?: BufferEncoding): this;
fill(value: number | string | Buffer | BufferShim | Uint8Array, offset?: number, end?: number, encoding?: BufferEncoding): this;
/** Returns this instance as a Uint8Array.
* @returns {Uint8Array}
*/
toUint8Array(): Uint8Array;
/** Returns this instance as a NodeJS Buffer if possible.
* @returns {Buffer}
*/
toBuffer(): BufferShim | Buffer;
/** Returns this instance as a string.
* @param {BufferEncoding} [encoding='utf8']
* @returns {string}
*/
toString(encoding?: BufferEncoding): string;
/** Tests if the current environment is using NodeJS Buffer implementation. */
static get isNodeEnv(): boolean;
/** Returns true if {buffer} is a Buffer
* @param {any} buffer
* @returns {boolean}
*/
static isBuffer(buffer: any): boolean;
/** Returns true if {buffer} is a BufferShim
* @param {any} buffer
* @returns {boolean}
*/
static isBufferShim(buffer: any): boolean;
/** Allocates a new buffer of {size} octets.
* @param {number} size
* @returns {BufferShim}
*/
static alloc(size: number, fill?: number | string | Buffer | BufferShim | Uint8Array, encoding?: BufferEncoding): BufferShim;
/** Allocates a new uninitialized buffer of {size} octets.
* @param {number} size
* @returns {BufferShim}
*/
static allocUnsafe(size: number): BufferShim;
/** Creates a new BufferShim from the given value.
* @param {string|Buffer|BufferShim|ArrayBuffer|SharedArrayBuffer|Uint8Array|number[]} input
* @param {BufferEncoding} [encoding='utf8']
* @returns {BufferShim}
*/
static from(arrayBuffer: ArrayBuffer | SharedArrayBuffer): BufferShim;
static from(data: number[]): BufferShim;
static from(data: Uint8Array): BufferShim;
static from(obj: {
valueOf(): string | object;
} | {
[Symbol.toPrimitive](hint: 'string'): string;
}): BufferShim;
static from(str: string, encoding?: BufferEncoding): BufferShim;
/** Fills a given buffer with a value.
* @param {BufferShim} buffer
* @param {number|string|Buffer|BufferShim|Uint8Array} value
* @param {number|BufferEncoding} [offset]
* @param {number|BufferEncoding} [end]
* @param {BufferEncoding} [encoding]
* @returns {BufferShim}
*/
static fill(buffer: BufferShim, value: number | string | Buffer | BufferShim | Uint8Array): BufferShim;
static fill(buffer: BufferShim, value: number | string | Buffer | BufferShim | Uint8Array, encoding: BufferEncoding): BufferShim;
static fill(buffer: BufferShim, value: number | string | Buffer | BufferShim | Uint8Array, offset: number, end?: number): BufferShim;
static fill(buffer: BufferShim, value: number | string | Buffer | BufferShim | Uint8Array, offset: number, encoding?: BufferEncoding): BufferShim;
static fill(buffer: BufferShim, value: number | string | Buffer | BufferShim | Uint8Array, offset?: number, end?: number, encoding?: BufferEncoding): BufferShim;
}
/** Global function for ignoring NodeJS env in class BufferShim.
* @param {boolean} [ignore] - Sets the global value; if no boolean is passed, it will return the current setting.
* @returns {boolean}
*/
export declare function ignoreNode(ignore?: boolean): boolean;