import { Effect } from "@effect/core/io/Effect/definition";
import { Either } from "@tsplus/stdlib/data/Either/definition";
/**
 * Performs the specified operation while "zoomed in" on the `Right` case of an
 * `Either`.
 * @tsplus fluent ets/Effect rightWith
 * @tsplus location "@effect/core/io/Effect/operations/rightWith"
 */
export declare function rightWith_<R, E, A, A1, B, B1, R1, E1>(self: Effect<R, E, Either<A, B>>, f: (effect: Effect<R, Either<A, E>, B>) => Effect<R1, Either<A1, E1>, B1>, __tsplusTrace?: string): Effect<R | R1, E | E1, Either<A1, B1>>;
/**
 * Performs the specified operation while "zoomed in" on the `Right` case of an
 * `Either`.
 * @tsplus static ets/Effect/Aspects rightWith
 * @tsplus pipeable ets/Effect rightWith
 * @tsplus location "@effect/core/io/Effect/operations/rightWith"
 */
export declare const rightWith: <R, E, A, A1, B, B1, R1, E1>(f: (effect: import("../definition").Effect<R, import("@tsplus/stdlib/data/Either").Either<A, E>, B>) => import("../definition").Effect<R1, import("@tsplus/stdlib/data/Either").Either<A1, E1>, B1>, __tsplusTrace?: string) => (self: import("../definition").Effect<R, E, import("@tsplus/stdlib/data/Either").Either<A, B>>) => import("../definition").Effect<R | R1, E | E1, import("@tsplus/stdlib/data/Either").Either<A1, B1>>;
//# sourceMappingURL=rightWith.d.ts.map