You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 lines
3.1 KiB

export enum FLOAT32_OPTIONS {
NEVER = 0,
ALWAYS = 1,
DECIMAL_ROUND = 3,
DECIMAL_FIT = 4
}
export interface Options {
useFloat32?: FLOAT32_OPTIONS
useRecords?: boolean | ((value:any)=> boolean)
structures?: {}[]
moreTypes?: boolean
sequential?: boolean
structuredClone?: boolean
mapsAsObjects?: boolean
variableMapSize?: boolean
coercibleKeyAsNumber?: boolean
copyBuffers?: boolean
bundleStrings?: boolean
useTimestamp32?: boolean
largeBigIntToFloat?: boolean
useBigIntExtension?: boolean
encodeUndefinedAsNil?: boolean
maxSharedStructures?: number
maxOwnStructures?: number
mapAsEmptyObject?: boolean
setAsEmptyObject?: boolean
writeFunction?: () => any
/** @deprecated use int64AsType: 'number' */
int64AsNumber?: boolean
int64AsType?: 'bigint' | 'number' | 'string'
shouldShareStructure?: (keys: string[]) => boolean
getStructures?(): {}[]
saveStructures?(structures: {}[]): boolean | void
onInvalidDate?: () => any
}
interface Extension {
Class?: Function
type?: number
pack?(value: any): Buffer | Uint8Array
unpack?(messagePack: Buffer | Uint8Array): any
read?(datum: any): any
write?(instance: any): any
}
export type UnpackOptions = { start?: number; end?: number; lazy?: boolean; } | number;
export class Unpackr {
constructor(options?: Options)
unpack(messagePack: Buffer | Uint8Array, options?: UnpackOptions): any
decode(messagePack: Buffer | Uint8Array, options?: UnpackOptions): any
unpackMultiple(messagePack: Buffer | Uint8Array): any[]
unpackMultiple(messagePack: Buffer | Uint8Array, forEach: (value: any, start?: number, end?: number) => any): void
}
export class Decoder extends Unpackr {}
export function unpack(messagePack: Buffer | Uint8Array, options?: UnpackOptions): any
export function unpackMultiple(messagePack: Buffer | Uint8Array): any[]
export function unpackMultiple(messagePack: Buffer | Uint8Array, forEach: (value: any, start?: number, end?: number) => any): void
export function decode(messagePack: Buffer | Uint8Array, options?: UnpackOptions): any
export function addExtension(extension: Extension): void
export function clearSource(): void
export function roundFloat32(float32Number: number): number
export const C1: {}
export let isNativeAccelerationEnabled: boolean
export class Packr extends Unpackr {
offset: number;
position: number;
pack(value: any, encodeOptions?: number): Buffer
encode(value: any, encodeOptions?: number): Buffer
useBuffer(buffer: Buffer | Uint8Array): void;
clearSharedData(): void;
}
export class Encoder extends Packr {}
export function pack(value: any, encodeOptions?: number): Buffer
export function encode(value: any, encodeOptions?: number): Buffer
export const REUSE_BUFFER_MODE: number;
export const RESET_BUFFER_MODE: number;
export const RESERVE_START_SPACE: number;
import { Transform, Readable } from 'stream'
export as namespace msgpackr;
export class UnpackrStream extends Transform {
constructor(options?: Options | { highWaterMark: number, emitClose: boolean, allowHalfOpen: boolean })
}
export class PackrStream extends Transform {
constructor(options?: Options | { highWaterMark: number, emitClose: boolean, allowHalfOpen: boolean })
}