такая функция: 
                  
                  
                  const test = (sectionName: 'Date' | 'Time'): 'time' | 'date' => {
                  
                  
                    return sectionName.toLowerCase();
                  
                  
                  }
                  
                  
                  и ts ругается на то что sectionName после toLowerCase может принимать тип string, а я на выходе ожидаю конкретные типы. Вопрос, как можно сделать так, чтобы он не ругался?
                  
                  
                
в общем случае никак, тайпскрипт не рассматривает литеральные типы как значения, и не поддерживает вычисления на них. Поэтому toLowerCase даже для литерала вернет string. Без явного каста не обойтись.
Обсуждают сегодня