выглядит как by design
фича
А в чём соль? Не могу понять разницу, в чём фича во втором случае не кидать ошибку, а в первом кидать. Я пытался сделать чтобы возвращаемое значение не использовалось не по назначению, если не передан дженерик был, с помощью foo<T = unknown>(): T, а ТС в итоге говорит что всё ок, не-пойми-чего совместимо с любым типом.
он же высчитал generic type из return type во втором варианте
Блин, точно. Спасибо.
Вот аналогия в первом случае. https://www.typescriptlang.org/play?#code/CYUwxgNghgTiAEAzArgOzAFwJYHtVJxwB4AVAPgAoBKALnhIG4AoJldbPeEGGHGAERAZww4NToBnDDCyoA5vADeTePDB4p8AG5QIyEAFVUAa1Q4A7qknTZCgLwEc1ZqrgZkMfDr2GTZywzwAPRB9ACeAA4IAORophao0fBYEvBmGPBQEhJYcqhQAEYQCBg48BiRMVIy8tFMAL4sbJi4+Ny8MADKxlgRUWK08NW2Sirwbh74iITOwaGd2BAQ8LF+CdEANPAFyBnmWBgAFji7XDx8DUxAA
Да, наглядно. Спасибо!
Обсуждают сегодня