optolith-database-schema 0.21.2 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/gen/types.d.ts +1361 -1185
  3. package/lib/types/Advantage.d.ts +136 -1
  4. package/lib/types/Advantage.js +6 -1
  5. package/lib/types/Disadvantage.d.ts +66 -1
  6. package/lib/types/Disadvantage.js +4 -1
  7. package/lib/types/Locale.d.ts +97 -133
  8. package/lib/types/Locale.js +147 -134
  9. package/lib/types/_Activatable.d.ts +1 -1900
  10. package/lib/types/_Activatable.js +1 -1385
  11. package/lib/types/_ActivatableAdvanced.d.ts +50 -0
  12. package/lib/types/_ActivatableAdvanced.js +97 -0
  13. package/lib/types/_ActivatableAdventurePointsValue.d.ts +152 -0
  14. package/lib/types/_ActivatableAdventurePointsValue.js +141 -0
  15. package/lib/types/_ActivatableAutomatic.d.ts +71 -0
  16. package/lib/types/_ActivatableAutomatic.js +64 -0
  17. package/lib/types/_ActivatableCombat.d.ts +124 -0
  18. package/lib/types/_ActivatableCombat.js +359 -0
  19. package/lib/types/_ActivatableNonMundane.d.ts +399 -0
  20. package/lib/types/_ActivatableNonMundane.js +492 -0
  21. package/lib/types/_ActivatableSelectOptions.d.ts +1197 -0
  22. package/lib/types/_ActivatableSelectOptions.js +272 -0
  23. package/lib/types/_ActivatableSkillApplicationsAndUses.d.ts +109 -0
  24. package/lib/types/_ActivatableSkillApplicationsAndUses.js +78 -0
  25. package/lib/types/_Identifier.js +2 -1
  26. package/lib/types/_SizeCategory.d.ts +15 -0
  27. package/lib/types/_SizeCategory.js +24 -0
  28. package/lib/types/equipment/item/Animal.d.ts +1 -1
  29. package/lib/types/equipment/item/AnimalCare.d.ts +1 -1
  30. package/lib/types/equipment/item/Armor.d.ts +44 -0
  31. package/lib/types/equipment/item/Armor.js +9 -1
  32. package/lib/types/equipment/item/BandageOrRemedy.d.ts +45 -9
  33. package/lib/types/equipment/item/CeremonialItem.d.ts +45 -9
  34. package/lib/types/equipment/item/Clothes.d.ts +45 -9
  35. package/lib/types/equipment/item/Container.d.ts +45 -9
  36. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +77 -20
  37. package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +5 -6
  38. package/lib/types/equipment/item/IlluminationLightSource.d.ts +45 -9
  39. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +45 -9
  40. package/lib/types/equipment/item/Jewelry.d.ts +1 -1
  41. package/lib/types/equipment/item/Laboratory.d.ts +1 -1
  42. package/lib/types/equipment/item/Liebesspielzeug.d.ts +45 -9
  43. package/lib/types/equipment/item/LuxuryGood.d.ts +45 -9
  44. package/lib/types/equipment/item/MagicalArtifact.d.ts +61 -21
  45. package/lib/types/equipment/item/MagicalArtifact.js +33 -3
  46. package/lib/types/equipment/item/MusicalInstrument.d.ts +48 -9
  47. package/lib/types/equipment/item/MusicalInstrument.js +5 -1
  48. package/lib/types/equipment/item/OrienteeringAid.d.ts +45 -9
  49. package/lib/types/equipment/item/Poison.d.ts +41 -5
  50. package/lib/types/equipment/item/Poison.js +33 -1
  51. package/lib/types/equipment/item/RopeOrChain.d.ts +45 -9
  52. package/lib/types/equipment/item/Stationery.d.ts +45 -9
  53. package/lib/types/equipment/item/ThievesTool.d.ts +45 -9
  54. package/lib/types/equipment/item/ToolOfTheTrade.d.ts +1 -1
  55. package/lib/types/equipment/item/TravelGearOrTool.d.ts +45 -9
  56. package/lib/types/equipment/item/Vehicle.d.ts +1 -1
  57. package/lib/types/equipment/item/Weapon.d.ts +105 -78
  58. package/lib/types/equipment/item/Weapon.js +8 -46
  59. package/lib/types/equipment/item/WeaponAccessory.d.ts +45 -9
  60. package/lib/types/equipment/item/_Item.d.ts +148 -29
  61. package/lib/types/equipment/item/_Item.js +94 -2
  62. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +67 -1
  63. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +5 -1
  64. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +66 -1
  65. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +4 -1
  66. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +66 -1
  67. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +4 -1
  68. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +66 -1
  69. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +4 -1
  70. package/lib/types/specialAbility/AncestorGlyph.d.ts +66 -1
  71. package/lib/types/specialAbility/AncestorGlyph.js +3 -1
  72. package/lib/types/specialAbility/BlessedTradition.d.ts +66 -1
  73. package/lib/types/specialAbility/BlessedTradition.js +4 -1
  74. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +67 -1
  75. package/lib/types/specialAbility/BrawlingSpecialAbility.js +4 -1
  76. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +66 -1
  77. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +6 -2
  78. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +67 -1
  79. package/lib/types/specialAbility/CombatSpecialAbility.js +5 -1
  80. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +119 -1
  81. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +7 -1
  82. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +67 -1
  83. package/lib/types/specialAbility/CommandSpecialAbility.js +4 -1
  84. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +66 -1
  85. package/lib/types/specialAbility/FamiliarSpecialAbility.js +3 -1
  86. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +66 -1
  87. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +3 -1
  88. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +66 -1
  89. package/lib/types/specialAbility/FatePointSpecialAbility.js +4 -1
  90. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +66 -1
  91. package/lib/types/specialAbility/GeneralSpecialAbility.js +4 -1
  92. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +66 -1
  93. package/lib/types/specialAbility/KarmaSpecialAbility.js +3 -1
  94. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +66 -1
  95. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +5 -1
  96. package/lib/types/specialAbility/LycantropicGift.d.ts +66 -1
  97. package/lib/types/specialAbility/LycantropicGift.js +3 -1
  98. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +66 -1
  99. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +5 -1
  100. package/lib/types/specialAbility/MagicalSign.d.ts +76 -40
  101. package/lib/types/specialAbility/MagicalSign.js +30 -3
  102. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +66 -1
  103. package/lib/types/specialAbility/MagicalSpecialAbility.js +4 -1
  104. package/lib/types/specialAbility/MagicalTradition.d.ts +66 -1
  105. package/lib/types/specialAbility/MagicalTradition.js +4 -1
  106. package/lib/types/specialAbility/PactGift.d.ts +128 -62
  107. package/lib/types/specialAbility/PactGift.js +6 -61
  108. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +66 -1
  109. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +3 -1
  110. package/lib/types/specialAbility/Sermon.d.ts +66 -1
  111. package/lib/types/specialAbility/Sermon.js +3 -1
  112. package/lib/types/specialAbility/SexSpecialAbility.d.ts +66 -1
  113. package/lib/types/specialAbility/SexSpecialAbility.js +4 -1
  114. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +66 -1
  115. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +3 -1
  116. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +66 -1
  117. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +4 -1
  118. package/lib/types/specialAbility/VampiricGift.d.ts +66 -1
  119. package/lib/types/specialAbility/VampiricGift.js +3 -1
  120. package/lib/types/specialAbility/Vision.d.ts +66 -1
  121. package/lib/types/specialAbility/Vision.js +3 -1
  122. package/lib/types/specialAbility/sub/TradeSecret.js +2 -1
  123. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +66 -1
  124. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +5 -2
  125. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +66 -1
  126. package/lib/types/traditionArtifacts/AttireEnchantment.js +5 -2
  127. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +66 -1
  128. package/lib/types/traditionArtifacts/BowlEnchantment.js +5 -2
  129. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +66 -1
  130. package/lib/types/traditionArtifacts/CauldronEnchantment.js +5 -2
  131. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +66 -1
  132. package/lib/types/traditionArtifacts/ChronicleEnchantment.js +5 -2
  133. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +66 -1
  134. package/lib/types/traditionArtifacts/DaggerRitual.js +5 -2
  135. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +66 -1
  136. package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +5 -2
  137. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +66 -1
  138. package/lib/types/traditionArtifacts/InstrumentEnchantment.js +5 -2
  139. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +66 -1
  140. package/lib/types/traditionArtifacts/Krallenkettenzauber.js +5 -2
  141. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +66 -1
  142. package/lib/types/traditionArtifacts/OrbEnchantment.js +5 -2
  143. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +66 -1
  144. package/lib/types/traditionArtifacts/RingEnchantment.js +5 -2
  145. package/lib/types/traditionArtifacts/SickleRitual.d.ts +66 -1
  146. package/lib/types/traditionArtifacts/SickleRitual.js +5 -2
  147. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +66 -1
  148. package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +5 -2
  149. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +66 -1
  150. package/lib/types/traditionArtifacts/StaffEnchantment.js +5 -2
  151. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +66 -1
  152. package/lib/types/traditionArtifacts/ToyEnchantment.js +5 -2
  153. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +66 -1
  154. package/lib/types/traditionArtifacts/Trinkhornzauber.js +5 -2
  155. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +66 -1
  156. package/lib/types/traditionArtifacts/WandEnchantment.js +5 -2
  157. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +66 -1
  158. package/lib/types/traditionArtifacts/WeaponEnchantment.js +5 -2
  159. package/package.json +2 -2
@@ -89,14 +89,28 @@ export declare const WeaponAccessory: Entity<"WeaponAccessory", {
89
89
  length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"Length", import("tsondb/schema/def").IntegerType, []>>, false>;
90
90
  is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
91
91
  }>, false>;
92
- sanctified_by: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"SanctifiedBy", import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, []>>, false>;
93
- restricted_to_cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToCultures", {
94
- CulturesOfRace: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
95
- Cultures: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToSpecificCultures", Object<{
96
- list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
97
- }>, []>>>;
98
- }, []>>, false>;
99
- restricted_to_traditions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, false>;
92
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedTo", Object<{
93
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToRaces", Object<{
94
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
95
+ }>, []>>, false>;
96
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToCultures", Object<{
97
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
98
+ }>, []>>, false>;
99
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToProfessions", Object<{
100
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
101
+ }>, []>>, false>;
102
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToMagicalTraditions", Object<{
103
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
104
+ }>, []>>, false>;
105
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToBlessedTraditions", Object<{
106
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
107
+ Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
108
+ Church: import("tsondb/schema/def").EnumCaseDecl<null>;
109
+ Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
110
+ }, []>>, true>;
111
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
112
+ }>, []>>, false>;
113
+ }>, []>>, false>;
100
114
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ImprovisedWeaponTranslation", {
101
115
  advantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
102
116
  disadvantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -118,6 +132,28 @@ export declare const WeaponAccessory: Entity<"WeaponAccessory", {
118
132
  Arms: import("tsondb/schema/def").EnumCaseDecl<null>;
119
133
  Legs: import("tsondb/schema/def").EnumCaseDecl<null>;
120
134
  }, []>>, false>;
135
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedTo", Object<{
136
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToRaces", Object<{
137
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
138
+ }>, []>>, false>;
139
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToCultures", Object<{
140
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
141
+ }>, []>>, false>;
142
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToProfessions", Object<{
143
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
144
+ }>, []>>, false>;
145
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToMagicalTraditions", Object<{
146
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
147
+ }>, []>>, false>;
148
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToBlessedTraditions", Object<{
149
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
150
+ Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
151
+ Church: import("tsondb/schema/def").EnumCaseDecl<null>;
152
+ Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
153
+ }, []>>, true>;
154
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
155
+ }>, []>>, false>;
156
+ }>, []>>, false>;
121
157
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SecondaryArmorTranslation", {
122
158
  advantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
123
159
  disadvantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -164,7 +200,7 @@ export declare const WeaponAccessory: Entity<"WeaponAccessory", {
164
200
  }, []>>>, false>;
165
201
  }>, true>;
166
202
  }>, []>>>, []>>, true>;
167
- translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}TranslationTranslation`, {
203
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
168
204
  name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, true>;
169
205
  secondary_name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
170
206
  note: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -1,4 +1,4 @@
1
- import { Array, Entity, Enum, EnumCase, Float, IncludeIdentifier, Integer, Object, String, TypeAlias } from "tsondb/schema/def";
1
+ import { Array, Boolean, Entity, Enum, EnumCase, Float, IncludeIdentifier, Integer, Object, String, TypeAlias } from "tsondb/schema/def";
2
2
  export declare const DefaultItem: (sourceUrl: string, singularName: string, pluralName?: string) => Entity<string, {
3
3
  cost: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"Cost", {
4
4
  Free: EnumCase<null>;
@@ -61,9 +61,9 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
61
61
  attack_penalty: import("tsondb/schema/def").MemberDecl<Integer, false>;
62
62
  }>, []>>>;
63
63
  }, []>>, false>;
64
- is_parrying_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
65
- is_two_handed_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
66
- is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
64
+ is_parrying_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
65
+ is_two_handed_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
66
+ is_improvised_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
67
67
  }>, false>;
68
68
  ranged_uses: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
69
69
  damage: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RangedDamage", {
@@ -87,16 +87,30 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
87
87
  }>, []>>, true>;
88
88
  ammunition: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, false>;
89
89
  length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Length", Integer, []>>, false>;
90
- is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
90
+ is_improvised_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
91
91
  }>, false>;
92
- sanctified_by: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"SanctifiedBy", Array<import("tsondb/schema/def").ReferenceIdentifierType>, []>>, false>;
93
- restricted_to_cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToCultures", {
94
- CulturesOfRace: EnumCase<import("tsondb/schema/def").ReferenceIdentifierType>;
95
- Cultures: EnumCase<IncludeIdentifier<[], TypeAlias<"RestrictedToSpecificCultures", Object<{
96
- list: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
97
- }>, []>>>;
98
- }, []>>, false>;
99
- restricted_to_traditions: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, false>;
92
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
93
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
94
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
95
+ }>, []>>, false>;
96
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
97
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
98
+ }>, []>>, false>;
99
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
100
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
101
+ }>, []>>, false>;
102
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
103
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
104
+ }>, []>>, false>;
105
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
106
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
107
+ Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
108
+ Church: EnumCase<null>;
109
+ Shamanistic: EnumCase<null>;
110
+ }, []>>, true>;
111
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
112
+ }>, []>>, false>;
113
+ }>, []>>, false>;
100
114
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ImprovisedWeaponTranslation", {
101
115
  advantage: import("tsondb/schema/def").MemberDecl<String, false>;
102
116
  disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
@@ -105,7 +119,7 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
105
119
  Armor: EnumCase<IncludeIdentifier<[], TypeAlias<"SecondaryArmor", Object<{
106
120
  protection: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Protection", Integer, []>>, true>;
107
121
  encumbrance: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Encumbrance", Integer, []>>, true>;
108
- has_additional_penalties: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"HasAdditionalPenalties", import("tsondb/schema/def").BooleanType, []>>, true>;
122
+ has_additional_penalties: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"HasAdditionalPenalties", Boolean, []>>, true>;
109
123
  armor_type: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
110
124
  hit_zone: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"HitZone", {
111
125
  Head: EnumCase<IncludeIdentifier<[], TypeAlias<"HeadHitZone", Object<{
@@ -118,6 +132,28 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
118
132
  Arms: EnumCase<null>;
119
133
  Legs: EnumCase<null>;
120
134
  }, []>>, false>;
135
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
136
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
137
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
138
+ }>, []>>, false>;
139
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
140
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
141
+ }>, []>>, false>;
142
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
143
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
144
+ }>, []>>, false>;
145
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
146
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
147
+ }>, []>>, false>;
148
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
149
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
150
+ Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
151
+ Church: EnumCase<null>;
152
+ Shamanistic: EnumCase<null>;
153
+ }, []>>, true>;
154
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
155
+ }>, []>>, false>;
156
+ }>, []>>, false>;
121
157
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SecondaryArmorTranslation", {
122
158
  advantage: import("tsondb/schema/def").MemberDecl<String, false>;
123
159
  disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
@@ -164,7 +200,7 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
164
200
  }, []>>>, false>;
165
201
  }>, true>;
166
202
  }>, []>>>, []>>, true>;
167
- translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}TranslationTranslation`, {
203
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
168
204
  name: import("tsondb/schema/def").MemberDecl<String, true>;
169
205
  secondary_name: import("tsondb/schema/def").MemberDecl<String, false>;
170
206
  note: import("tsondb/schema/def").MemberDecl<String, false>;
@@ -175,7 +211,7 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
175
211
  }>, []>>>, []>>, false>;
176
212
  }>, true>;
177
213
  }, undefined>;
178
- export declare const DefaultItemTranslations: (singularName: string) => import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}TranslationTranslation`, {
214
+ export declare const DefaultItemTranslations: (singularName: string) => import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
179
215
  name: import("tsondb/schema/def").MemberDecl<String, true>;
180
216
  secondary_name: import("tsondb/schema/def").MemberDecl<String, false>;
181
217
  note: import("tsondb/schema/def").MemberDecl<String, false>;
@@ -217,9 +253,9 @@ export declare const CombatUse: Enum<"CombatUse", {
217
253
  attack_penalty: import("tsondb/schema/def").MemberDecl<Integer, false>;
218
254
  }>, []>>>;
219
255
  }, []>>, false>;
220
- is_parrying_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
221
- is_two_handed_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
222
- is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
256
+ is_parrying_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
257
+ is_two_handed_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
258
+ is_improvised_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
223
259
  }>, false>;
224
260
  ranged_uses: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
225
261
  damage: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RangedDamage", {
@@ -243,16 +279,30 @@ export declare const CombatUse: Enum<"CombatUse", {
243
279
  }>, []>>, true>;
244
280
  ammunition: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, false>;
245
281
  length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Length", Integer, []>>, false>;
246
- is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
282
+ is_improvised_weapon: import("tsondb/schema/def").MemberDecl<Boolean, true>;
247
283
  }>, false>;
248
- sanctified_by: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"SanctifiedBy", Array<import("tsondb/schema/def").ReferenceIdentifierType>, []>>, false>;
249
- restricted_to_cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToCultures", {
250
- CulturesOfRace: EnumCase<import("tsondb/schema/def").ReferenceIdentifierType>;
251
- Cultures: EnumCase<IncludeIdentifier<[], TypeAlias<"RestrictedToSpecificCultures", Object<{
252
- list: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
253
- }>, []>>>;
254
- }, []>>, false>;
255
- restricted_to_traditions: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, false>;
284
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
285
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
286
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
287
+ }>, []>>, false>;
288
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
289
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
290
+ }>, []>>, false>;
291
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
292
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
293
+ }>, []>>, false>;
294
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
295
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
296
+ }>, []>>, false>;
297
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
298
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
299
+ Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
300
+ Church: EnumCase<null>;
301
+ Shamanistic: EnumCase<null>;
302
+ }, []>>, true>;
303
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
304
+ }>, []>>, false>;
305
+ }>, []>>, false>;
256
306
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ImprovisedWeaponTranslation", {
257
307
  advantage: import("tsondb/schema/def").MemberDecl<String, false>;
258
308
  disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
@@ -261,7 +311,7 @@ export declare const CombatUse: Enum<"CombatUse", {
261
311
  Armor: EnumCase<IncludeIdentifier<[], TypeAlias<"SecondaryArmor", Object<{
262
312
  protection: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Protection", Integer, []>>, true>;
263
313
  encumbrance: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Encumbrance", Integer, []>>, true>;
264
- has_additional_penalties: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"HasAdditionalPenalties", import("tsondb/schema/def").BooleanType, []>>, true>;
314
+ has_additional_penalties: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"HasAdditionalPenalties", Boolean, []>>, true>;
265
315
  armor_type: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
266
316
  hit_zone: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"HitZone", {
267
317
  Head: EnumCase<IncludeIdentifier<[], TypeAlias<"HeadHitZone", Object<{
@@ -274,6 +324,28 @@ export declare const CombatUse: Enum<"CombatUse", {
274
324
  Arms: EnumCase<null>;
275
325
  Legs: EnumCase<null>;
276
326
  }, []>>, false>;
327
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
328
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
329
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
330
+ }>, []>>, false>;
331
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
332
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
333
+ }>, []>>, false>;
334
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
335
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
336
+ }>, []>>, false>;
337
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
338
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
339
+ }>, []>>, false>;
340
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
341
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
342
+ Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
343
+ Church: EnumCase<null>;
344
+ Shamanistic: EnumCase<null>;
345
+ }, []>>, true>;
346
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
347
+ }>, []>>, false>;
348
+ }>, []>>, false>;
277
349
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SecondaryArmorTranslation", {
278
350
  advantage: import("tsondb/schema/def").MemberDecl<String, false>;
279
351
  disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
@@ -318,3 +390,50 @@ export declare const Complexity: Enum<"Complexity", {
318
390
  export declare const ComplexComplexity: TypeAlias<"ComplexComplexity", Object<{
319
391
  ap_value: import("tsondb/schema/def").MemberDecl<Integer, true>;
320
392
  }>, []>;
393
+ export declare const RestrictedTo: TypeAlias<"RestrictedTo", Object<{
394
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
395
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
396
+ }>, []>>, false>;
397
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
398
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
399
+ }>, []>>, false>;
400
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
401
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
402
+ }>, []>>, false>;
403
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
404
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
405
+ }>, []>>, false>;
406
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
407
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
408
+ Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
409
+ Church: EnumCase<null>;
410
+ Shamanistic: EnumCase<null>;
411
+ }, []>>, true>;
412
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
413
+ }>, []>>, false>;
414
+ }>, []>;
415
+ export declare const RestrictedToRaces: TypeAlias<"RestrictedToRaces", Object<{
416
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
417
+ }>, []>;
418
+ export declare const RestrictedToCultures: TypeAlias<"RestrictedToCultures", Object<{
419
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
420
+ }>, []>;
421
+ export declare const RestrictedToProfessions: TypeAlias<"RestrictedToProfessions", Object<{
422
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
423
+ }>, []>;
424
+ export declare const RestrictedToMagicalTraditions: TypeAlias<"RestrictedToMagicalTraditions", Object<{
425
+ scope: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
426
+ }>, []>;
427
+ export declare const RestrictedToBlessedTraditions: TypeAlias<"RestrictedToBlessedTraditions", Object<{
428
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToBlessedTraditionsScope", {
429
+ Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
430
+ Church: EnumCase<null>;
431
+ Shamanistic: EnumCase<null>;
432
+ }, []>>, true>;
433
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<Boolean, true>;
434
+ }>, []>;
435
+ export declare const RestrictedToBlessedTraditionsScope: Enum<"RestrictedToBlessedTraditionsScope", {
436
+ Specific: EnumCase<Array<import("tsondb/schema/def").ReferenceIdentifierType>>;
437
+ Church: EnumCase<null>;
438
+ Shamanistic: EnumCase<null>;
439
+ }, []>;
@@ -1,4 +1,5 @@
1
- import { Array, Entity, Enum, EnumCase, Float, IncludeIdentifier, Integer, Object, Optional, Required, String, TypeAlias, } from "tsondb/schema/def";
1
+ import { Array, Boolean, Entity, Enum, EnumCase, Float, IncludeIdentifier, Integer, Object, Optional, Required, String, TypeAlias, } from "tsondb/schema/def";
2
+ import { BlessedTraditionIdentifier, MagicalTraditionIdentifier } from "../../_Identifier.js";
2
3
  import { NestedTranslationMap } from "../../Locale.js";
3
4
  import { Errata } from "../../source/_Erratum.js";
4
5
  import { src } from "../../source/_PublicationRef.js";
@@ -33,7 +34,7 @@ export const DefaultItem = (sourceUrl, singularName, pluralName) => Entity(sourc
33
34
  }),
34
35
  displayName: {},
35
36
  });
36
- export const DefaultItemTranslations = (singularName) => NestedTranslationMap(Required, `${singularName}Translation`, Object({
37
+ export const DefaultItemTranslations = (singularName) => NestedTranslationMap(Required, singularName, Object({
37
38
  name: Required({
38
39
  comment: "The item’s name.",
39
40
  type: String({ minLength: 1 }),
@@ -142,3 +143,94 @@ export const ComplexComplexity = TypeAlias(import.meta.url, {
142
143
  }),
143
144
  }),
144
145
  });
146
+ export const RestrictedTo = TypeAlias(import.meta.url, {
147
+ name: "RestrictedTo",
148
+ comment: "If the item is in any case restricted to a subset of characters. The differenciating aspect may be tradition, race, culture, or a profession. Each element must be applicable to a character. ",
149
+ type: () => Object({
150
+ races: Optional({
151
+ comment: "The item is restricted to one of a list of races. If only one race is allowed, the list may only have a single element.",
152
+ type: IncludeIdentifier(RestrictedToRaces),
153
+ }),
154
+ cultures: Optional({
155
+ comment: "The item is restricted to one of a list of cultures. If only one culture is allowed, the list may only have a single element.",
156
+ type: IncludeIdentifier(RestrictedToCultures),
157
+ }),
158
+ professions: Optional({
159
+ comment: "The item is restricted to one of a list of professions. If only one profession is allowed, the list may only have a single element.",
160
+ type: IncludeIdentifier(RestrictedToProfessions),
161
+ }),
162
+ magicalTraditions: Optional({
163
+ comment: "The item is restricted to one of a list of magical traditions. If only one magical tradition is allowed, the list may only have a single element.",
164
+ type: IncludeIdentifier(RestrictedToMagicalTraditions),
165
+ }),
166
+ blessedTraditions: Optional({
167
+ comment: "The item is restricted to one of a list of blessed traditions. If only one blessed tradition is allowed, the list may only have a single element.",
168
+ type: IncludeIdentifier(RestrictedToBlessedTraditions),
169
+ }),
170
+ }, { minProperties: 1 }),
171
+ });
172
+ export const RestrictedToRaces = TypeAlias(import.meta.url, {
173
+ name: "RestrictedToRaces",
174
+ comment: "The item is restricted to one of a list of races. If only one race is allowed, the list may only have a single element.",
175
+ type: () => Object({
176
+ scope: Required({
177
+ comment: "The item is restricted to one of a list of races. If only one race is allowed, the list may only have a single element.",
178
+ type: Array(MagicalTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
179
+ }),
180
+ }),
181
+ });
182
+ export const RestrictedToCultures = TypeAlias(import.meta.url, {
183
+ name: "RestrictedToCultures",
184
+ comment: "The item is restricted to one of a list of cultures. If only one culture is allowed, the list may only have a single element.",
185
+ type: () => Object({
186
+ scope: Required({
187
+ comment: "The item is restricted to one of a list of cultures. If only one culture is allowed, the list may only have a single element.",
188
+ type: Array(MagicalTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
189
+ }),
190
+ }),
191
+ });
192
+ export const RestrictedToProfessions = TypeAlias(import.meta.url, {
193
+ name: "RestrictedToProfessions",
194
+ comment: "The item is restricted to one of a list of professions. If only one profession is allowed, the list may only have a single element.",
195
+ type: () => Object({
196
+ scope: Required({
197
+ comment: "The item is restricted to one of a list of professions. If only one profession is allowed, the list may only have a single element.",
198
+ type: Array(MagicalTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
199
+ }),
200
+ }),
201
+ });
202
+ export const RestrictedToMagicalTraditions = TypeAlias(import.meta.url, {
203
+ name: "RestrictedToMagicalTraditions",
204
+ comment: "The item is restricted to one of a list of magical traditions. If only one magical tradition is allowed, the list may only have a single element.",
205
+ type: () => Object({
206
+ scope: Required({
207
+ comment: "The item is restricted to one of a list of magical traditions. If only one magical tradition is allowed, the list may only have a single element.",
208
+ type: Array(MagicalTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
209
+ }),
210
+ }),
211
+ });
212
+ export const RestrictedToBlessedTraditions = TypeAlias(import.meta.url, {
213
+ name: "RestrictedToBlessedTraditions",
214
+ comment: "The item is restricted to one of a list of blessed traditions. If only one blessed tradition is allowed, the list may only have a single element. The item may also be declared as sanctified.",
215
+ type: () => Object({
216
+ scope: Required({
217
+ comment: "The item is restricted to one of a list of blessed traditions. If only one blessed tradition is allowed, the list may only have a single element.",
218
+ type: IncludeIdentifier(RestrictedToBlessedTraditionsScope),
219
+ }),
220
+ isSanctifiedBy: Required({
221
+ comment: "The item is sanctified by the applicable listed tradition.",
222
+ type: Boolean(),
223
+ }),
224
+ }),
225
+ });
226
+ export const RestrictedToBlessedTraditionsScope = Enum(import.meta.url, {
227
+ name: "RestrictedToBlessedTraditionsScope",
228
+ comment: "The item is restricted to one of a list of blessed traditions. If only one blessed tradition is allowed, the list may only have a single element. Instead of providing an specific set of traditions, the restriction may also cover a category of blessed traditions.",
229
+ values: () => ({
230
+ Specific: EnumCase({
231
+ type: Array(BlessedTraditionIdentifier(), { minItems: 1, uniqueItems: true }),
232
+ }),
233
+ Church: EnumCase({ type: null }),
234
+ Shamanistic: EnumCase({ type: null }),
235
+ }),
236
+ });
@@ -1007,6 +1007,7 @@ export declare const AdvancedCombatSpecialAbility: Entity<"AdvancedCombatSpecial
1007
1007
  Mount: import("tsondb/schema/def").EnumCaseDecl<null>;
1008
1008
  HasParry: import("tsondb/schema/def").EnumCaseDecl<null>;
1009
1009
  OneHanded: import("tsondb/schema/def").EnumCaseDecl<null>;
1010
+ TwoHanded: import("tsondb/schema/def").EnumCaseDecl<null>;
1010
1011
  ParryingWeapon: import("tsondb/schema/def").EnumCaseDecl<null>;
1011
1012
  Race: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ApplicableCombatTechniquesRaceRestriction", import("tsondb/schema/def").ReferenceIdentifierType, []>>>;
1012
1013
  ExcludeCombatTechniques: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").TypeAliasDecl<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", Object<{
@@ -1048,12 +1049,77 @@ export declare const AdvancedCombatSpecialAbility: Entity<"AdvancedCombatSpecial
1048
1049
  }, []>>, true>;
1049
1050
  ap_value: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"AdventurePointsValue", {
1050
1051
  Fixed: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"FixedAdventurePointsValue", IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsSingleValue", import("tsondb/schema/def").IntegerType, []>>, []>>>;
1051
- ByLevel: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsValueByLevel", import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsSingleValue", import("tsondb/schema/def").IntegerType, []>>>, []>>>;
1052
+ ByLevel: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsValueByLevel", Object<{
1053
+ list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsSingleValue", import("tsondb/schema/def").IntegerType, []>>>, true>;
1054
+ additionalBySizeCategory: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").TypeAliasDecl<"BySizeCategory", Object<{
1055
+ tiny: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>, true>;
1056
+ small: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>, true>;
1057
+ medium: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>, true>;
1058
+ large: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>, true>;
1059
+ huge: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>, true>;
1060
+ }>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>, false>;
1061
+ }>, []>>>;
1052
1062
  DerivedFromSelection: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsDerivedFromSelection", Object<{
1053
1063
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"AdventurePointsDerivedFromSelectionTranslation", {
1054
1064
  replacement: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
1055
1065
  }>, false>;
1056
1066
  }>, []>>>;
1067
+ DependingOnActive: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsDependingOnActive", Object<{
1068
+ id: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"ActivatableIdentifier", {
1069
+ Advantage: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1070
+ Disadvantage: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1071
+ AdvancedCombatSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1072
+ AdvancedKarmaSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1073
+ AdvancedMagicalSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1074
+ AdvancedSkillSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1075
+ AncestorGlyph: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1076
+ ArcaneOrbEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1077
+ AttireEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1078
+ BlessedTradition: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1079
+ BowlEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1080
+ BrawlingSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1081
+ CauldronEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1082
+ CeremonialItemSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1083
+ ChronicleEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1084
+ CombatSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1085
+ CombatStyleSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1086
+ CommandSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1087
+ DaggerRitual: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1088
+ FamiliarSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1089
+ FatePointSexSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1090
+ FatePointSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1091
+ FoolsHatEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1092
+ GeneralSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1093
+ InstrumentEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1094
+ KarmaSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1095
+ Krallenkettenzauber: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1096
+ LiturgicalStyleSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1097
+ LycantropicGift: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1098
+ MagicalSign: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1099
+ MagicalSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1100
+ MagicalTradition: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1101
+ MagicStyleSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1102
+ OrbEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1103
+ PactGift: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1104
+ ProtectiveWardingCircleSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1105
+ RingEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1106
+ Sermon: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1107
+ SexSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1108
+ SickleRitual: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1109
+ SikaryanDrainSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1110
+ SkillStyleSpecialAbility: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1111
+ SpellSwordEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1112
+ StaffEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1113
+ ToyEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1114
+ Trinkhornzauber: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1115
+ VampiricGift: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1116
+ Vision: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1117
+ WandEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1118
+ WeaponEnchantment: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
1119
+ }, []>>, true>;
1120
+ active: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsSingleValue", import("tsondb/schema/def").IntegerType, []>>, true>;
1121
+ inactive: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsSingleValue", import("tsondb/schema/def").IntegerType, []>>, true>;
1122
+ }>, []>>>;
1057
1123
  DependingOnActiveInstances: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"AdventurePointsDependingOnActiveInstances", {
1058
1124
  Threshold: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"AdventurePointsDependingOnActiveInstancesThreshold", Object<{
1059
1125
  normal: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
@@ -1,5 +1,9 @@
1
1
  import { Entity, IncludeIdentifier, Object, Optional, Required } from "tsondb/schema/def";
2
- import { ap_value, ap_value_append, ap_value_l10n, combat_techniques, explicit_select_options, levels, maximum, name, name_in_library, penalty, rules, select_options, skill_applications, skill_uses, usage_type, } from "../_Activatable.js";
2
+ import { levels, maximum, name, name_in_library, rules } from "../_Activatable.js";
3
+ import { ap_value, ap_value_append, ap_value_l10n } from "../_ActivatableAdventurePointsValue.js";
4
+ import { combat_techniques, penalty, usage_type } from "../_ActivatableCombat.js";
5
+ import { explicit_select_options, select_options } from "../_ActivatableSelectOptions.js";
6
+ import { skill_applications, skill_uses } from "../_ActivatableSkillApplicationsAndUses.js";
3
7
  import { GeneralPrerequisites } from "../_Prerequisite.js";
4
8
  import { NestedTranslationMap } from "../Locale.js";
5
9
  import { Errata } from "../source/_Erratum.js";