import { Sink } from "@effect/core/stream/Sink/definition/base";
import { LazyArg } from "@tsplus/stdlib/data/Function";
import { Env } from "@tsplus/stdlib/service/Env";
/**
 * Provides the sink with its required environment, which eliminates its
 * dependency on `R`.
 * @tsplus fluent ets/Sink provideEnvironment
 * @tsplus location "@effect/core/stream/Sink/operations/provideEnvironment"
 */
export declare function provideEnvironment_<R, E, In, L, Z>(self: Sink<R, E, In, L, Z>, env: LazyArg<Env<R>>, __tsplusTrace?: string): Sink<never, E, In, L, Z>;
/**
 * Provides the sink with its required environment, which eliminates its
 * dependency on `R`.
 * @tsplus static ets/Sink/Aspects provideEnvironment
 * @tsplus pipeable ets/Sink provideEnvironment
 * @tsplus location "@effect/core/stream/Sink/operations/provideEnvironment"
 */
export declare const provideEnvironment: <R>(env: import("@tsplus/stdlib/data/Function").LazyArg<import("@tsplus/stdlib/service/Env").Env<R>>, __tsplusTrace?: string) => <E, In, L, Z>(self: import("../definition").Sink<R, E, In, L, Z>) => import("../definition").Sink<never, E, In, L, Z>;
//# sourceMappingURL=provideEnvironment.d.ts.map