import { TSet } from "@effect/core/stm/TSet/definition";
import { STM } from "@effect/core/stm/STM/definition/base";
/**
 * Atomically updates all elements using a transactional function.
 * @tsplus fluent ets/TSet transformSTM
 * @tsplus location "@effect/core/stm/TSet/operations/transformSTM"
 */
export declare function transformSTM_<A, R, E>(self: TSet<A>, f: (a: A) => STM<R, E, A>): STM<R, E, void>;
/**
 * Atomically updates all elements using a transactional function.
 * @tsplus static ets/TSet/Aspects transformSTM
 * @tsplus pipeable ets/TSet transformSTM
 * @tsplus location "@effect/core/stm/TSet/operations/transformSTM"
 */
export declare const transformSTM: <A, R, E>(f: (a: A) => import("../../STM").STM<R, E, A>) => (self: import("../definition").TSet<A>) => import("../../STM").STM<R, E, void>;
//# sourceMappingURL=transformSTM.d.ts.map