import type { Effect } from "../../../../Effect/effect";
import * as Tp from "../../Tuple";
import * as Chunk from "../core";
/**
 * Statefully and effectfully maps over the elements of this chunk to produce
 * new elements.
 */
export declare function mapAccumM_<A, B, R, E, S>(self: Chunk.Chunk<A>, s: S, f: (s: S, a: A) => Effect<R, E, Tp.Tuple<[S, B]>>): Effect<R, E, Tp.Tuple<[S, Chunk.Chunk<B>]>>;
/**
 * Statefully and effectfully maps over the elements of this chunk to produce
 * new elements.
 *
 * @ets_data_first mapAccumM_
 */
export declare function mapAccumM<A, B, R, E, S>(s: S, f: (s: S, a: A) => Effect<R, E, Tp.Tuple<[S, B]>>): (self: Chunk.Chunk<A>) => Effect<R, E, Tp.Tuple<[S, Chunk.Chunk<B>]>>;
//# sourceMappingURL=mapAccumM.d.ts.map