Files
Desktop/ts/util/MemoryStream.node.ts
Fedor Indutny 44076ece79 Rename files
2025-10-16 23:45:44 -07:00

23 lines
583 B
TypeScript

// Copyright 2025 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import { InputStream } from '@signalapp/libsignal-client/dist/io.js';
export class MemoryStream extends InputStream {
#offset = 0;
constructor(private readonly buffer: Uint8Array) {
super();
}
public override async read(amount: number): Promise<Uint8Array> {
const result = this.buffer.subarray(this.#offset, this.#offset + amount);
this.#offset += amount;
return result;
}
public override async skip(amount: number): Promise<void> {
this.#offset += amount;
}
}