import type * as HKT from './HKT'; /** * `Unit` describes the `unit` function, which is a natural transformation from the identity * of the `syntactic category` of the language, in this case `void`, to a `Functor` */ export interface Unit extends HKT.Base { readonly unit: UnitFn; } export declare type UnitMin = { readonly unit: UnitFn; }; export interface Unit2 { readonly unit: UnitFn2; } export interface UnitFn { , K = HKT.Initial, Q = HKT.Initial, W = HKT.Initial, X = HKT.Initial, I = HKT.Initial, S = HKT.Initial, R = HKT.Initial, E = HKT.Initial>(): HKT.Kind; } export interface UnitFn2 { , KF = HKT.Initial, QF = HKT.Initial, WF = HKT.Initial, XF = HKT.Initial, IF = HKT.Initial, SF = HKT.Initial, RF = HKT.Initial, EF = HKT.Initial, NG extends string = HKT.Initial, KG = HKT.Initial, QG = HKT.Initial, WG = HKT.Initial, XG = HKT.Initial, IG = HKT.Initial, SG = HKT.Initial, RG = HKT.Initial, EG = HKT.Initial>(): HKT.Kind>; } //# sourceMappingURL=Unit.d.ts.map