import { LazyArg } from "@tsplus/stdlib/data/Function";
import { Effect } from "@effect/core/io/Effect/definition";
import { Tuple } from "@tsplus/stdlib/data/Tuple/definition";
import { Chunk } from "@tsplus/stdlib/collections/Chunk/definition";
import { Maybe } from "@tsplus/stdlib/data/Maybe/definition";
import { Stream } from "@effect/core/stream/Stream/definition";
import { Channel } from "@effect/core/stream/Channel/definition/base";
/**
 * Like `unfoldChunkEffect`, but allows the emission of values to end one step
 * further than the unfolding of the state. This is useful for embedding
 * paginated APIs, hence the name.
 * @tsplus static ets/Stream/Ops paginateChunkEffect
 * @tsplus location "@effect/core/stream/Stream/operations/paginateChunkEffect"
 */
export declare function paginateChunkEffect<S, R, E, A>(s: LazyArg<S>, f: (s: S) => Effect<R, E, Tuple<[Chunk<A>, Maybe<S>]>>, __tsplusTrace?: string): Stream<R, E, A>;
//# sourceMappingURL=paginateChunkEffect.d.ts.map