export class ReadableStreamMessageReader { readable; constructor(readable){ this.readable = readable, this.#errorHandlers = new Set(), this.#closeHandlers = new Set(), this.#partialMessageHandlers = new Set(); } #errorHandlers; #closeHandlers; #partialMessageHandlers; onError(callback) { return this.#errorHandlers.add(callback), { dispose: ()=>this.#errorHandlers.delete(callback) }; } onClose(callback) { return this.#closeHandlers.add(callback), { dispose: ()=>this.#closeHandlers.delete(callback) }; } onPartialMessage(callback) { return this.#partialMessageHandlers.add(callback), { dispose: ()=>this.#partialMessageHandlers.delete(callback) }; } listen(callback) { return this.readable.pipeTo(new WritableStream({ write: (chunk)=>{ callback(JSON.parse(chunk)); } })), { dispose: ()=>{ this.readable.cancel(); } }; } dispose() { this.readable.cancel(); } } //# sourceMappingURL=./ReadableStreamMessageReader.ts.map