import { LazyArg } from "@tsplus/stdlib/data/Function";
import { Sink } from "@effect/core/stream/Sink/definition/base";
/**
 * Creates a sink that folds elements of type `In` into a structure of type
 * `S` until `max` elements have been folded.
 *
 * Like `foldWeighted`, but with a constant cost function of 1.
 * @tsplus static ets/Sink/Ops foldUntil
 * @tsplus location "@effect/core/stream/Sink/operations/foldUntil"
 */
export declare function foldUntil<In, S>(z: LazyArg<S>, max: number, f: (s: S, input: In) => S, __tsplusTrace?: string): Sink<never, never, In, In, S>;
//# sourceMappingURL=foldUntil.d.ts.map