Optional Readonlyarchetype?: StringKeyof<A>Scope the index to a single archetype (by declared name). Only
entities that are that archetype (a superset of its components) are
indexed — entities in other archetypes that merely share the key
column are excluded. A is the schema's archetype map, so the name
is checked against the declared archetypes; when unthreaded it
widens to string.
Optional Readonlycomponents?: readonly StringKeyof<C>[]Readonlykey: IndexKey<C>Optional Readonlyorder?: IndexOrder<C>Optional Readonlyunique?: boolean
Plugin-level / store-level map of indexes. Keys are user-chosen index names; values are
Indexdeclarations whosekeyreferences real columns ofC.The structural shape is inlined (rather than
Index<C, any, any, any>) so that the per-entrykey/orderfields are actually constrained at the declaration site. WithIndex<C, any, any, any>the wildcardanygenerics widenkeypastIndexKey<C>, so a typo like{ key: "bogus" }silently passes the constraint. Inliningkey: IndexKey<C>here makes the typo a type error at the plugin descriptor.