Declare a feature's archetypes, validating every key against components and
preserving each archetype's literal key tuple (via a const type parameter),
so no per-archetype as const satisfies is needed. components is passed as
a value (it is imported anyway) because TypeScript can't infer the tuple type
while a component-type argument is also supplied explicitly.
Declare a feature's archetypes, validating every key against
componentsand preserving each archetype's literal key tuple (via aconsttype parameter), so no per-archetypeas const satisfiesis needed.componentsis passed as a value (it is imported anyway) because TypeScript can't infer the tuple type while a component-type argument is also supplied explicitly.