import { Schedule } from "@effect/core/io/Schedule/definition";
import { Tuple } from "@tsplus/stdlib/data/Tuple/definition";
/**
 * A backwards version of `compose`.
 * @tsplus operator ets/Schedule <<
 * @tsplus operator ets/Schedule/WithState <<
 * @tsplus fluent ets/Schedule composeUsing
 * @tsplus fluent ets/Schedule/WithState composeUsing
 * @tsplus location "@effect/core/io/Schedule/operations/composeUsing"
 */
export declare function composeUsing_<State, Env, In, Out, State1, Env1, In2>(self: Schedule<State, Env, In, Out>, that: Schedule<State1, Env1, In2, In>): Schedule<Tuple<[State1, State]>, Env | Env1, In2, Out>;
/**
 * A backwards version of `compose`.
 * @tsplus static ets/Schedule/Aspects composeUsing
 * @tsplus pipeable ets/Schedule composeUsing
 * @tsplus location "@effect/core/io/Schedule/operations/composeUsing"
 */
export declare const composeUsing: <In, State1, Env1, In2>(that: import("../definition").Schedule<State1, Env1, In2, In>) => <State, Env_1, Out>(self: import("../definition").Schedule<State, Env_1, In, Out>) => import("../definition").Schedule<import("@tsplus/stdlib/data/Tuple").Tuple<[State1, State]>, Env_1 | Env1, In2, Out>;
//# sourceMappingURL=composeUsing.d.ts.map