import { default as Monad } from '../../interface/Monad'; import { default as Semigroup } from '../../interface/Semigroup'; import { default as Setoid } from '../../interface/Setoid'; declare class Identity implements Setoid, Semigroup, Monad { private _value; constructor(value: A); static of(v: C): Identity; of(v: C): Identity; getValue(): A; equals(j: Identity): boolean; concat(i: Identity): Identity; ap(i: Identity): Identity; map(f: (a: A) => B): Identity; chain(f: (a: A) => Identity): Identity; toString(): string; } export default Identity;