import { IFold } from "@effect/core/io/Effect/definition/primitives";
/**
 * A more powerful version of `foldEffect` that allows recovering from any kind
 * of failure except interruptions.
 *
 * @tsplus fluent ets/Effect foldCauseEffect
 */

export function foldCauseEffect_(self, failure, success, __tsplusTrace) {
  return new IFold(self, failure, success, __tsplusTrace);
}
/**
 * A more powerful version of `foldEffect` that allows recovering from any kind
 * of failure except interruptions.
 *
 * @tsplus static ets/Effect/Aspects foldCauseEffect
 */

export const foldCauseEffect = (failure, success, __tsplusTrace) => self => foldCauseEffect_(self, failure, success, __tsplusTrace);
//# sourceMappingURL=foldCauseEffect.mjs.map