TypeScript: ¿Por qué preferir Maps sobre Enums?