import * as tsplus_module_1 from "@effect/core/stream/Channel/operations/zipRight";
import { concreteStream, StreamInternal } from "@effect/core/stream/Stream/operations/_internal/StreamInternal";
/**
 * Concatenates the specified stream with this stream, resulting in a stream
 * that emits the elements from this stream and then the elements from the
 * specified stream.
 *
 * @tsplus operator ets/Stream +
 * @tsplus fluent ets/Stream concat
 */

export function concat_(self, that, __tsplusTrace) {
  void 0;
  return new StreamInternal(tsplus_module_1.zipRight_(self.channel, () => {
    const that0 = that();
    void 0;
    return that0.channel;
  }));
}
/**
 * Concatenates the specified stream with this stream, resulting in a stream
 * that emits the elements from this stream and then the elements from the
 * specified stream.
 */

export const concat = (that, __tsplusTrace) => self => concat_(self, that, __tsplusTrace);
//# sourceMappingURL=concat.mjs.map