Le narrowing est la façon dont TypeScript affine un type large (comme une union) en un type plus spécifique dans une branche de code, en fonction des vérifications d'exécution. Le compilateur suit le flux de contrôle et met à jour le type en conséquence.
() {
( x === ) {
x.();
} {
x.();
}
}
