import { Schedule } from "@effect/core/io/Schedule/definition";
import { Effect } from "@effect/core/io/Effect/definition";
/**
 * Returns a new schedule that passes each input and output of this schedule
 * to the specified function, and then determines whether or not to continue
 * based on the return value of the function.
 * @tsplus fluent ets/Schedule checkEffect
 * @tsplus fluent ets/Schedule/WithState checkEffect
 * @tsplus location "@effect/core/io/Schedule/operations/checkEffect"
 */
export declare function checkEffect_<State, Env, In, Out, Env1>(self: Schedule<State, Env, In, Out>, test: (input: In, output: Out) => Effect<Env1, never, boolean>): Schedule<State, Env | Env1, In, Out>;
/**
 * Returns a new schedule that passes each input and output of this schedule
 * to the specified function, and then determines whether or not to continue
 * based on the return value of the function.
 * @tsplus static ets/Schedule/Aspects checkEffect
 * @tsplus pipeable ets/Schedule checkEffect
 * @tsplus location "@effect/core/io/Schedule/operations/checkEffect"
 */
export declare const checkEffect: <In, Out, Env1>(test: (input: In, output: Out) => import("../../Effect").Effect<Env1, never, boolean>) => <State, Env_1>(self: import("../definition").Schedule<State, Env_1, In, Out>) => import("../definition").Schedule<State, Env_1 | Env1, In, Out>;
//# sourceMappingURL=checkEffect.d.ts.map