import * as tsplus_module_1 from "@effect/core/io/Schedule/operations/contramap";
import * as tsplus_module_2 from "@effect/core/io/Schedule/operations/map";
/**
 * Returns a new schedule that contramaps the input and maps the output.
 *
 * @tsplus fluent ets/Schedule dimap
 * @tsplus fluent ets/Schedule/WithState dimap
 */

export function dimap_(self, f, g) {
  return tsplus_module_2.map_(tsplus_module_1.contramap_(self, f), g);
}
/**
 * Returns a new schedule that contramaps the input and maps the output.
 *
 * @tsplus static ets/Schedule/Aspects dimap
 */

export const dimap = (f, g) => self => dimap_(self, f, g);
//# sourceMappingURL=dimap.mjs.map