Тип низов литерал в TypeScript

С помощта на оператора за обединение на типове можем да обединяваме не само вградените типове, но и низове. За пример нека направим така, че променливата да може да приема само една от двете низови стойности:

typescriptlet str: 'success' | 'error';

Нека проверим. Запишем в променливата едната от низовете:

typescriptstr = 'success';

Запишем втората:

typescriptstr = 'error';

Но опит да запишем различен низ ще доведе до грешка:

typescriptstr = 'eee'; // грешка
Задание 1

Направете така, че променливата да може да приема една от трите стойности: 'error', 'warning' или 'success'.