I have a method like this:
public select(fieldName: keyof TType)
Where TType could be an array type. In case of an array type
TType
Using TType[0] as the type is working for me in practice. So, in your example:
TType[0]
public select(fieldName: keyof TType[0])
As ugly as that is, it seems to work!