type ComposableFunction = ( ... args : Array < any > ) => any ; function compose ( ... funcs ) { return funcs . reduce ( ( previousFunction , currentFunction ) => ( ... args ) : any => currentFunction ( previousFunction ( ... args ) ) ) ; } export { compose as default , } ;