we could add a set of free function for the clashing names (to reduce amount of code on client side)
inline const char* getNameKey(Manifest::PackageType type) {
  if()...
}