import { Maybe } from "@tsplus/stdlib/data/Maybe/definition";
import { Effect } from "@effect/core/io/Effect/definition";
import { Chunk } from "@tsplus/stdlib/collections/Chunk/definition";
/**
 * Transforms all elements of the chunk for as long as the specified partial
 * function is defined.
 * @tsplus fluent Chunk collectWhileEffect
 * @tsplus location "@effect/core/collection/Chunk/operations/collectWhileEffect"
 */
export declare function collectWhileEffect_<A, R, E, B>(self: Chunk<A>, f: (a: A) => Maybe<Effect<R, E, B>>): Effect<R, E, Chunk<B>>;
/**
 * Transforms all elements of the chunk for as long as the specified partial
 * function is defined.
 * @tsplus static Chunk/Aspects collectWhileEffect
 * @tsplus pipeable Chunk collectWhileEffect
 * @tsplus location "@effect/core/collection/Chunk/operations/collectWhileEffect"
 */
export declare const collectWhileEffect: <A, R, E, B>(f: (a: A) => import("@tsplus/stdlib/data/Maybe").Maybe<import("../../../io/Effect").Effect<R, E, B>>) => (self: Chunk<A>) => import("../../../io/Effect").Effect<R, E, Chunk<B>>;
//# sourceMappingURL=collectWhileEffect.d.ts.map