Type keys are used in various serialization mechianisms, especially JSON/TypeScript APIs (JSON-RPC, RDF-JSON, etc.). Even XML serializations have type keys with the element names.
In these cases, it makes sense to hide those type keys from the API and only use them in the serialization/deserialization logic.
In these cases, it makes sense to hide those type keys from the API and only use them in the serialization/deserialization logic.