import { Base, Eval, Kind } from '@fp4ts/core'; import { Semigroup } from '@fp4ts/cats-kernel'; /** * @category Type Class */ export interface SemigroupK extends Base { combineK(y: Kind): (x: Kind) => Kind; combineK_(x: Kind, y: Kind): Kind; combineKEval(ey: Eval>): (x: Kind) => Eval>; combineKEval_(x: Kind, ey: Eval>): Eval>; algebra(): Semigroup>; dual(): SemigroupK; } export type SemigroupKRequirements = Pick, 'combineK_'> & Partial>; export declare const SemigroupK: Readonly<{ of: (F: SemigroupKRequirements) => SemigroupK; }>; //# sourceMappingURL=semigroup-k.d.ts.map