(typeof stream?.writable !== "boolean") return null; if (isDestroyed(stream)) return !1; return isWritableNodeStream(stream) && stream.writable && !isWritableEnded(stream); } function isFinished(stream, opts) { if (!isNodeStream(stream)) return null; if (isDestroyed(stream)) return !0; if (opts?.readable !== !1 && isReadable(stream)) return !1; if (opts?.writable !== !1 && isWritable(stream)) return !1; return !0; } function isWritableErrored(stream) { if (!isNodeStream(stream)) return null; if (stream.writableErrored) return stream.writableErrored; return stream._writableState?.errored ?? null; } function isReadableErrored(stream) { if (!isNodeStream(stream)) return null; if (stream.readableErrored) return stream.readableErrored; return stream._readableState?.errored ?? null; } function isClosed(stream) { if (!isNodeStream(stream)) return null; if (typeof stream.closed === "boolean") return stream.closed; let { _writableState: wState, _readableState: rState } = stream; if (typeof wState?.closed === "boolean" || typeof rState?.closed === "boolean") return wState?.closed || rState?.closed; if (typeof stream._closed === "boolean" && isOutgoingMessage(stream)) return stream._closed; return null; } function isOutgoingMessage(stream) { return typeof stream._closed === "boolean" && typeof stream._defaultKeepAlive === "boolean" && typeof stream._removedConnection === "boolean" && typeof stream._removedContLen === "boolean"; } function isServerResponse(stream) { return typeof stream._sent100 === "boolean" && isOutgoingMessage(stream); } function isServerRequest(stream) { return typeof stream._consuming === "boolean" && typeof stream._dumped === "boolean" && stream.req?.upgradeOrConnect === @undefined; } function willEmitClose(stream) { if (!isNodeStream(stream)) return null; let { _writableState: wState, _readableState: rState } = stream, state = wState || rState; return !state && isServerResponse(stream) || !!(state?.autoDestroy && state.emitClose && state.closed === !1); } function isDisturbed(stream) { return !!(stream && (stream[kIsDisturbed] ?? (stream.readableDidRead || stream.readableAborted))); } function isErrored(stream) { return !!(stream && (stream[kIsErrored] ?? stream.readableErrored ?? stream.writableErrored ?? stream._readableState?.errorEmitted ?? stream._writableState?.errorEmitted ?? stream._readableState?.errored ?? stream._writableState?.errored)); } $ = { kOnConstructed, isDestroyed, kIsDestroyed, isDisturbed, kIsDisturbed, isErrored, kIsErrored, isReadable, kIsReadable, kIsClosedPromise, kControllerErrorFunction, kIsWritable, isClosed, isDuplexNodeStream, isFinished, isIterable, isReadableNodeStream, isReadableStream, isReadableEnded, isReadableFinished, isReadableErrored, isNodeStream, isWebStream, isWritable, isWritableNodeStream, isWritableStream, isWritableEnded, isWritableFinished, isWritableErrored, isServerRequest, isServerResponse, willEmitClose, isTransformStream, kState, kObjectMode, kErrorEmitted, kAutoDestroy, kEmitClose, kDestroyed, kClosed, kCloseEmitted, kErrored, kConstructed }; return $})