import { LazyArg } from "@tsplus/stdlib/data/Function";
import { Collection } from "@tsplus/stdlib/collections/Collection/definition";
import { STM } from "@effect/core/stm/STM/definition/base";
import { Chunk } from "@tsplus/stdlib/collections/Chunk/definition";
/**
 * Feeds elements of type `A` to `f` until it succeeds. Returns first success
 * or the accumulation of all errors.
 * @tsplus static ets/STM/Ops validateFirst
 * @tsplus location "@effect/core/stm/STM/operations/validateFirst"
 */
export declare function validateFirst<R, E, A, B>(as: LazyArg<Collection<A>>, f: (a: A) => STM<R, E, B>): STM<R, Chunk<E>, B>;
//# sourceMappingURL=validateFirst.d.ts.map