Το Narrowing είναι ο τρόπος με τον οποίο η TypeScript βελτιώνει έναν ευρύ τύπο (όπως ένα union) σε έναν πιο συγκεκριμένο τύπο εντός ενός κλάδου κώδικα, βάσει ελέγχων χρόνου εκτέλεσης. Ο compiler παρακολουθεί τη ροή ελέγχου και ενημερώνει τον τύπο ανάλογα.
ts
() {
( x === ) {
x.();
} {
x.();
}
}
