How do you type a higher order function in TypeScript?
•The problem, solution, and story behind me figuring this out. Expect to learn TypeScript's generics, function types, Parameters and ReturnType utility, and inference if you pay attention to ReturnPromiseType