type X = {[K in '1' | '2']: string} // valid
type Y = {[K in 1 | 2]: string} // invalid
https://i.sstatic.net/8iBoK.png
Could there be a legitimate explanation for this inconsistency? I couldn't find any related problem on github, so I thought of reaching out here first.