import * as tsplus_module_1 from "@effect/core/io/Fiber/operations/interrupt";
import * as tsplus_module_2 from "@effect/core/io/Effect/operations/forkDaemon";
import * as tsplus_module_3 from "@effect/core/io/Effect/operations/unit";
/**
 * Interrupts the fiber from whichever fiber is calling this method. The
 * interruption will happen in a separate daemon fiber, and the returned
 * effect will always resume immediately without waiting.
 *
 * @tsplus fluent ets/Fiber interruptFork
 * @tsplus fluent ets/RuntimeFiber interruptFork
 */

export function interruptFork(self, __tsplusTrace) {
  return tsplus_module_3.unit_(tsplus_module_2.forkDaemon(tsplus_module_1.interrupt(self, __tsplusTrace), __tsplusTrace), __tsplusTrace);
}
//# sourceMappingURL=interruptFork.mjs.map