Hacker News post about this: https://news.ycombinator.com/item?id=39309783 (source available)
3 points
Agree. What I linked provides core type support for that library. The pipe one is just a bunch of overloads to support a specific way of handling function composition to appease the TypeScript type checker.
There are a lot of typing hacks in that library to simulate higher kinded types.