diff --git a/doc/api/stream.md b/doc/api/stream.md index 79f524c152f3ce..26734fad48b40e 100644 --- a/doc/api/stream.md +++ b/doc/api/stream.md @@ -1966,6 +1966,34 @@ added: REPLACEME Returns whether the stream has been read from or cancelled. +### `stream.Duplex.from(src)` + + +* `src` {Stream|Blob|ArrayBuffer|string|Iterable|AsyncIterable| + AsyncGeneratorFunction|AsyncFunction|Promise|Object} + +A utility method for creating duplex streams. + +* `Stream` converts writable stream into writable `Duplex` and readable stream + to `Duplex`. +* `Blob` converts into readable `Duplex`. +* `string` converts into readable `Duplex`. +* `ArrayBuffer` converts into readable `Duplex`. +* `AsyncIterable` converts into a readable `Duplex`. Cannot yield + `null`. +* `AsyncGeneratorFunction` converts into a readable/writable transform + `Duplex`. Must take a source `AsyncIterable` as first parameter. Cannot yield + `null`. +* `AsyncFunction` converts into a writable `Duplex`. Must return + either `null` or `undefined` +* `Object ({ writable, readable })` converts `readable` and + `writable` into `Stream` and then combines them into `Duplex` where the + `Duplex` will write to the `writable` and read from the `readable`. +* `Promise` converts into readable `Duplex`. Value `null` is ignored. +* Returns: {stream.Duplex} + ### `stream.addAbortSignal(signal, stream)`