1declare namespace InternalSerdesBinding {
2  type Buffer = Uint8Array;
3
4  class Serializer {
5    _getDataCloneError: typeof Error;
6    constructor();
7    _setTreatArrayBufferViewsAsHostObjects(value: boolean): void;
8    releaseBuffer(): Buffer;
9    transferArrayBuffer(id: number, arrayBuffer: ArrayBuffer): void;
10    writeDouble(value: number): void;
11    writeHeader(): void;
12    writeRawBytes(value: ArrayBufferView): void;
13    writeUint32(value: number): void;
14    writeUint64(hi: number, lo: number): void;
15    writeValue(value: any): void;
16  }
17
18  class Deserializer {
19    buffer: ArrayBufferView;
20    constructor(buffer: ArrayBufferView);
21    _readRawBytes(length: number): number;
22    getWireFormatVersion(): number;
23    readDouble(): number;
24    readHeader(): boolean;
25    readRawBytes(length: number): Buffer;
26    readUint32(): number;
27    readUint64(): [hi: number, lo: number];
28    readValue(): unknown;
29    transferArrayBuffer(id: number, arrayBuffer: ArrayBuffer | SharedArrayBuffer): void;
30  }
31}
32
33declare function InternalBinding(binding: 'serdes'): {
34  Serializer: typeof InternalSerdesBinding.Serializer;
35  Deserializer: typeof InternalSerdesBinding.Deserializer;
36};
37