"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.foldCauseChannel = void 0;
exports.foldCauseChannel_ = foldCauseChannel_;

var _primitives = /*#__PURE__*/require("@effect/core/stream/Channel/definition/primitives");

/**
 * Fold the channel exposing success and full error cause.
 *
 * @tsplus fluent ets/Channel foldCauseChannel
 */
function foldCauseChannel_(self, onErr, onSucc) {
  return new _primitives.Fold(self, new _primitives.ContinuationK(onSucc, onErr));
}
/**
 * Fold the channel exposing success and full error cause.
 *
 * @tsplus static ets/Channel/Aspects foldCauseChannel
 */


const foldCauseChannel = (onErr, onSucc) => self => foldCauseChannel_(self, onErr, onSucc);

exports.foldCauseChannel = foldCauseChannel;
//# sourceMappingURL=foldCauseChannel.js.map