Types for defining Archetypes, collections of entities that have the same set of components.
Archetype
A generational id that changes every time the set of archetypes changes