/** * Premappable is a structure that allows a function to be applied * contravariantly inside of the associated concrete structure. * * @module Premappable * @since 2.0.0 */ import "./_dnt.polyfills.js"; import type { $, Hold, Kind } from "./kind.js"; import type { Mappable } from "./mappable.js"; /** * A Premappable structure has the method premap. * * @since 2.0.0 */ export interface Premappable extends Mappable, Hold { readonly premap: (fia: (l: L) => D) => (ua: $) => $; readonly dimap: (fld: (l: L) => D, fai: (a: A) => I) => (ua: $) => $; }