Understanding Infer in TypeScript
blog.logrocket.com