optolith-database-schema 0.2.2 → 0.3.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 (500) hide show
  1. package/CHANGELOG.md +71 -0
  2. package/lib/config.d.ts +302 -250
  3. package/lib/config.js +302 -250
  4. package/lib/main.d.ts +3 -2
  5. package/lib/main.js +1 -1
  6. package/lib/types/Advantage.d.ts +22 -24
  7. package/lib/types/AnimalDisease.d.ts +18 -212
  8. package/lib/types/AnimalType.d.ts +9 -13
  9. package/lib/types/ArcaneBardTradition.d.ts +3 -27
  10. package/lib/types/ArcaneDancerTradition.d.ts +3 -27
  11. package/lib/types/Aspect.d.ts +14 -19
  12. package/lib/types/Attribute.d.ts +17 -23
  13. package/lib/types/Blessing.d.ts +78 -94
  14. package/lib/types/Cantrip.d.ts +132 -148
  15. package/lib/types/Ceremony.d.ts +55 -88
  16. package/lib/types/CombatTechnique_Close.d.ts +30 -39
  17. package/lib/types/CombatTechnique_Ranged.d.ts +28 -26
  18. package/lib/types/Condition.d.ts +18 -31
  19. package/lib/types/Continent.d.ts +9 -13
  20. package/lib/types/Culture.d.ts +168 -290
  21. package/lib/types/DerivedCharacteristic.d.ts +4 -10
  22. package/lib/types/Disadvantage.d.ts +19 -23
  23. package/lib/types/Disease.d.ts +5 -140
  24. package/lib/types/Element.d.ts +9 -13
  25. package/lib/types/ExperienceLevel.d.ts +3 -9
  26. package/lib/types/EyeColor.d.ts +9 -13
  27. package/lib/types/FamiliarsTrick.d.ts +201 -290
  28. package/lib/types/HairColor.d.ts +9 -13
  29. package/lib/types/Lessons_Curriculum.d.ts +73 -138
  30. package/lib/types/Lessons_Guideline.d.ts +9 -13
  31. package/lib/types/LiturgicalChant.d.ts +55 -88
  32. package/lib/types/Locale.d.ts +1 -1
  33. package/lib/types/Locale.js +1 -1
  34. package/lib/types/MetaCondition.d.ts +18 -31
  35. package/lib/types/PactCategory.d.ts +48 -62
  36. package/lib/types/Patron.d.ts +66 -76
  37. package/lib/types/PatronCategory.d.ts +11 -21
  38. package/lib/types/PersonalityTrait.d.ts +31 -39
  39. package/lib/types/Profession.d.ts +296 -435
  40. package/lib/types/Property.d.ts +9 -13
  41. package/lib/types/Race.d.ts +99 -194
  42. package/lib/types/Region.d.ts +9 -13
  43. package/lib/types/Ritual.d.ts +58 -83
  44. package/lib/types/Service.d.ts +20 -25
  45. package/lib/types/SexPractice.d.ts +26 -34
  46. package/lib/types/Skill.d.ts +65 -90
  47. package/lib/types/SkillGroup.d.ts +13 -18
  48. package/lib/types/SkillModificationLevel.d.ts +72 -76
  49. package/lib/types/SocialStatus.d.ts +9 -13
  50. package/lib/types/Spell.d.ts +58 -83
  51. package/lib/types/State.d.ts +14 -20
  52. package/lib/types/Talisman.d.ts +44 -54
  53. package/lib/types/TargetCategory.d.ts +21 -16
  54. package/lib/types/UI.d.ts +1 -5
  55. package/lib/types/_Activatable.d.ts +607 -1177
  56. package/lib/types/_Activatable.js +0 -12
  57. package/lib/types/_ActivatableSelectOptionCategory.d.ts +356 -0
  58. package/lib/types/{prerequisites/single/CommonSuggestedByRCPPrerequisite.js → _ActivatableSelectOptionCategory.js} +0 -0
  59. package/lib/types/_ActivatableSkill.d.ts +24 -1013
  60. package/lib/types/_ActivatableSkill.js +1 -31
  61. package/lib/types/_ActivatableSkillCastingTime.d.ts +69 -0
  62. package/lib/types/_ActivatableSkillCastingTime.js +5 -0
  63. package/lib/types/_ActivatableSkillCheckResultBased.d.ts +41 -0
  64. package/lib/types/{equipment/_Armor.js → _ActivatableSkillCheckResultBased.js} +0 -3
  65. package/lib/types/_ActivatableSkillCost.d.ts +223 -0
  66. package/lib/types/_ActivatableSkillCost.js +1 -0
  67. package/lib/types/_ActivatableSkillDuration.d.ts +138 -0
  68. package/lib/types/_ActivatableSkillDuration.js +13 -0
  69. package/lib/types/_ActivatableSkillEffect.d.ts +68 -0
  70. package/lib/types/_ActivatableSkillEffect.js +1 -0
  71. package/lib/types/_ActivatableSkillRange.d.ts +103 -0
  72. package/lib/types/_ActivatableSkillRange.js +5 -0
  73. package/lib/types/_ActivatableSkillTargetCategory.d.ts +35 -0
  74. package/lib/types/_ActivatableSkillTargetCategory.js +1 -0
  75. package/lib/types/_AlternativeNames.d.ts +11 -0
  76. package/lib/types/_AlternativeNames.js +1 -0
  77. package/lib/types/_ArcaneTradition.d.ts +28 -0
  78. package/lib/types/_ArcaneTradition.js +4 -0
  79. package/lib/types/_Blessed.d.ts +22 -0
  80. package/lib/types/_Blessed.js +1 -0
  81. package/lib/types/_DiseasePoison.d.ts +116 -0
  82. package/lib/types/_DiseasePoison.js +5 -0
  83. package/lib/types/_Enhancements.d.ts +16 -20
  84. package/lib/types/_I18n.d.ts +1 -5
  85. package/lib/types/_Identifier.d.ts +32 -0
  86. package/lib/types/_Identifier.js +32 -0
  87. package/lib/types/_Influence.d.ts +27 -32
  88. package/lib/types/_LocaleMap.d.ts +10 -0
  89. package/lib/types/_LocaleMap.js +1 -0
  90. package/lib/types/_NonEmptyString.d.ts +9 -0
  91. package/lib/types/_NonEmptyString.js +1 -0
  92. package/lib/types/_Prerequisite.d.ts +61 -65
  93. package/lib/types/_ResponsiveText.d.ts +54 -0
  94. package/lib/types/_ResponsiveText.js +1 -0
  95. package/lib/types/_SimpleReferences.d.ts +334 -0
  96. package/lib/types/_SimpleReferences.js +1 -0
  97. package/lib/types/_SkillCheck.d.ts +6 -11
  98. package/lib/types/_Spellwork.d.ts +17 -0
  99. package/lib/types/_Spellwork.js +1 -0
  100. package/lib/types/equipment/EquipmentPackage.d.ts +24 -28
  101. package/lib/types/equipment/item/Alchemicum.d.ts +6 -0
  102. package/lib/types/equipment/item/Alchemicum.js +5 -0
  103. package/lib/types/equipment/item/Ammunition.d.ts +31 -0
  104. package/lib/types/equipment/item/Ammunition.js +5 -0
  105. package/lib/types/equipment/item/Animal.d.ts +18 -0
  106. package/lib/types/equipment/item/Animal.js +5 -0
  107. package/lib/types/equipment/item/AnimalCare.d.ts +48 -0
  108. package/lib/types/equipment/item/AnimalCare.js +5 -0
  109. package/lib/types/equipment/item/Armor.d.ts +185 -0
  110. package/lib/types/equipment/item/Armor.js +5 -0
  111. package/lib/types/equipment/item/BandageOrRemedy.d.ts +6 -0
  112. package/lib/types/equipment/item/BandageOrRemedy.js +5 -0
  113. package/lib/types/equipment/item/Book.d.ts +60 -0
  114. package/lib/types/equipment/item/Book.js +5 -0
  115. package/lib/types/equipment/item/CeremonialItem.d.ts +6 -0
  116. package/lib/types/equipment/item/CeremonialItem.js +5 -0
  117. package/lib/types/equipment/item/Clothes.d.ts +6 -0
  118. package/lib/types/equipment/item/Clothes.js +5 -0
  119. package/lib/types/equipment/item/Container.d.ts +6 -0
  120. package/lib/types/equipment/item/Container.js +5 -0
  121. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +41 -0
  122. package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +5 -0
  123. package/lib/types/equipment/item/GemOrPreciousStone.d.ts +43 -0
  124. package/lib/types/equipment/item/GemOrPreciousStone.js +5 -0
  125. package/lib/types/equipment/item/HealingHerb.d.ts +6 -0
  126. package/lib/types/equipment/item/HealingHerb.js +5 -0
  127. package/lib/types/equipment/item/Illumination.d.ts +6 -0
  128. package/lib/types/equipment/item/Illumination.js +5 -0
  129. package/lib/types/equipment/item/Jewelry.d.ts +60 -0
  130. package/lib/types/equipment/item/Jewelry.js +5 -0
  131. package/lib/types/equipment/item/Liebesspielzeug.d.ts +6 -0
  132. package/lib/types/equipment/item/Liebesspielzeug.js +5 -0
  133. package/lib/types/equipment/item/LuxuryGood.d.ts +6 -0
  134. package/lib/types/equipment/item/LuxuryGood.js +5 -0
  135. package/lib/types/equipment/item/MagicalArtifact.d.ts +39 -0
  136. package/lib/types/equipment/item/MagicalArtifact.js +5 -0
  137. package/lib/types/equipment/item/MusicalInstrument.d.ts +27 -0
  138. package/lib/types/equipment/item/MusicalInstrument.js +5 -0
  139. package/lib/types/equipment/item/OrienteeringAid.d.ts +6 -0
  140. package/lib/types/equipment/item/OrienteeringAid.js +5 -0
  141. package/lib/types/equipment/item/Poison.d.ts +163 -0
  142. package/lib/types/{Poison.js → equipment/item/Poison.js} +1 -1
  143. package/lib/types/equipment/item/RopeOrChain.d.ts +6 -0
  144. package/lib/types/equipment/item/RopeOrChain.js +5 -0
  145. package/lib/types/equipment/item/Stationary.d.ts +6 -0
  146. package/lib/types/equipment/item/Stationary.js +5 -0
  147. package/lib/types/equipment/item/ThievesTool.d.ts +6 -0
  148. package/lib/types/equipment/item/ThievesTool.js +5 -0
  149. package/lib/types/equipment/item/ToolOfTheTrade.d.ts +56 -0
  150. package/lib/types/equipment/item/ToolOfTheTrade.js +5 -0
  151. package/lib/types/equipment/item/TravelGearOrTool.d.ts +6 -0
  152. package/lib/types/equipment/item/TravelGearOrTool.js +5 -0
  153. package/lib/types/equipment/item/Vehicle.d.ts +18 -0
  154. package/lib/types/equipment/item/Vehicle.js +5 -0
  155. package/lib/types/equipment/item/Weapon.d.ts +152 -0
  156. package/lib/types/equipment/item/Weapon.js +5 -0
  157. package/lib/types/equipment/item/WeaponAccessory.d.ts +6 -0
  158. package/lib/types/equipment/item/WeaponAccessory.js +5 -0
  159. package/lib/types/equipment/item/_Item.d.ts +157 -0
  160. package/lib/types/equipment/item/_Item.js +1 -0
  161. package/lib/types/equipment/item/_MeleeWeapon.d.ts +113 -0
  162. package/lib/types/equipment/item/_MeleeWeapon.js +4 -0
  163. package/lib/types/equipment/item/_RangedWeapon.d.ts +108 -0
  164. package/lib/types/equipment/item/_RangedWeapon.js +4 -0
  165. package/lib/types/equipment/item/_Weapon.d.ts +57 -0
  166. package/lib/types/equipment/{_Weapon.js → item/_Weapon.js} +0 -3
  167. package/lib/types/equipment/item/sub/ArmorType.d.ts +36 -0
  168. package/lib/types/equipment/{ArmorType.js → item/sub/ArmorType.js} +1 -1
  169. package/lib/types/equipment/item/sub/Reach.d.ts +27 -0
  170. package/lib/types/equipment/{Reach.js → item/sub/Reach.js} +1 -1
  171. package/lib/types/magicalActions/AnimistPower.d.ts +168 -225
  172. package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +9 -13
  173. package/lib/types/magicalActions/Curse.d.ts +115 -184
  174. package/lib/types/magicalActions/DominationRitual.d.ts +98 -136
  175. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +79 -123
  176. package/lib/types/magicalActions/GeodeRitual.d.ts +124 -111
  177. package/lib/types/magicalActions/JesterTrick.d.ts +114 -109
  178. package/lib/types/magicalActions/MagicalDance.d.ts +71 -138
  179. package/lib/types/magicalActions/MagicalMelody.d.ts +65 -75
  180. package/lib/types/magicalActions/MagicalRune.d.ts +155 -189
  181. package/lib/types/magicalActions/ZibiljaRitual.d.ts +57 -65
  182. package/lib/types/magicalActions/_MusicTradition.d.ts +23 -13
  183. package/lib/types/magicalActions/_SkillReference.d.ts +1 -1
  184. package/lib/types/prerequisites/DisplayOption.d.ts +6 -8
  185. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +194 -16
  186. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +0 -3
  187. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +0 -1
  188. package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +0 -1
  189. package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +17 -14
  190. package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +0 -1
  191. package/lib/types/prerequisites/single/PactPrerequisite.d.ts +5 -14
  192. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +6 -6
  193. package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +0 -1
  194. package/lib/types/prerequisites/single/RacePrerequisite.d.ts +0 -1
  195. package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +32 -41
  196. package/lib/types/prerequisites/single/RulePrerequisite.d.ts +0 -1
  197. package/lib/types/prerequisites/single/SexPrerequisite.d.ts +0 -1
  198. package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +0 -1
  199. package/lib/types/prerequisites/single/StatePrerequisite.d.ts +0 -1
  200. package/lib/types/prerequisites/single/TextPrerequisite.d.ts +11 -15
  201. package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +20 -12
  202. package/lib/types/rule/CoreRule.d.ts +198 -206
  203. package/lib/types/rule/FocusRule.d.ts +19 -24
  204. package/lib/types/rule/FocusRule_Subject.d.ts +9 -13
  205. package/lib/types/rule/OptionalRule.d.ts +12 -35
  206. package/lib/types/rule/_Rule.d.ts +19 -0
  207. package/lib/types/rule/_Rule.js +1 -0
  208. package/lib/types/source/Publication.d.ts +34 -48
  209. package/lib/types/source/_Erratum.d.ts +2 -1
  210. package/lib/types/source/_PublicationRef.d.ts +41 -37
  211. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +13 -17
  212. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +8 -12
  213. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +8 -12
  214. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +8 -12
  215. package/lib/types/specialAbility/AncestorGlyph.d.ts +8 -12
  216. package/lib/types/specialAbility/BlessedTradition.d.ts +92 -123
  217. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +9 -13
  218. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +8 -12
  219. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +13 -17
  220. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +10 -18
  221. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +1 -1
  222. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +8 -12
  223. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +8 -12
  224. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +8 -12
  225. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +8 -12
  226. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +8 -12
  227. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +8 -12
  228. package/lib/types/specialAbility/LycantropicGift.d.ts +8 -12
  229. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +8 -12
  230. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +8 -12
  231. package/lib/types/specialAbility/MagicalTradition.d.ts +38 -58
  232. package/lib/types/specialAbility/PactGift.d.ts +75 -62
  233. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +16 -23
  234. package/lib/types/specialAbility/Sermon.d.ts +8 -12
  235. package/lib/types/specialAbility/SexSpecialAbility.d.ts +8 -12
  236. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +8 -12
  237. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +8 -12
  238. package/lib/types/specialAbility/VampiricGift.d.ts +8 -12
  239. package/lib/types/specialAbility/Vision.d.ts +8 -12
  240. package/lib/types/specialAbility/_Tradition.d.ts +12 -0
  241. package/lib/types/specialAbility/_Tradition.js +1 -0
  242. package/lib/types/specialAbility/sub/Language.d.ts +78 -104
  243. package/lib/types/specialAbility/sub/Script.d.ts +24 -51
  244. package/lib/types/specialAbility/sub/TradeSecret.d.ts +14 -20
  245. package/lib/types/specialAbility/sub/_LanguageScript.d.ts +13 -0
  246. package/lib/types/specialAbility/sub/_LanguageScript.js +1 -0
  247. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +20 -24
  248. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +21 -25
  249. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +20 -24
  250. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +31 -34
  251. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +20 -24
  252. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +45 -25
  253. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +20 -24
  254. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +20 -24
  255. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +20 -24
  256. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +20 -24
  257. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +20 -24
  258. package/lib/types/traditionArtifacts/SickleRitual.d.ts +20 -24
  259. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +20 -24
  260. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +21 -25
  261. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +21 -25
  262. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +20 -24
  263. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +20 -24
  264. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +19 -24
  265. package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +24 -16
  266. package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +9 -13
  267. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +9 -13
  268. package/lib/types/traditionArtifacts/sub/Brew.d.ts +9 -13
  269. package/lib/validation/schema.d.ts +11 -2
  270. package/lib/validation/schema.js +16 -4
  271. package/package.json +8 -7
  272. package/schema/Advantage.schema.json +49 -42
  273. package/schema/AnimalDisease.schema.json +17 -325
  274. package/schema/AnimalType.schema.json +17 -15
  275. package/schema/ArcaneBardTradition.schema.json +4 -42
  276. package/schema/ArcaneDancerTradition.schema.json +4 -42
  277. package/schema/Aspect.schema.json +21 -20
  278. package/schema/Attribute.schema.json +27 -27
  279. package/schema/Blessing.schema.json +188 -170
  280. package/schema/Cantrip.schema.json +334 -273
  281. package/schema/Ceremony.schema.json +90 -149
  282. package/schema/CombatTechnique_Close.schema.json +56 -67
  283. package/schema/CombatTechnique_Ranged.schema.json +46 -30
  284. package/schema/Condition.schema.json +46 -50
  285. package/schema/Continent.schema.json +18 -15
  286. package/schema/Culture.schema.json +408 -487
  287. package/schema/DerivedCharacteristic.schema.json +8 -8
  288. package/schema/Disadvantage.schema.json +45 -40
  289. package/schema/Disease.schema.json +7 -193
  290. package/schema/Element.schema.json +18 -15
  291. package/schema/ExperienceLevel.schema.json +5 -5
  292. package/schema/EyeColor.schema.json +17 -15
  293. package/schema/FamiliarsTrick.schema.json +491 -513
  294. package/schema/HairColor.schema.json +17 -15
  295. package/schema/Kirchenpraegung.schema.json +4 -4
  296. package/schema/Lessons_Curriculum.schema.json +202 -232
  297. package/schema/Lessons_Guideline.schema.json +17 -15
  298. package/schema/LiturgicalChant.schema.json +90 -149
  299. package/schema/Locale.schema.json +5 -5
  300. package/schema/MetaCondition.schema.json +46 -50
  301. package/schema/PactCategory.schema.json +101 -89
  302. package/schema/Patron.schema.json +239 -229
  303. package/schema/PatronCategory.schema.json +18 -27
  304. package/schema/PersonalityTrait.schema.json +50 -57
  305. package/schema/Profession.schema.json +810 -993
  306. package/schema/Property.schema.json +18 -16
  307. package/schema/Race.schema.json +200 -308
  308. package/schema/Region.schema.json +17 -15
  309. package/schema/Ritual.schema.json +111 -158
  310. package/schema/Service.schema.json +55 -51
  311. package/schema/SexPractice.schema.json +37 -39
  312. package/schema/Skill.schema.json +88 -89
  313. package/schema/SkillGroup.schema.json +23 -22
  314. package/schema/SkillModificationLevel.schema.json +93 -82
  315. package/schema/SocialStatus.schema.json +17 -15
  316. package/schema/Spell.schema.json +110 -158
  317. package/schema/State.schema.json +26 -25
  318. package/schema/Talisman.schema.json +115 -121
  319. package/schema/TargetCategory.schema.json +35 -20
  320. package/schema/UI.schema.json +830 -834
  321. package/schema/_Activatable.schema.json +1482 -2138
  322. package/schema/_ActivatableSelectOptionCategory.schema.json +1124 -0
  323. package/schema/_ActivatableSkill.schema.json +96 -1679
  324. package/schema/_ActivatableSkillCastingTime.schema.json +177 -0
  325. package/schema/_ActivatableSkillCheckResultBased.schema.json +101 -0
  326. package/schema/_ActivatableSkillCost.schema.json +448 -0
  327. package/schema/_ActivatableSkillDuration.schema.json +335 -0
  328. package/schema/_ActivatableSkillEffect.schema.json +153 -0
  329. package/schema/_ActivatableSkillRange.schema.json +221 -0
  330. package/schema/_ActivatableSkillTargetCategory.schema.json +117 -0
  331. package/schema/_AlternativeNames.schema.json +23 -0
  332. package/schema/_ArcaneTradition.schema.json +51 -0
  333. package/schema/_Blessed.schema.json +64 -0
  334. package/schema/_CommonnessRatedAdvantageDisadvantage.schema.json +2 -2
  335. package/schema/_Dice.schema.json +3 -3
  336. package/schema/_DiseasePoison.schema.json +173 -0
  337. package/schema/_Enhancements.schema.json +29 -26
  338. package/schema/_I18n.schema.json +8 -12
  339. package/schema/_Identifier.schema.json +73 -22
  340. package/schema/_ImprovementCost.schema.json +2 -2
  341. package/schema/_Influence.schema.json +48 -45
  342. package/schema/_NonEmptyString.schema.json +14 -0
  343. package/schema/_Prerequisite.schema.json +953 -765
  344. package/schema/_ResponsiveText.schema.json +66 -0
  345. package/schema/_Sex.schema.json +3 -3
  346. package/schema/_SimpleReferences.schema.json +586 -0
  347. package/schema/_SkillCheck.schema.json +5 -20
  348. package/schema/_Spellwork.schema.json +47 -0
  349. package/schema/equipment/EquipmentPackage.schema.json +37 -32
  350. package/schema/equipment/item/Alchemicum.schema.json +10 -0
  351. package/schema/equipment/item/Ammunition.schema.json +56 -0
  352. package/schema/equipment/item/Animal.schema.json +36 -0
  353. package/schema/equipment/item/AnimalCare.schema.json +124 -0
  354. package/schema/equipment/item/Armor.schema.json +288 -0
  355. package/schema/equipment/item/BandageOrRemedy.schema.json +10 -0
  356. package/schema/equipment/item/Book.schema.json +89 -0
  357. package/schema/equipment/item/CeremonialItem.schema.json +10 -0
  358. package/schema/equipment/item/Clothes.schema.json +10 -0
  359. package/schema/equipment/item/Container.schema.json +10 -0
  360. package/schema/equipment/item/EquipmentOfBlessedOnes.schema.json +59 -0
  361. package/schema/equipment/item/GemOrPreciousStone.schema.json +69 -0
  362. package/schema/equipment/item/HealingHerb.schema.json +10 -0
  363. package/schema/equipment/item/Illumination.schema.json +10 -0
  364. package/schema/equipment/item/Jewelry.schema.json +113 -0
  365. package/schema/equipment/item/Liebesspielzeug.schema.json +10 -0
  366. package/schema/equipment/item/LuxuryGood.schema.json +10 -0
  367. package/schema/equipment/item/MagicalArtifact.schema.json +64 -0
  368. package/schema/equipment/item/MusicalInstrument.schema.json +46 -0
  369. package/schema/equipment/item/OrienteeringAid.schema.json +10 -0
  370. package/schema/equipment/item/Poison.schema.json +378 -0
  371. package/schema/equipment/item/RopeOrChain.schema.json +10 -0
  372. package/schema/equipment/item/Stationary.schema.json +10 -0
  373. package/schema/equipment/item/ThievesTool.schema.json +10 -0
  374. package/schema/equipment/item/ToolOfTheTrade.schema.json +83 -0
  375. package/schema/equipment/item/TravelGearOrTool.schema.json +10 -0
  376. package/schema/equipment/item/Vehicle.schema.json +36 -0
  377. package/schema/equipment/item/Weapon.schema.json +265 -0
  378. package/schema/equipment/item/WeaponAccessory.schema.json +10 -0
  379. package/schema/equipment/item/_Item.schema.json +361 -0
  380. package/schema/equipment/item/_MeleeWeapon.schema.json +166 -0
  381. package/schema/equipment/item/_RangedWeapon.schema.json +172 -0
  382. package/schema/equipment/item/_Weapon.schema.json +99 -0
  383. package/schema/equipment/item/sub/ArmorType.schema.json +53 -0
  384. package/schema/equipment/{Reach.schema.json → item/sub/Reach.schema.json} +18 -16
  385. package/schema/magicalActions/AnimistPower.schema.json +413 -402
  386. package/schema/magicalActions/AnimistPower_Tribe.schema.json +17 -15
  387. package/schema/magicalActions/Curse.schema.json +288 -315
  388. package/schema/magicalActions/DominationRitual.schema.json +233 -220
  389. package/schema/magicalActions/ElvenMagicalSong.schema.json +132 -154
  390. package/schema/magicalActions/GeodeRitual.schema.json +284 -222
  391. package/schema/magicalActions/JesterTrick.schema.json +252 -202
  392. package/schema/magicalActions/MagicalDance.schema.json +147 -251
  393. package/schema/magicalActions/MagicalMelody.schema.json +129 -164
  394. package/schema/magicalActions/MagicalRune.schema.json +341 -323
  395. package/schema/magicalActions/ZibiljaRitual.schema.json +139 -112
  396. package/schema/magicalActions/_MusicTradition.schema.json +88 -14
  397. package/schema/magicalActions/_SkillReference.schema.json +4 -4
  398. package/schema/prerequisites/ConditionalPrerequisites.schema.json +3 -3
  399. package/schema/prerequisites/DisplayOption.schema.json +25 -14
  400. package/schema/prerequisites/PrerequisiteGroups.schema.json +928 -152
  401. package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +13 -25
  402. package/schema/prerequisites/single/AnimistPowerPrerequisite.schema.json +4 -7
  403. package/schema/prerequisites/single/CulturePrerequisite.schema.json +4 -8
  404. package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +30 -23
  405. package/schema/prerequisites/single/InfluencePrerequisite.schema.json +3 -7
  406. package/schema/prerequisites/single/PactPrerequisite.schema.json +9 -19
  407. package/schema/prerequisites/single/PrimaryAttributePrerequisite.schema.json +32 -33
  408. package/schema/prerequisites/single/PublicationPrerequisite.schema.json +3 -7
  409. package/schema/prerequisites/single/RacePrerequisite.schema.json +4 -8
  410. package/schema/prerequisites/single/RatedPrerequisite.schema.json +104 -107
  411. package/schema/prerequisites/single/RulePrerequisite.schema.json +4 -8
  412. package/schema/prerequisites/single/SexPrerequisite.schema.json +4 -8
  413. package/schema/prerequisites/single/SocialStatusPrerequisite.schema.json +3 -7
  414. package/schema/prerequisites/single/StatePrerequisite.schema.json +4 -8
  415. package/schema/prerequisites/single/TextPrerequisite.schema.json +36 -35
  416. package/schema/prerequisites/single/TraditionPrerequisite.schema.json +66 -68
  417. package/schema/rule/CoreRule.schema.json +904 -859
  418. package/schema/rule/FocusRule.schema.json +34 -30
  419. package/schema/rule/FocusRule_Subject.schema.json +17 -15
  420. package/schema/rule/OptionalRule.schema.json +24 -56
  421. package/schema/rule/_Rule.schema.json +52 -0
  422. package/schema/source/Publication.schema.json +45 -71
  423. package/schema/source/_Erratum.schema.json +5 -6
  424. package/schema/source/_PublicationRef.schema.json +87 -57
  425. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +41 -38
  426. package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +35 -32
  427. package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +35 -32
  428. package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +35 -32
  429. package/schema/specialAbility/AncestorGlyph.schema.json +33 -30
  430. package/schema/specialAbility/BlessedTradition.schema.json +230 -225
  431. package/schema/specialAbility/BrawlingSpecialAbility.schema.json +35 -32
  432. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +36 -33
  433. package/schema/specialAbility/CombatSpecialAbility.schema.json +41 -38
  434. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +39 -61
  435. package/schema/specialAbility/CommandSpecialAbility.schema.json +16 -16
  436. package/schema/specialAbility/FamiliarSpecialAbility.schema.json +33 -30
  437. package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +33 -30
  438. package/schema/specialAbility/FatePointSpecialAbility.schema.json +35 -32
  439. package/schema/specialAbility/GeneralSpecialAbility.schema.json +35 -32
  440. package/schema/specialAbility/KarmaSpecialAbility.schema.json +33 -30
  441. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +36 -33
  442. package/schema/specialAbility/LycantropicGift.schema.json +33 -30
  443. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +36 -33
  444. package/schema/specialAbility/MagicalSpecialAbility.schema.json +35 -32
  445. package/schema/specialAbility/MagicalTradition.schema.json +66 -87
  446. package/schema/specialAbility/PactGift.schema.json +240 -174
  447. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +39 -38
  448. package/schema/specialAbility/Sermon.schema.json +33 -30
  449. package/schema/specialAbility/SexSpecialAbility.schema.json +35 -32
  450. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +33 -30
  451. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +34 -31
  452. package/schema/specialAbility/VampiricGift.schema.json +33 -30
  453. package/schema/specialAbility/Vision.schema.json +33 -30
  454. package/schema/specialAbility/_Tradition.schema.json +23 -0
  455. package/schema/specialAbility/sub/Language.schema.json +170 -162
  456. package/schema/specialAbility/sub/Script.schema.json +35 -72
  457. package/schema/specialAbility/sub/TradeSecret.schema.json +26 -25
  458. package/schema/specialAbility/sub/_LanguageScript.schema.json +26 -0
  459. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +46 -43
  460. package/schema/traditionArtifacts/AttireEnchantment.schema.json +47 -43
  461. package/schema/traditionArtifacts/BowlEnchantment.schema.json +46 -43
  462. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +63 -56
  463. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +46 -43
  464. package/schema/traditionArtifacts/DaggerRitual.schema.json +132 -43
  465. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +46 -43
  466. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +46 -43
  467. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +46 -43
  468. package/schema/traditionArtifacts/OrbEnchantment.schema.json +46 -43
  469. package/schema/traditionArtifacts/RingEnchantment.schema.json +46 -43
  470. package/schema/traditionArtifacts/SickleRitual.schema.json +46 -43
  471. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +46 -43
  472. package/schema/traditionArtifacts/StaffEnchantment.schema.json +47 -43
  473. package/schema/traditionArtifacts/ToyEnchantment.schema.json +47 -43
  474. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +46 -43
  475. package/schema/traditionArtifacts/WandEnchantment.schema.json +46 -43
  476. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +46 -50
  477. package/schema/traditionArtifacts/sub/AnimalShape.schema.json +53 -25
  478. package/schema/traditionArtifacts/sub/AnimalShapePath.schema.json +17 -15
  479. package/schema/traditionArtifacts/sub/AnimalShapeSize.schema.json +17 -15
  480. package/schema/traditionArtifacts/sub/Brew.schema.json +17 -15
  481. package/lib/types/MagicalTraditionPlaceholder.d.ts +0 -32
  482. package/lib/types/MagicalTraditionPlaceholder.js +0 -5
  483. package/lib/types/Poison.d.ts +0 -208
  484. package/lib/types/equipment/ArmorType.d.ts +0 -31
  485. package/lib/types/equipment/Item.d.ts +0 -308
  486. package/lib/types/equipment/Item.js +0 -35
  487. package/lib/types/equipment/ItemGroup.d.ts +0 -31
  488. package/lib/types/equipment/ItemGroup.js +0 -5
  489. package/lib/types/equipment/Reach.d.ts +0 -31
  490. package/lib/types/equipment/_Armor.d.ts +0 -70
  491. package/lib/types/equipment/_Weapon.d.ts +0 -330
  492. package/lib/types/prerequisites/single/CommonSuggestedByRCPPrerequisite.d.ts +0 -3
  493. package/schema/MagicalTraditionPlaceholder.schema.json +0 -45
  494. package/schema/Poison.schema.json +0 -417
  495. package/schema/equipment/ArmorType.schema.json +0 -45
  496. package/schema/equipment/Item.schema.json +0 -621
  497. package/schema/equipment/ItemGroup.schema.json +0 -45
  498. package/schema/equipment/_Armor.schema.json +0 -125
  499. package/schema/equipment/_Weapon.schema.json +0 -664
  500. package/schema/prerequisites/single/CommonSuggestedByRCPPrerequisite.schema.json +0 -18
@@ -1,6 +1,8 @@
1
1
  /**
2
2
  * @main Property
3
3
  */
4
+ import { LocaleMap } from "./_LocaleMap.js";
5
+ import { NonEmptyString } from "./_NonEmptyString.js";
4
6
  import { SkillCheck } from "./_SkillCheck.js";
5
7
  /**
6
8
  * @title Property
@@ -19,19 +21,13 @@ export declare type Property = {
19
21
  check?: SkillCheck;
20
22
  /**
21
23
  * All translations for the entry, identified by IETF language tag (BCP47).
22
- * @minProperties 1
23
24
  */
24
- translations: {
25
- /**
26
- * @patternProperties ^[a-z]{2}-[A-Z]{2}$
27
- */
28
- [localeId: string]: {
29
- /**
30
- * The property's name.
31
- * @minLength 1
32
- */
33
- name: string;
34
- };
35
- };
25
+ translations: LocaleMap<PropertyTranslation>;
26
+ };
27
+ export declare type PropertyTranslation = {
28
+ /**
29
+ * The property's name.
30
+ */
31
+ name: NonEmptyString;
36
32
  };
37
33
  export declare const validateSchema: import("../validation/schema.js").TypeValidator<Property>;
@@ -4,7 +4,10 @@
4
4
  import { Errata } from "./source/_Erratum.js";
5
5
  import { PublicationRefs } from "./source/_PublicationRef.js";
6
6
  import { CommonnessRatedAdvantageDisadvantage } from "./_CommonnessRatedAdvantageDisadvantage.js";
7
- import { Dice, DieType } from "./_Dice.js";
7
+ import { Dice } from "./_Dice.js";
8
+ import { LocaleMap } from "./_LocaleMap.js";
9
+ import { NonEmptyString } from "./_NonEmptyString.js";
10
+ import { AdvantageReference, AttributeReference, CultureReference, EyeColorReference, HairColorReference } from "./_SimpleReferences.js";
8
11
  /**
9
12
  * A playable race with stats and skills.
10
13
  * @title Race
@@ -30,14 +33,14 @@ export declare type Race = {
30
33
  * Describes how to raise or lower maximum attribute values during character
31
34
  * creation.
32
35
  */
33
- attribute_adjustments: AttributeAdjustments.Config;
36
+ attribute_adjustments: AttributeAdjustments;
34
37
  /**
35
38
  * A list of automatically applied advantages. This does only work for
36
39
  * advantages with no further configuration such as level or special
37
40
  * selection.
38
41
  * @minItems 1
39
42
  */
40
- automatic_advantages?: AutomaticAdvantage[];
43
+ automatic_advantages?: AdvantageReference[];
41
44
  /**
42
45
  * A list of strongly recommended advantages.
43
46
  * @minItems 1
@@ -79,7 +82,7 @@ export declare type Race = {
79
82
  /**
80
83
  * Configuration for random weight generation.
81
84
  */
82
- weight: Weight.Config;
85
+ weight: Weight;
83
86
  /**
84
87
  * Defines the starting ages for the race. It depends on the selected
85
88
  * experience level.
@@ -94,23 +97,17 @@ export declare type Race = {
94
97
  * This excludes common and uncommon advantages and disadvantages, since they
95
98
  * may be defined for the whole race even if variants exist.
96
99
  */
97
- variant_dependent: VariantDependent;
100
+ variant_dependent: RaceVariantDependent;
98
101
  src: PublicationRefs;
99
102
  /**
100
103
  * All translations for the entry, identified by IETF language tag (BCP47).
101
- * @minProperties 1
102
- */
103
- translations: {
104
- /**
105
- * @patternProperties ^[a-z]{2}-[A-Z]{2}$
106
- */
107
- [localeId: string]: RaceTranslation;
108
- };
104
+ */
105
+ translations: LocaleMap<RaceTranslation>;
109
106
  };
110
107
  /**
111
108
  * The race’s base values.
112
109
  */
113
- declare type BaseValues = {
110
+ export declare type BaseValues = {
114
111
  /**
115
112
  * The race’s life point base value.
116
113
  * @integer
@@ -133,121 +130,69 @@ declare type BaseValues = {
133
130
  */
134
131
  movement: number;
135
132
  };
136
- declare namespace AttributeAdjustments {
133
+ /**
134
+ * Describes how to raise or lower maximum attribute values during character
135
+ * creation.
136
+ */
137
+ export declare type AttributeAdjustments = AttributeAdjustment[];
138
+ /**
139
+ * An array of attribute maximum modifiers. The value will be added to the
140
+ * current maximum of the selected attribute that has been chosen from the
141
+ * listed attributes (negative values will lower the maximum).
142
+ * @minItems 1
143
+ */
144
+ export declare type AttributeAdjustment = {
137
145
  /**
138
- * Describes how to raise or lower maximum attribute values during character
139
- * creation.
146
+ * The value by which the selected attribute's maximum is modified
147
+ * (negative values will lower the maximum).
148
+ * @integer
149
+ */
150
+ value: number;
151
+ /**
152
+ * A list of attributes the player has to choose from. If only one attribute
153
+ * is listed, no attribute has to be chosen.
154
+ * @minItems 1
140
155
  */
141
- type Config = {
142
- /**
143
- * An array of attribute maximum modifiers. The value will be added to the
144
- * current maximum of the ID-specified attribute (negative values will lower
145
- * the maximum).
146
- * @minItems 1
147
- */
148
- fix?: Fix[];
149
- /**
150
- * Used if the player has to choose between different modifiers.
151
- */
152
- selection: Selection;
153
- };
154
- type Fix = {
155
- /**
156
- * The attribute's identifier.
157
- * @integer
158
- * @minimum 1
159
- * @maximum 8
160
- */
161
- id: number;
162
- /**
163
- * The value by which the attribute's maximum is modified (negative values
164
- * will lower the maximum).
165
- * @integer
166
- */
167
- value: number;
168
- };
169
- type Selection = {
170
- /**
171
- * The value by which the selected attribute's maximum is modified
172
- * (negative values will lower the maximum).
173
- * @integer
174
- */
175
- value: number;
176
- /**
177
- * A list of attributes the player has to choose from.
178
- * @minItems 2
179
- */
180
- list: SelectionItem[];
181
- };
182
- type SelectionItem = {
183
- /**
184
- * The attribute's identifier.
185
- * @integer
186
- * @minimum 1
187
- * @maximum 8
188
- */
189
- id: number;
190
- };
191
- }
192
- declare type AutomaticAdvantage = {
193
- /**
194
- * The advantage's identifier.
156
+ list: AttributeReference[];
157
+ };
158
+ /**
159
+ * Configuration for random weight generation.
160
+ */
161
+ export declare type Weight = {
162
+ /**
163
+ * The base value used for random weight. The height subtrahend; in case of
164
+ * `Height - 110 + 2D6` it is `110`.
195
165
  * @integer
196
166
  * @minimum 1
197
167
  */
198
- id: number;
199
- };
200
- declare namespace Weight {
168
+ base: number;
201
169
  /**
202
- * Configuration for random weight generation.
170
+ * The dice used for random weight.
171
+ * @minItems 1
203
172
  */
204
- export type Config = {
205
- /**
206
- * The base value used for random weight. The height subtrahend; in case of
207
- * `Height - 110 + 2D6` it is `110`.
208
- * @integer
209
- * @minimum 1
210
- */
211
- base: number;
212
- /**
213
- * The dice used for random weight.
214
- * @minItems 1
215
- */
216
- random: Die[];
217
- };
218
- type Die = {
219
- /**
220
- * Number of dice of the same type. Example: 2 in 2D6.
221
- * @integer
222
- * @minimum 1
223
- */
224
- number: number;
225
- /**
226
- * Number of sides on every die. Example: 6 in 2D6.
227
- */
228
- sides: DieType;
229
- /**
230
- * The strategy how to offset the randomly generated values against the
231
- * base value. Either they are all added or subtracted or even results are
232
- * added and odd results are subtracted.
233
- */
234
- offset_strategy: OffsetStrategy;
235
- };
173
+ random: WeightDice[];
174
+ };
175
+ export declare type WeightDice = Dice & {
236
176
  /**
237
177
  * The strategy how to offset the randomly generated values against the
238
178
  * base value. Either they are all added or subtracted or even results are
239
179
  * added and odd results are subtracted.
240
180
  */
241
- type OffsetStrategy = {
242
- tag: "Add";
243
- } | {
244
- tag: "Subtract";
245
- } | {
246
- tag: "AddEvenSubtractOdd";
247
- };
248
- export {};
249
- }
250
- declare type StartingAgeConfigForExperienceLevel = {
181
+ offset_strategy: WeightDiceOffsetStrategy;
182
+ };
183
+ /**
184
+ * The strategy how to offset the randomly generated values against the
185
+ * base value. Either they are all added or subtracted or even results are
186
+ * added and odd results are subtracted.
187
+ */
188
+ export declare type WeightDiceOffsetStrategy = {
189
+ tag: "Add";
190
+ } | {
191
+ tag: "Subtract";
192
+ } | {
193
+ tag: "AddEvenSubtractOdd";
194
+ };
195
+ export declare type StartingAgeConfigForExperienceLevel = {
251
196
  /**
252
197
  * The selected experience level's identifier.
253
198
  * @integer
@@ -274,32 +219,36 @@ declare type StartingAgeConfigForExperienceLevel = {
274
219
  * This excludes common and uncommon advantages and disadvantages, since they
275
220
  * may be defined for the whole race even if variants exist.
276
221
  */
277
- declare type VariantDependent = {
222
+ export declare type RaceVariantDependent = {
278
223
  tag: "HasVariants";
279
- /**
280
- * A list of available race variants.
281
- * @minItems 1
282
- */
283
- variants: RaceVariant[];
224
+ has_variants: RaceVariants;
284
225
  } | {
285
226
  tag: "Plain";
227
+ plain: ValuesForRaceWithoutVariants;
228
+ };
229
+ /**
230
+ * A list of available race variants.
231
+ * @minItems 1
232
+ */
233
+ export declare type RaceVariants = RaceVariant[];
234
+ export declare type ValuesForRaceWithoutVariants = {
286
235
  /**
287
236
  * The list of common cultures.
288
237
  * @minItems 1
289
238
  */
290
- common_cultures: CommonCulture[];
239
+ common_cultures: CultureReference[];
291
240
  /**
292
241
  * An array containing 20 (numeric) hair color identifiers. The array also represents the 20-sided die for a random hair color.
293
242
  * @minItems 20
294
243
  * @maxItems 20
295
244
  */
296
- hair_color: HairColor[];
245
+ hair_color: HairColorReference[];
297
246
  /**
298
247
  * An array containing 20 (numeric) eye color identifiers. The array also represents the 20-sided die for a random eye color.
299
248
  * @minItems 20
300
249
  * @maxItems 20
301
250
  */
302
- eye_color: EyeColor[];
251
+ eye_color: EyeColorReference[];
303
252
  /**
304
253
  * Configuration for random height generation.
305
254
  */
@@ -308,7 +257,7 @@ declare type VariantDependent = {
308
257
  /**
309
258
  * @title Race Variant
310
259
  */
311
- declare type RaceVariant = {
260
+ export declare type RaceVariant = {
312
261
  /**
313
262
  * An unique, increasing integer.
314
263
  * @integer
@@ -319,7 +268,7 @@ declare type RaceVariant = {
319
268
  * The list of common cultures.
320
269
  * @minItems 1
321
270
  */
322
- common_cultures: CommonCulture[];
271
+ common_cultures: CultureReference[];
323
272
  /**
324
273
  * A list of common advantages. If common advantages are defined by the base race, leave this field empty. This field overrides the same field of the base race, if both are defined.
325
274
  * @minItems 1
@@ -345,56 +294,26 @@ declare type RaceVariant = {
345
294
  * @minItems 20
346
295
  * @maxItems 20
347
296
  */
348
- hair_color: HairColor[];
297
+ hair_color: HairColorReference[];
349
298
  /**
350
299
  * An array containing 20 (numeric) eye color identifiers. The array also represents the 20-sided die for a random eye color.
351
300
  * @minItems 20
352
301
  * @maxItems 20
353
302
  */
354
- eye_color: EyeColor[];
303
+ eye_color: EyeColorReference[];
355
304
  /**
356
305
  * Configuration for random height generation.
357
306
  */
358
307
  height: Height;
359
308
  /**
360
309
  * All translations for the entry, identified by IETF language tag (BCP47).
361
- * @minProperties 1
362
- */
363
- translations: {
364
- /**
365
- * @patternProperties ^[a-z]{2}-[A-Z]{2}$
366
- */
367
- [localeId: string]: RaceVariantTranslation;
368
- };
369
- };
370
- declare type CommonCulture = {
371
- /**
372
- * The culture's identifier.
373
- * @integer
374
- * @minimum 1
375
310
  */
376
- id: number;
377
- };
378
- declare type HairColor = {
379
- /**
380
- * The hair color's identifier.
381
- * @integer
382
- * @minimum 1
383
- */
384
- id: number;
385
- };
386
- declare type EyeColor = {
387
- /**
388
- * The hair color's identifier.
389
- * @integer
390
- * @minimum 1
391
- */
392
- id: number;
311
+ translations: LocaleMap<RaceVariantTranslation>;
393
312
  };
394
313
  /**
395
314
  * Configuration for random height generation.
396
315
  */
397
- declare type Height = {
316
+ export declare type Height = {
398
317
  /**
399
318
  * The base value used for random height.
400
319
  * @integer
@@ -407,97 +326,83 @@ declare type Height = {
407
326
  */
408
327
  random: Dice[];
409
328
  };
410
- declare type RaceVariantTranslation = {
329
+ export declare type RaceVariantTranslation = {
411
330
  /**
412
331
  * The race variant's name.
413
- * @minLength 1
414
332
  */
415
- name: string;
333
+ name: NonEmptyString;
416
334
  /**
417
335
  * The respective common advantages text from the source book. If common
418
336
  * advantages are defined by the base race, leave this field empty. This field
419
337
  * overrides the same field of the base race, if both are defined.
420
- * @minLength 1
421
338
  */
422
- common_advantages?: string;
339
+ common_advantages?: NonEmptyString;
423
340
  /**
424
341
  * The respective common disadvantages text from the source book. If common
425
342
  * disadvantages are defined by the base race, leave this field empty. This
426
343
  * field overrides the same field of the base race, if both are defined.
427
- * @minLength 1
428
344
  */
429
- common_disadvantages?: string;
345
+ common_disadvantages?: NonEmptyString;
430
346
  /**
431
347
  * The respective uncommon advantages text from the source book. If uncommon
432
348
  * advantages are defined by the base race, leave this field empty. This field
433
349
  * overrides the same field of the base race, if both are defined.
434
- * @minLength 1
435
350
  */
436
- uncommon_advantages?: string;
351
+ uncommon_advantages?: NonEmptyString;
437
352
  /**
438
353
  * The respective uncommon disadvantages text from the source book. If
439
354
  * uncommon disadvantages are defined by the base race, leave this field
440
355
  * empty. This field overrides the same field of the base race, if both are
441
356
  * defined.
442
- * @minLength 1
443
357
  */
444
- uncommon_disadvantages?: string;
358
+ uncommon_disadvantages?: NonEmptyString;
445
359
  };
446
- declare type RaceTranslation = {
360
+ export declare type RaceTranslation = {
447
361
  /**
448
362
  * The race's name.
449
- * @minLength 1
450
363
  */
451
- name: string;
364
+ name: NonEmptyString;
452
365
  /**
453
366
  * The respective attribute adjustments text from the source book.
454
- * @minLength 1
455
367
  */
456
- attribute_adjustments: string;
368
+ attribute_adjustments: NonEmptyString;
457
369
  /**
458
370
  * The respective automatic advantages text from the source book.
459
- * @minLength 1
460
371
  */
461
- automatic_advantages?: string;
372
+ automatic_advantages?: NonEmptyString;
462
373
  /**
463
374
  * The respective strongly recommended advantages text from the source book.
464
- * @minLength 1
465
375
  */
466
- strongly_recommended_advantages?: string;
376
+ strongly_recommended_advantages?: NonEmptyString;
467
377
  /**
468
- * The respective strongly recommended disadvantages text from the source book.
469
- * @minLength 1
378
+ * The respective strongly recommended disadvantages text from the source
379
+ * book.
470
380
  */
471
- strongly_recommended_disadvantages?: string;
381
+ strongly_recommended_disadvantages?: NonEmptyString;
472
382
  /**
473
383
  * The respective common advantages text from the source book. If common
474
384
  * advantages are defined by race variants, leave this field empty. It is
475
385
  * overridden by the same field in race variants.
476
- * @minLength 1
477
386
  */
478
- common_advantages?: string;
387
+ common_advantages?: NonEmptyString;
479
388
  /**
480
389
  * The respective common disadvantages text from the source book. If common
481
390
  * disadvantages are defined by race variants, leave this field empty. It is
482
391
  * overridden by the same field in race variants.
483
- * @minLength 1
484
392
  */
485
- common_disadvantages?: string;
393
+ common_disadvantages?: NonEmptyString;
486
394
  /**
487
395
  * The respective uncommon advantages text from the source book. If uncommon
488
396
  * advantages are defined by race variants, leave this field empty. It is
489
397
  * overridden by the same field in race variants.
490
- * @minLength 1
491
398
  */
492
- uncommon_advantages?: string;
399
+ uncommon_advantages?: NonEmptyString;
493
400
  /**
494
401
  * The respective uncommon disadvantages text from the source book. If
495
402
  * uncommon disadvantages are defined by race variants, leave this field
496
403
  * empty. It is overridden by the same field in race variants.
497
- * @minLength 1
498
404
  */
499
- uncommon_disadvantages?: string;
405
+ uncommon_disadvantages?: NonEmptyString;
500
406
  errata?: Errata;
501
407
  };
502
408
  export declare const validateSchema: import("../validation/schema.js").TypeValidator<Race>;
503
- export {};
@@ -1,6 +1,8 @@
1
1
  /**
2
2
  * @main Region
3
3
  */
4
+ import { LocaleMap } from "./_LocaleMap.js";
5
+ import { NonEmptyString } from "./_NonEmptyString.js";
4
6
  /**
5
7
  * @title Region
6
8
  */
@@ -13,19 +15,13 @@ export declare type Region = {
13
15
  id: number;
14
16
  /**
15
17
  * All translations for the entry, identified by IETF language tag (BCP47).
16
- * @minProperties 1
17
18
  */
18
- translations: {
19
- /**
20
- * @patternProperties ^[a-z]{2}-[A-Z]{2}$
21
- */
22
- [localeId: string]: {
23
- /**
24
- * The region name.
25
- * @minLength 1
26
- */
27
- name: string;
28
- };
29
- };
19
+ translations: LocaleMap<RegionTranslation>;
20
+ };
21
+ export declare type RegionTranslation = {
22
+ /**
23
+ * The region name.
24
+ */
25
+ name: NonEmptyString;
30
26
  };
31
27
  export declare const validateSchema: import("../validation/schema.js").TypeValidator<Region>;