Typ void oznacza dosłownie pustkę. Funkcja, zwracająca typ void, nie zwraca żadnej wartości. Przypisanie jej wykonania do zmiennej będzie równe ustawieniu tej zmiennej wartości undefined.
Typ never oznacza, że wartość nigdy nie zaistnieje. Funkcja, która zwraca typ never nigdy nie kończy wykonania - może na przykład obsługiwać nieskończoną pętlę lub rzucać wyjątek.
const voidFunc = (): void => { const a = 1 + 1; } console.info(voidFunc()) // undefined const neverFunc = (): never => { // A function returning 'never' cannot have a reachable end point. const a = 1 + 1; } console.info(neverFunc()) // undefined const neverFunc2 = (): never => { const a = 1 + 1; return a; // Type 'number' is not assignable to type 'never'. }

