import { Effect } from "@effect/core/io/Effect/definition";
import { Scope } from "@effect/core/io/Scope/definition";
import { Maybe } from "@tsplus/stdlib/data/Maybe/definition";
import { Chunk } from "@tsplus/stdlib/collections/Chunk/definition";
import { Tuple } from "@tsplus/stdlib/data/Tuple/definition";
import { Either } from "@tsplus/stdlib/data/Either/definition";
import { Sink } from "@effect/core/stream/Sink/definition/base";
import { Channel } from "@effect/core/stream/Channel/definition/base";
/**
 * Creates a sink from a chunk processing function.
 * @tsplus static ets/Sink/Ops fromPush
 * @tsplus location "@effect/core/stream/Sink/operations/fromPush"
 */
export declare function fromPush<R, E, In, L, Z>(push: Effect<R | Scope, never, (input: Maybe<Chunk<In>>) => Effect<R, Tuple<[Either<E, Z>, Chunk<L>]>, void>>, __tsplusTrace?: string): Sink<R, E, In, L, Z>;
//# sourceMappingURL=fromPush.d.ts.map