/// import { IEventEmitter } from "tsee"; export declare type StreamReadableEvents = { close(): void; error(err: Error): void; data(chunk: Chunk): void; }; export declare type StreamWritableEvents = { close(): void; error(err: Error): void; }; export interface IStreamReadable extends IEventEmitter> { } export declare type StreamReadableLike = IStreamReadable | NodeJS.ReadableStream; export interface IStreamWritable extends IEventEmitter { write(chunk: Chunk, callback?: Function): boolean; write(chunk: Chunk, stringEncoding?: string, callback?: Function): boolean; } export declare type StreamWritableLike = IStreamWritable | NodeJS.WritableStream; export interface IStreamDuplex extends IEventEmitter & StreamWritableEvents> { write(chunk: WriteChunk, callback?: Function): boolean; write(chunk: WriteChunk, stringEncoding?: string, callback?: Function): boolean; } export declare type StreamDuplexLike = IStreamDuplex | NodeJS.ReadWriteStream; export declare function asReadableStream, Chunk = string | Uint8Array>(rstream: T): IStreamReadable; export declare function asWritableStream, Chunk = string | Uint8Array>(wstream: T): IStreamWritable; export declare function asDuplexStream, ReadChunk = string | Uint8Array, WriteChunk = string | Uint8Array>(rwstream: T): IStreamDuplex;