import { Layer } from "@effect/core/io/Layer/definition";
/**
 * Feeds the output services of this builder into the input of the specified
 * builder, resulting in a new builder with the inputs of this builder as
 * well as any leftover inputs, and the outputs of the specified builder.
 * @tsplus operator ets/Layer >>
 * @tsplud fluent ets/Layer to
 * @tsplus location "@effect/core/io/Layer/operations/to"
 */
export declare function to_<RIn, E, ROut, RIn2, E2, ROut2>(self: Layer<RIn, E, ROut>, that: Layer<RIn2, E2, ROut2>): Layer<RIn | Exclude<RIn2, ROut>, E | E2, ROut2>;
/**
 * Feeds the output services of this builder into the input of the specified
 * builder, resulting in a new builder with the inputs of this builder as
 * well as any leftover inputs, and the outputs of the specified builder.
 *
 * @tsplus static ets/Layer/Aspects to
 */
export declare const to: <RIn2, E2, ROut2>(that: import("@effect/core/io/Layer/definition").Layer<RIn2, E2, ROut2>) => <RIn, E, ROut>(self: import("@effect/core/io/Layer/definition").Layer<RIn, E, ROut>) => import("@effect/core/io/Layer/definition").Layer<RIn | Exclude<RIn2, ROut>, E | E2, ROut2>;
//# sourceMappingURL=to.d.ts.map