Have you ever wander into the "Advanced Types" section of the TS handbook, and wonder when on earth you actually need to use those?
In this talk, we'll be conquering the concepts of advanced types by building a schema builder library that constructs a schema object, and allows users to build "resolver" functions that operates on the output schema type.
Join us on this generics-fueled journey, and make use of concepts like conditional and distributive conditional types, mapped type, newtype patterns and more to build our schema builder.
You'll get tips on how to use generics as your building blocks when dealing with types, and how to make use of tools to assist you in your journey.
But in the end, do we really need advanced types to build those? Let's find out in the talk!
Poom is a developer advocate at BRIKL based in Bangkok, Thailand. Poom enjoys building silly apps with React, tinkers with cutting-edge stuff (e.g., Rust and WebAssembly), and customizes his dot-files for fun.
On other days, he runs community projects like The Stupid Hackathon Thailand and Young Creator's Camp to get Thai developers to keep hacking. Or, he's just relaxing at an Onsen bath in some corners of Bangkok.