Now I just some way to use it with TypeScript! Unfortunately, it seems support for Higher Kindred Types is lacking. Apparently you can use some neat trick to kinda fake HKTs in Flow, but not in TypeScript, due to its lack of nominal typing. (I don't know the details, though.)