# Will assume knowledge of

Passing type arguments to types
Passing type arguments to functions (useState etc)

# Will cover

- **Intro to type helpers - revisit LooseAutocomplete as a type helper**
- **Type argument constraints - Revisit AllOrNothing props as a type helper**
- **Intro to generic components**
- **Intro to generic hooks**
- **Generic class components**
- **Introduce passing type arguments to OUR OWN functions - useLocalStorage hook**
- **Manually passing type arguments to components**
- **Type argument inference flowing through multiple types (ButtonGroup)**

- **Compare generics to discriminated unions**

# Won't cover

- 'as' prop

- **React.ComponentType (lazy load component)** (covered in advanced patterns)
- Intro to const generics (covered in advanced patterns)
- readonly array with const generics (covered in advanced patterns)
