Tipo Never
Il tipo never rappresenta valori che non si verificano mai. Viene utilizzato per indicare funzioni o espressioni che non restituiscono mai né generano errori.
Ad esempio, un ciclo infinito:
const infiniteLoop = (): never => { while (true) { // fai qualcosa }};Generazione di un errore:
const throwError = (message: string): never => { throw new Error(message);};Il tipo never è utile per garantire la sicurezza dei tipi e rilevare potenziali errori nel codice. Aiuta TypeScript ad analizzare e dedurre tipi più precisi se utilizzato in combinazione con altri tipi e istruzioni di controllo del flusso, ad esempio:
type Direction = 'up' | 'down';const move = (direction: Direction): void => { switch (direction) { case 'up': // sposta verso l'alto break; case 'down': // sposta verso il basso break; default: const exhaustiveCheck: never = direction; throw new Error(`Unhandled direction: ${exhaustiveCheck}`); }};