While clever, we are still optimizing database logic at the protocol level.
Anyway, we can keep a small int kind for CORE event types. My argument is against the rest of the bloat which will never be enough.
Nothing stops a relay backend from pre processing mimetypes and translating each - for the ones that have indexing interest - by using an unique small int. Neglectible pre processing overhead.