PHP WebShell

Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@celo/contractkit/node_modules/fp-ts/es6

Просмотр файла: Monoid.d.ts

import { Bounded } from './Bounded';
import { Endomorphism } from './function';
import { Semigroup } from './Semigroup';
/**
 * @since 2.0.0
 */
export interface Monoid<A> extends Semigroup<A> {
    readonly empty: A;
}
/**
 * Boolean monoid under conjunction
 * @since 2.0.0
 */
export declare const monoidAll: Monoid<boolean>;
/**
 * Boolean monoid under disjunction
 * @since 2.0.0
 */
export declare const monoidAny: Monoid<boolean>;
/**
 * Number monoid under addition
 * @since 2.0.0
 */
export declare const monoidSum: Monoid<number>;
/**
 * Number monoid under multiplication
 * @since 2.0.0
 */
export declare const monoidProduct: Monoid<number>;
/**
 * @since 2.0.0
 */
export declare const monoidString: Monoid<string>;
/**
 * @since 2.0.0
 */
export declare const monoidVoid: Monoid<void>;
/**
 * @since 2.0.0
 */
export declare function fold<A>(M: Monoid<A>): (as: Array<A>) => A;
/**
 * Given a tuple of monoids returns a monoid for the tuple
 *
 * @example
 * import { getTupleMonoid, monoidString, monoidSum, monoidAll } from 'fp-ts/lib/Monoid'
 *
 * const M1 = getTupleMonoid(monoidString, monoidSum)
 * assert.deepStrictEqual(M1.concat(['a', 1], ['b', 2]), ['ab', 3])
 *
 * const M2 = getTupleMonoid(monoidString, monoidSum, monoidAll)
 * assert.deepStrictEqual(M2.concat(['a', 1, true], ['b', 2, false]), ['ab', 3, false])
 *
 * @since 2.0.0
 */
export declare function getTupleMonoid<T extends Array<Monoid<any>>>(...monoids: T): Monoid<{
    [K in keyof T]: T[K] extends Semigroup<infer A> ? A : never;
}>;
/**
 * @since 2.0.0
 */
export declare function getDualMonoid<A>(M: Monoid<A>): Monoid<A>;
/**
 * @since 2.0.0
 */
export declare function getFunctionMonoid<M>(M: Monoid<M>): <A = never>() => Monoid<(a: A) => M>;
/**
 * @since 2.0.0
 */
export declare function getEndomorphismMonoid<A = never>(): Monoid<Endomorphism<A>>;
/**
 * @since 2.0.0
 */
export declare function getStructMonoid<O extends {
    [key: string]: any;
}>(monoids: {
    [K in keyof O]: Monoid<O[K]>;
}): Monoid<O>;
/**
 * @since 2.0.0
 */
export declare function getMeetMonoid<A>(B: Bounded<A>): Monoid<A>;
/**
 * @since 2.0.0
 */
export declare function getJoinMonoid<A>(B: Bounded<A>): Monoid<A>;

Выполнить команду


Для локальной разработки. Не используйте в интернете!