/**
 * Lightweight runtime type guards shared across modules.
 *
 * Keep this file dependency-free to maximize deduping in bundled builds.
 */
export function isReadableStream(value) {
    return !!value && typeof value === "object" && typeof value.getReader === "function";
}
export function isWritableStream(value) {
    return !!value && typeof value === "object" && typeof value.getWriter === "function";
}
export function isAsyncIterable(value) {
    return (!!value &&
        (typeof value === "object" || typeof value === "function") &&
        typeof value[Symbol.asyncIterator] === "function");
}
export function isTransformStream(value) {
    return (!!value &&
        typeof value === "object" &&
        !!value.readable &&
        !!value.writable &&
        isReadableStream(value.readable) &&
        isWritableStream(value.writable));
}
