forked from nodejs/node
-
Notifications
You must be signed in to change notification settings - Fork 0
/
serdes.d.ts
36 lines (33 loc) · 1.13 KB
/
serdes.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
declare namespace InternalSerdesBinding {
type Buffer = Uint8Array;
class Serializer {
_getDataCloneError: typeof Error;
constructor();
_setTreatArrayBufferViewsAsHostObjects(value: boolean): void;
releaseBuffer(): Buffer;
transferArrayBuffer(id: number, arrayBuffer: ArrayBuffer): void;
writeDouble(value: number): void;
writeHeader(): void;
writeRawBytes(value: ArrayBufferView): void;
writeUint32(value: number): void;
writeUint64(hi: number, lo: number): void;
writeValue(value: any): void;
}
class Deserializer {
buffer: ArrayBufferView;
constructor(buffer: ArrayBufferView);
_readRawBytes(length: number): number;
getWireFormatVersion(): number;
readDouble(): number;
readHeader(): boolean;
readRawBytes(length: number): Buffer;
readUint32(): number;
readUint64(): [hi: number, lo: number];
readValue(): unknown;
transferArrayBuffer(id: number, arrayBuffer: ArrayBuffer | SharedArrayBuffer): void;
}
}
export interface SerdesBinding {
Serializer: typeof InternalSerdesBinding.Serializer;
Deserializer: typeof InternalSerdesBinding.Deserializer;
}