/** * @since 2.0.0 */ import { HKT, Kind, Kind2, Kind3, URIS, URIS2, URIS3, URIS4, Kind4 } from './HKT' /** * @category model * @since 2.0.0 */ export interface Contravariant { readonly URI: F readonly contramap: (fa: HKT, f: (b: B) => A) => HKT } /** * @category model * @since 2.0.0 */ export interface Contravariant1 { readonly URI: F readonly contramap: (fa: Kind, f: (b: B) => A) => Kind } /** * @category model * @since 2.0.0 */ export interface Contravariant2 { readonly URI: F readonly contramap: (fa: Kind2, f: (b: B) => A) => Kind2 } /** * @category model * @since 2.0.0 */ export interface Contravariant2C { readonly URI: F readonly _E: E readonly contramap: (fa: Kind2, f: (b: B) => A) => Kind2 } /** * @category model * @since 2.0.0 */ export interface Contravariant3 { readonly URI: F readonly contramap: (fa: Kind3, f: (b: B) => A) => Kind3 } /** * @category model * @since 2.2.0 */ export interface Contravariant3C { readonly URI: F readonly _E: E readonly contramap: (fa: Kind3, f: (b: B) => A) => Kind3 } /** * @category model * @since 2.0.0 */ export interface Contravariant4 { readonly URI: F readonly contramap: (fa: Kind4, f: (b: B) => A) => Kind4 }