UNPKG

typed-dom

Version:

A value-level and type-level DOM builder.

11 lines (10 loc) 426 B
import { Applicative } from './applicative'; export declare abstract class Monad<a> extends Applicative<a> { abstract bind<b>(f: (a: a) => Monad<b>): Monad<b>; abstract join(this: Monad<Monad<a>>): Monad<a>; } export declare namespace Monad { function Return<a>(a: a): Monad<a>; function bind<a, b>(f: (a: a) => Monad<b>, m: Monad<a>): Monad<b>; function sequence<a>(fm: Monad<a>[]): Monad<Iterable<a>>; }