import { TArray } from "@effect/core/stm/TArray/definition";
import { STM } from "@effect/core/stm/STM/definition/base";
/**
 * Atomically evaluate the conjunction of a transactional predicate across the
 * members of the array.
 * @tsplus fluent ets/TArray forAllSTM
 * @tsplus location "@effect/core/stm/TArray/operations/forAllSTM"
 */
export declare function forAllSTM_<E, A>(self: TArray<A>, f: (a: A) => STM<never, E, boolean>): STM<never, E, boolean>;
/**
 * Atomically evaluate the conjunction of a transactional predicate across the
 * members of the array.
 * @tsplus static ets/TArray/Aspects forAllSTM
 * @tsplus pipeable ets/TArray forAllSTM
 * @tsplus location "@effect/core/stm/TArray/operations/forAllSTM"
 */
export declare const forAllSTM: <E, A>(f: (a: A) => import("../../STM").STM<never, E, boolean>) => (self: import("../definition").TArray<A>) => import("../../STM").STM<never, E, boolean>;
//# sourceMappingURL=forAllSTM.d.ts.map