import { ApplyInterface } from './apply.interface'; export interface ChainInterface extends ApplyInterface { /** * chain :: Chain m => m a ~> (a -> m b) -> m b * @param {(x: TValue) => TNewValue} f * @returns {ChainInterface} */ chain(f: (x: TValue) => ChainInterface): ChainInterface; }