Does `TSTypeParameter.name` need to be all of `IdentifierKind` types?
It seems that in recent version TSTypeParameter.name has been extended to be string | K.IdentifierKind.
This results in a weird type cycle, where a name can be any identifier including TSTypeParameter again. Causing client code to deal with it somehow. It seems that babel-parser tests do not have any examples of generating anything apart from plain Identifier (or string) for TStypeParameter.name.
Should this be constrained a bit more?
Bumping this problem as I have also encountered it when looking to upgrade jscodeshift, which uses recast, which uses updated ast-types.
The diff between the types on 0.14.2 and 0.16.1 can be seen on L1242 here.
Because of this, we are kind of forced to stick with forcing a 0.14.2 version. 🤔