import * as tsplus_module_1 from "@effect/core/stm/TReentrantLock/operations/TReentrantLock/withWriteLock";
/**
 * Runs the specified workflow with a lock.
 *
 * @tsplus fluent ets/TReentrantLock withLock
 */

export function withLock_(self, effect, __tsplusTrace) {
  return tsplus_module_1.withWriteLock_(self, effect, __tsplusTrace);
}
/**
 * Runs the specified workflow with a write lock.
 *
 * @tsplus static ets/TReentrantLock/Aspects withLock
 */

export const withLock = (effect, __tsplusTrace) => self => withLock_(self, effect, __tsplusTrace);
//# sourceMappingURL=withLock.mjs.map