import { Arity1 } from '@typed/lambda' ; import { chain } from './chain' ; import { map } from './map' ; param fn param value returns export const ap = < A , B > ( fn , value ) : Promise < B > => chain ( ( f ) => map ( f , value ) , fn ) ;