I did not think about the possibility that tuples could have been read without the quotes. However, I traced the original sentence back to PEP 484 PEP 484 – Type Hints | peps.python.org and to me it didn’t feel like the spec meant tuples (in the form of type[A, B])
PEP 484 mentions Tuple, so my first guess was correct.
Any other special constructs like Tuple or Callable are not allowed as an argument to Type.
Then typing generics were replaced by simple builtin types. But there is an important difference between Tuple and tuple – the latter can be used as a base class, in issublass() and isinstance(), but the former cannot. This is why replacing Tuple with tuple caused confusion – the wording is now ambiguous, it can be interpreted in multiple ways, as was shown above.
I would simply add []: “tuple[] or Callable[]”. type[] is already used, so there is precedence.