import { IFlatMap } from "@effect/core/io/Effect/definition/primitives";
/**
 * Returns an effect that models the execution of this effect, followed by the
 * passing of its value to the specified continuation function `k`, followed
 * by the effect that it returns.
 *
 * @tsplus fluent ets/Effect flatMap
 */

export function flatMap_(self, f, __tsplusTrace) {
  return new IFlatMap(self, f, __tsplusTrace);
}
/**
 * Returns an effect that models the execution of this effect, followed by the
 * passing of its value to the specified continuation function `k`, followed
 * by the effect that it returns.
 *
 * @tsplus static ets/Effect/Aspects flatMap
 */

export const flatMap = (f, __tsplusTrace) => self => flatMap_(self, f, __tsplusTrace);
//# sourceMappingURL=flatMap.mjs.map