import type { Apply2, ApplyMin } from './Apply'; import type { MonoidalFunctorMin } from './MonoidalFunctor'; import type { Pure, Pure2, PureFn, PureMin } from './Pure'; import type { Unit, Unit2, UnitMin } from './Unit'; import { Apply } from './Apply'; import * as HKT from './HKT'; /** * A lax monoidal endofunctor * * `Applicative` is isomorphic to `MonoidalFunctor` */ export interface Applicative extends Apply, Unit, Pure { } export declare type ApplicativeMin = (ApplyMin & (PureMin | UnitMin)) | (ApplyMin & PureMin & UnitMin) | (MonoidalFunctorMin & PureMin) | MonoidalFunctorMin; export declare function Applicative(F: ApplicativeMin): Applicative; export interface Applicative2 extends Apply2, Unit2, Pure2 { } export declare function getApplicativeComposition(F: Applicative, G: Applicative): Applicative2; export declare function pureF(F: ApplicativeMin): PureFn; //# sourceMappingURL=Applicative.d.ts.map