import { Sink } from "@effect/core/stream/Sink/definition/base";
/**
 * Transforms both inputs and result of this sink using the provided
 * functions.
 * @tsplus fluent ets/Sink dimap
 * @tsplus location "@effect/core/stream/Sink/operations/dimap"
 */
export declare function dimap_<R, E, In, In1, L, Z, Z1>(self: Sink<R, E, In, L, Z>, f: (input: In1) => In, g: (z: Z) => Z1, __tsplusTrace?: string): Sink<R, E, In1, L, Z1>;
/**
 * Transforms both inputs and result of this sink using the provided
 * functions.
 * @tsplus static ets/Sink/Aspects dimap
 * @tsplus pipeable ets/Sink dimap
 * @tsplus location "@effect/core/stream/Sink/operations/dimap"
 */
export declare const dimap: <In, In1, Z, Z1>(f: (input: In1) => In, g: (z: Z) => Z1, __tsplusTrace?: string) => <R, E, L>(self: import("../definition").Sink<R, E, In, L, Z>) => import("../definition").Sink<R, E, In1, L, Z1>;
//# sourceMappingURL=dimap.d.ts.map