import { Stream } from "@effect/core/stream/Stream/definition";
import { LazyArg } from "@tsplus/stdlib/data/Function";
import { Layer } from "@effect/core/io/Layer/definition";
/**
 * Splits the environment into two parts, providing one part using the
 * specified layer and leaving the remainder.
 * @tsplus fluent ets/Stream provideSomeLayer
 * @tsplus location "@effect/core/stream/Stream/operations/provideSomeLayer"
 */
export declare function provideSomeLayer_<R, E, A, R1, E1, A1>(self: Stream<R, E, A>, layer: LazyArg<Layer<R1, E1, A1>>, __tsplusTrace?: string): Stream<R1 | Exclude<R, A1>, E | E1, A>;
/**
 * Splits the environment into two parts, providing one part using the
 * specified layer and leaving the remainder.
 * @tsplus static ets/Stream/Aspects provideSomeLayer
 * @tsplus pipeable ets/Stream provideSomeLayer
 * @tsplus location "@effect/core/stream/Stream/operations/provideSomeLayer"
 */
export declare const provideSomeLayer: <R1, E1, A1>(layer: import("@tsplus/stdlib/data/Function").LazyArg<import("../../../io/Layer").Layer<R1, E1, A1>>, __tsplusTrace?: string) => <R, E, A>(self: import("../definition").Stream<R, E, A>) => import("../definition").Stream<R1 | Exclude<R, A1>, E | E1, A>;
//# sourceMappingURL=provideSomeLayer.d.ts.map