@devgrid/netron
Version:
A powerful TypeScript library for building distributed systems with event bus, streaming capabilities, and remote object invocation. Features WebSocket-based bidirectional communication between Node.js and browser environments, service discovery, and type
28 lines (27 loc) • 905 B
TypeScript
import { Readable, ReadableOptions } from 'stream';
import { Packet } from './packet';
import { RemotePeer } from './remote-peer';
export interface NetronReadableStreamOptions extends ReadableOptions {
peer: RemotePeer;
streamId: number;
isLive?: boolean;
}
export declare class NetronReadableStream extends Readable {
readonly peer: RemotePeer;
private buffer;
private expectedIndex;
private timeout?;
readonly id: number;
private isClosed;
isComplete: boolean;
isLive: boolean;
constructor({ peer, streamId, isLive, ...opts }: NetronReadableStreamOptions);
onPacket(packet: Packet): void;
_read(): void;
private resetTimeout;
closeStream(force?: boolean): void;
private cleanup;
private handleError;
destroy(error?: Error): this;
static create(peer: RemotePeer, streamId: number, isLive?: boolean): NetronReadableStream;
}