/*! * @zenfs/streams — https://npmjs.com/package/@zenfs/streams * Copyright © James Prevett and other ZenFS contributors. * SPDX-License-Identifier: LGPL-3.0-or-later */ /** * A modern polyfill for `node:stream`. * * This package exists to replace `readable-stream`, which accounts for most of `@zenfs/core`'s * dependency tree and has long-standing problems with its types and legacy code. * * Importing this module is what installs `Readable.prototype.compose`; everything else is * available from the individual modules too. * * @see https://github.com/zen-fs/core/issues/294 * * @module */ import { destroyer } from './destroy.js'; import { Duplex } from './duplex.js'; import { duplexPair } from './duplexpair.js'; import { eos, finished } from './end-of-stream.js'; import { Stream } from './legacy.js'; import { PassThrough } from './passthrough.js'; import { pipeline } from './pipeline.js'; import * as promises from './promises.js'; import { Readable } from './readable.js'; import { getDefaultHighWaterMark, setDefaultHighWaterMark } from './state.js'; import { Transform } from './transform.js'; import { isDestroyed, isDisturbed, isErrored, isReadable, isWritable } from './utils.js'; import { Writable } from './writable.js'; import { addAbortSignal } from './add-abort-signal.js'; import { compose } from './compose.js'; export { addAbortSignal } from './add-abort-signal.js'; export { compose } from './compose.js'; export { destroyer as destroy } from './destroy.js'; export { Duplex } from './duplex.js'; export { duplexPair } from './duplexpair.js'; export { eos } from './end-of-stream.js'; export { EventEmitter } from './events.js'; export { createBatchedAsyncIterator, normalizeAsyncValue, normalizeBatch, toAsyncStreamable, toStreamable } from './iter.js'; export { PassThrough } from './passthrough.js'; export { Readable, ReadableState } from './readable.js'; export { getDefaultHighWaterMark, setDefaultHighWaterMark } from './state.js'; export { StringDecoder } from './string_decoder.js'; export { Transform } from './transform.js'; export { isDestroyed, isDisturbed, isErrored, isReadable, isWritable } from './utils.js'; export { Writable, WritableState } from './writable.js'; export { promises }; export type { DuplexOptions } from './duplex.js'; export type { DuplexToWebOptions, ReadableToWebOptions, ReadableIteratorOptions, FinishedOptions, ReadableOperatorOptions, TransformCallback, } from 'node:stream'; export type { ReadableWritablePair } from 'node:stream/web'; export type { PipelineOptions } from 'node:stream/promises'; export type { FinishedCallback, FinishedPromiseOptions } from './end-of-stream.js'; export type { EventEmitterOptions, EventKey, Listener } from './events.js'; export type { PipelineCallback, PipelineStage } from './pipeline.js'; export type { ReadableOptions } from './readable.js'; export type { TransformOptions } from './transform.js'; export type { ChunkEncoding, WritableOptions, WriteCallback, WriteRequest } from './writable.js'; declare const kPromisifyCustom: unique symbol; declare const _finished: typeof eos & { [kPromisifyCustom]: typeof finished; __promisify__: typeof finished; }; declare const _pipeline: typeof pipeline & { [kPromisifyCustom]: typeof promises.pipeline; __promisify__: typeof promises.pipeline; }; export { _finished as finished, _pipeline as pipeline }; declare const _Stream: typeof Stream & { Stream: typeof Stream; Readable: typeof Readable; Writable: typeof Writable; Duplex: typeof Duplex; Transform: typeof Transform; PassThrough: typeof PassThrough; pipeline: typeof pipeline & { [kPromisifyCustom]: typeof promises.pipeline; __promisify__: typeof promises.pipeline; }; finished: typeof eos & { [kPromisifyCustom]: typeof finished; __promisify__: typeof finished; }; duplexPair: typeof duplexPair; addAbortSignal: typeof addAbortSignal; compose: typeof compose; destroy: typeof destroyer; getDefaultHighWaterMark: typeof getDefaultHighWaterMark; setDefaultHighWaterMark: typeof setDefaultHighWaterMark; isDestroyed: typeof isDestroyed; isDisturbed: typeof isDisturbed; isErrored: typeof isErrored; isReadable: typeof isReadable; isWritable: typeof isWritable; promises: typeof promises; }; export { _Stream as Stream }; export default _Stream;