///
import * as T from "@effect-ts/core/Effect";
import * as S from "@effect-ts/core/Effect/Stream";
import * as Sink from "@effect-ts/core/Effect/Stream/Sink";
import type * as stream from "stream";
import * as Byte from "../Byte/index.js";
export declare class ReadableError {
readonly error: Error;
readonly _tag = "ReadableError";
constructor(error: Error);
}
/**
* Captures a Node `Readable`, converting it into a `Stream`,
*
* Note: your Readable should not have an encoding set in order to work with buffers,
* calling this with a Readable with an encoding setted with `Die`.
*/
export declare function streamFromReadable(r: () => stream.Readable): S.Stream;
export declare class WritableError {
readonly error: Error;
readonly _tag = "WritableError";
constructor(error: Error);
}
/**
* Captures a Node `Writable`, converting it into a `Sink`
*/
export declare function sinkFromWritable(w: () => stream.Writable): Sink.Sink;
export declare class TransformError {
readonly error: Error;
readonly _tag = "TransformError";
constructor(error: Error);
}
/**
* Captures a Node `Transform` for use with `Stream`
*/
export declare function transform(tr: () => stream.Transform): (stream: S.Stream) => S.Stream;
/**
* A sink that collects all of its inputs into an array.
*/
export declare function collectBuffer(): Sink.Sink;
/**
* Runs the stream and collects all of its elements to a buffer.
*/
export declare function runBuffer(self: S.Stream): T.Effect;
//# sourceMappingURL=index.d.ts.map