import { Chunk } from "@tsplus/stdlib/collections/Chunk/definition";
import { Effect } from "@effect/core/io/Effect/definition";
/**
 * Folds over the elements in this chunk from the left.
 * Stops the fold early when the condition is not fulfilled.
 * @tsplus fluent Chunk reduceWhileEffect
 * @tsplus location "@effect/core/collection/Chunk/operations/reduceWhileEffect"
 */
export declare function reduceWhileEffect_<A, R, E, S>(self: Chunk<A>, s: S, pred: (s: S) => boolean, f: (s: S, a: A) => Effect<R, E, S>, __tsplusTrace?: string): Effect<R, E, S>;
/**
 * Folds over the elements in this chunk from the left.
 * Stops the fold early when the condition is not fulfilled.
 * @tsplus static Chunk/Aspects reduceWhileEffect
 * @tsplus pipeable Chunk reduceWhileEffect
 * @tsplus location "@effect/core/collection/Chunk/operations/reduceWhileEffect"
 */
export declare const reduceWhileEffect: <A, R, E, S>(s: S, pred: (s: S) => boolean, f: (s: S, a: A) => import("../../../io/Effect").Effect<R, E, S>, __tsplusTrace?: string) => (self: import("@tsplus/stdlib/collections/Chunk/definition").Chunk<A>) => import("../../../io/Effect").Effect<R, E, S>;
//# sourceMappingURL=reduceWhileEffect.d.ts.map