And this is it for this module.
We had a look at some advanced typescript features that can come in handy in applications and like with
all the other concepts you already learn about.
Of course we will have a project where we see many of these things in action so that you don't just
learn them here in theory but you also see them applied in a real project.
Nonetheless I hope the concepts taught here are pretty clear and dairy use as clear as well and why
you might want to use some of these patterns because features like intersection types function overloads
type guards in various variations with different approaches to find out which type something has that
discriminated union's pattern ends on.
These are all interesting patterns said can help you improve your code your code quality and make your
intentions clearer.
Type costing can be super important to get proper types of support and make sure that you can really
work with types in the best possible way and get the best possible type checking.
And with that let's move on to our modules and see what else typescript has in store for us.
As I mentioned will of course also see many of these concepts being applied in a real project and in
general throughout this course.