I was having an issue and was making a reproducible example in tsplayground, but for some reason it worked. Then I pasted it into my vscode to see that it didn't work there for some reason.
Basically, in tsplayground, the op1 variable has type string | null but on vscode it shows as only string. I can however go ahead and add something like | number on line 23 inside the T[I]["required"] extends false ? HERE : TypeTable[T[I]["type"]] it does show in vscode, just null and undefined don't.