30 / 58
Что такое const assertion (as const)?
as const делает значение максимально узким и readonly: строки становятся литеральными типами, числа — литеральными, массивы — readonly кортежами, объекты — readonly с литеральными типами свойств. Это не type assertion в привычном смысле — оно не меняет значение, а говорит TypeScript: "считай это значение неизменяемой константой". Незаменимо для создания enum-подобных объектов и извлечения union из массива.