import { throwNIE } from '../../../throw' ; import { fmap } from '../1 - functor/maybe' ; import { Maybe } from '../1 - functor/maybe' ; import { of } from '../2 - applicative/maybe' ; export { Maybe , just , nothing } from '../1 - functor/maybe' ; export const flatten = < A > ( _mma ) : Maybe < A > => throwNIE ( ) ; export const chain = < A , B > ( _f ) => ( _ma ) : Maybe < B > => throwNIE ( ) ; export const maybe = { fmap , of , chain , flatten , } ;