Explore Library
TypeScriptAdvanced Types

93 items

1

Mapped Types

Slides / Video
2

The infer Keyword Explained

Slides / Video
3

Conditional Types

Slides / Video
4

Indexed Access Types

Slides / Video
5

The keyof Type Operator

Slides / Video
6

The typeof Type Operator

Slides / Video
7

User-Defined Type Guards

Slides / Video
8

Type Guards and Narrowing

Slides / Video
9

Discriminated Unions

Slides / Video
10

Type Aliases in TypeScript

Slides / Video
11

Literal Types in TypeScript

Slides / Video
12

Intersection Types in TypeScript

Slides / Video
13

Union Types in TypeScript

Slides / Video
14

Branded Types via Intersection

Slides / Video
15

const Assertions in TypeScript

Slides / Video
16

Assertion Functions

Slides / Video
17

The unknown Type and Safe Narrowing

Slides / Video
18

The never Type in Advanced Contexts

Slides / Video
19

Distributive Conditional Types

Slides / Video
20

Recursive Types in TypeScript

Slides / Video
21

Advanced Utility Types

Slides / Video
22

TypeScript Utility Types Essentials

Slides / Video
23

Template Literal Types

Slides / Video
24

Key Remapping with as Clause

Slides / Video
25

Extracting Array Element Type

Code Quiz
26

Removing Optional Modifier

Code Quiz
27

Building Template Literal Types

Code Quiz
28

Distributive Conditional Over Union

Code Quiz
29

Conditional Type Syntax

Code Quiz
30

Intrinsic String Manipulation Type

Code Quiz
31

Mapped Type Iteration

Code Quiz
32

Unexpected Distribution Over a Union

Code Quiz
33

Overload Order Shadows the Specific Case

Code Quiz
34

Misplaced this Parameter

Code Quiz
35

satisfies With the Wrong Constraint

Code Quiz
36

Variadic Tuple Missing a Spread

Code Quiz
37

Mixing Named and Unnamed Tuple Elements

Code Quiz
38

Recursive Type That Never Terminates

Code Quiz
39

Intersecting Conflicting Property Types

Code Quiz
40

Utility Type: Partial

Code Quiz
41

Lookup with Union Keys

Code Quiz
42

Utility Type: Required

Code Quiz
43

Utility Type: Omit

Code Quiz
44

Utility Type: Pick

Code Quiz
45

Utility Type: Readonly

Code Quiz
46

typeof Type Operator

Code Quiz
47

Indexed Access Types

Code Quiz
48

typeof String With Wrong Casing

Code Quiz
49

Assertion Function Uses Wrong Signature

Code Quiz
50

Reversed in Operator Branches

Code Quiz
51

Exhaustiveness Check Misses a Case

Code Quiz
52

Type Guard Missing the Predicate

Code Quiz
53

Swapped instanceof Branches

Code Quiz
54

Missing const Assertion Widens Literal

Code Quiz
55

Wrong Property in Union Branch

Code Quiz
56

NonNullable Takes One Argument

Code Quiz
57

Exclude Argument Order

Code Quiz
58

Extract vs Exclude

Code Quiz
59

ReturnType Needs typeof

Code Quiz
60

Record Needs Two Type Arguments

Code Quiz
61

Parameters Needs typeof

Code Quiz
62

InstanceType Needs the Constructor

Code Quiz
63

Awaited Unwraps the Promise

Code Quiz
64

Utility Type: Pick

Quiz
65

Utility Type: Omit

Quiz
66

Branded / Nominal Types

Quiz
67

Function Overloads Resolution

Quiz
68

const Assertions

Quiz
69

The satisfies Operator

Quiz
70

Recursive Types

Quiz
71

Variadic Tuple Types

Quiz
72

Assertion Functions

Quiz
73

Discriminated Unions

Quiz
74

The in Operator Narrowing

Quiz
75

User-Defined Type Guards

Quiz
76

NonNullable, Awaited, InstanceType

Quiz
77

ReturnType and Parameters

Quiz
78

Exclude and Extract

Quiz
79

Utility Type: Record

Quiz
80

Utility Type: Readonly

Quiz
81

Utility Type: Required

Quiz
82

Utility Type: Partial

Quiz
83

Indexed Access Types

Quiz
84

The keyof Operator

Quiz
85

Intrinsic String Types

Quiz
86

Template Literal Types

Quiz
87

Mapping Modifiers

Quiz
88

Key Remapping with as

Quiz
89

Distributive Conditional Types

Quiz
90

The infer Keyword

Quiz
91

Mapped Types Basics

Quiz
92

Conditional Types Basics

Quiz
93

The typeof Type Operator

Quiz
QuizAdvanced

The satisfies Operator

Validating a value against a type while preserving its narrow type.

What is the main benefit of `satisfies` over a type annotation like `const x: T = ...`?