import { HKT } from "@tsplus/stdlib/prelude/HKT"; import { Covariant } from "@tsplus/stdlib/prelude/Covariant"; import { IdentityBoth } from "@tsplus/stdlib/prelude/IdentityBoth"; import type { CovariantComposition } from "@tsplus/stdlib/prelude/Covariant"; /** * @tsplus type ForEach */ export type ForEach = { readonly Law: { readonly ForEach: "ForEach"; }; readonly forEachF: ForEach.Fn; } & Covariant; /** * @tsplus type ForEach/Ops */ export interface ForEachOps { } export declare const ForEach: ForEachOps; /** * @tsplus type ForEachComposition */ export type ForEachComposition = { readonly Law: { readonly ForEach: "ForEach"; }; readonly forEachF: ForEach.CompositionFn; } & CovariantComposition; export declare namespace ForEach { interface Fn { (G: IdentityBoth & Covariant): (f: (a: A) => HKT.Kind) => (fa: HKT.Kind) => HKT.Kind>; } interface Fn_ { (fa: HKT.Kind, G: IdentityBoth & Covariant): (f: (a: A) => HKT.Kind) => HKT.Kind>; } interface CompositionFn { (H: IdentityBoth & Covariant): (f: (a: A) => HKT.Kind) => (fa: HKT.Kind>) => HKT.Kind>>; } } /** * @tsplus static ForEach/Ops implementForEachF * @tsplus location "@tsplus/stdlib/prelude/ForEach" */ export declare function implementForEachF(): (i: (_: { A: A; B: B; G: G; N: N; R: R; E: E; }) => (G: IdentityBoth & Covariant) => (f: (a: A) => HKT.Kind) => (fa: HKT.Kind) => HKT.Kind>) => ForEach.Fn; /** * @tsplus static ForEach/Ops getComposition * @tsplus location "@tsplus/stdlib/prelude/ForEach" */ export declare function getComposition(F_: ForEach, G_: ForEach): ForEachComposition; /** * @tsplus static ForEach/Ops sequenceF * @tsplus location "@tsplus/stdlib/prelude/ForEach" */ export declare function sequenceF(T: ForEach): (App: import("@tsplus/stdlib/prelude/Covariant").Covariant & import("./AssociativeBoth").AssociativeBoth & import("./Any").Any) => (_: import("./HKT").HKT.Kind>) => import("./HKT").HKT.Kind>; //# sourceMappingURL=ForEach.d.ts.map