optolith-database-schema 0.10.0 → 0.11.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 (428) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/lib/config.d.ts +156 -5
  3. package/lib/config.js +154 -154
  4. package/lib/errors.d.ts +20 -0
  5. package/lib/errors.js +33 -0
  6. package/lib/helpers/array.d.ts +14 -0
  7. package/lib/helpers/array.js +15 -0
  8. package/lib/helpers/i18n.d.ts +1 -0
  9. package/lib/helpers/i18n.js +1 -0
  10. package/lib/helpers/io.d.ts +29 -0
  11. package/lib/helpers/io.js +51 -0
  12. package/lib/helpers/objectPath.d.ts +13 -0
  13. package/lib/helpers/objectPath.js +3 -0
  14. package/lib/helpers/pair.d.ts +20 -0
  15. package/lib/helpers/pair.js +20 -0
  16. package/lib/helpers/result.d.ts +57 -0
  17. package/lib/helpers/result.js +45 -0
  18. package/lib/helpers/typeSafety.d.ts +6 -0
  19. package/lib/helpers/typeSafety.js +8 -0
  20. package/lib/main.d.ts +50 -15
  21. package/lib/main.js +46 -133
  22. package/lib/typeConfig.d.ts +10 -0
  23. package/lib/typeConfig.js +1 -0
  24. package/lib/types/Advantage.d.ts +4 -3
  25. package/lib/types/Advantage.js +9 -2
  26. package/lib/types/AnimalDisease.d.ts +4 -3
  27. package/lib/types/AnimalDisease.js +9 -2
  28. package/lib/types/AnimalType.d.ts +4 -3
  29. package/lib/types/AnimalType.js +9 -2
  30. package/lib/types/ArcaneBardTradition.d.ts +3 -2
  31. package/lib/types/ArcaneBardTradition.js +9 -2
  32. package/lib/types/ArcaneDancerTradition.d.ts +3 -2
  33. package/lib/types/ArcaneDancerTradition.js +9 -2
  34. package/lib/types/Aspect.d.ts +4 -3
  35. package/lib/types/Aspect.js +9 -2
  36. package/lib/types/Attribute.d.ts +4 -5
  37. package/lib/types/Attribute.js +9 -4
  38. package/lib/types/Blessing.d.ts +12 -11
  39. package/lib/types/Blessing.js +9 -2
  40. package/lib/types/Cantrip.d.ts +18 -17
  41. package/lib/types/Cantrip.js +9 -2
  42. package/lib/types/Ceremony.d.ts +6 -5
  43. package/lib/types/Ceremony.js +9 -2
  44. package/lib/types/CombatTechnique_Close.d.ts +7 -6
  45. package/lib/types/CombatTechnique_Close.js +9 -2
  46. package/lib/types/CombatTechnique_Ranged.d.ts +7 -6
  47. package/lib/types/CombatTechnique_Ranged.js +9 -2
  48. package/lib/types/Condition.d.ts +6 -5
  49. package/lib/types/Condition.js +9 -2
  50. package/lib/types/Continent.d.ts +4 -3
  51. package/lib/types/Continent.js +9 -2
  52. package/lib/types/Culture.d.ts +25 -24
  53. package/lib/types/Culture.js +13 -6
  54. package/lib/types/DerivedCharacteristic.d.ts +6 -5
  55. package/lib/types/DerivedCharacteristic.js +9 -2
  56. package/lib/types/Disadvantage.d.ts +4 -3
  57. package/lib/types/Disadvantage.js +9 -2
  58. package/lib/types/Disease.d.ts +4 -3
  59. package/lib/types/Disease.js +9 -2
  60. package/lib/types/Element.d.ts +4 -3
  61. package/lib/types/Element.js +9 -2
  62. package/lib/types/ExperienceLevel.d.ts +4 -3
  63. package/lib/types/ExperienceLevel.js +9 -2
  64. package/lib/types/EyeColor.d.ts +4 -3
  65. package/lib/types/EyeColor.js +9 -2
  66. package/lib/types/FamiliarsTrick.d.ts +26 -25
  67. package/lib/types/FamiliarsTrick.js +9 -2
  68. package/lib/types/HairColor.d.ts +4 -3
  69. package/lib/types/HairColor.js +9 -2
  70. package/lib/types/Kirchenpraegung.d.ts +3 -2
  71. package/lib/types/Kirchenpraegung.js +9 -2
  72. package/lib/types/Lessons_Curriculum.d.ts +22 -21
  73. package/lib/types/Lessons_Curriculum.js +9 -2
  74. package/lib/types/Lessons_Guideline.d.ts +4 -3
  75. package/lib/types/Lessons_Guideline.js +9 -2
  76. package/lib/types/LiturgicalChant.d.ts +6 -5
  77. package/lib/types/LiturgicalChant.js +9 -2
  78. package/lib/types/Locale.d.ts +4 -7
  79. package/lib/types/Locale.js +10 -3
  80. package/lib/types/MetaCondition.d.ts +6 -5
  81. package/lib/types/MetaCondition.js +9 -2
  82. package/lib/types/PactCategory.d.ts +10 -9
  83. package/lib/types/PactCategory.js +9 -2
  84. package/lib/types/Patron.d.ts +15 -14
  85. package/lib/types/Patron.js +11 -4
  86. package/lib/types/PatronCategory.d.ts +4 -3
  87. package/lib/types/PatronCategory.js +9 -2
  88. package/lib/types/PersonalityTrait.d.ts +7 -6
  89. package/lib/types/PersonalityTrait.js +9 -2
  90. package/lib/types/Profession.d.ts +43 -42
  91. package/lib/types/Profession.js +10 -3
  92. package/lib/types/Property.d.ts +4 -3
  93. package/lib/types/Property.js +9 -2
  94. package/lib/types/Race.d.ts +18 -17
  95. package/lib/types/Race.js +10 -3
  96. package/lib/types/Region.d.ts +4 -3
  97. package/lib/types/Region.js +9 -2
  98. package/lib/types/Ritual.d.ts +6 -5
  99. package/lib/types/Ritual.js +9 -2
  100. package/lib/types/Service.d.ts +6 -5
  101. package/lib/types/Service.js +10 -3
  102. package/lib/types/SexPractice.d.ts +5 -4
  103. package/lib/types/SexPractice.js +9 -2
  104. package/lib/types/Skill.d.ts +10 -9
  105. package/lib/types/Skill.js +11 -4
  106. package/lib/types/SkillGroup.d.ts +4 -3
  107. package/lib/types/SkillGroup.js +9 -2
  108. package/lib/types/SkillModificationLevel.d.ts +8 -7
  109. package/lib/types/SkillModificationLevel.js +10 -3
  110. package/lib/types/SocialStatus.d.ts +4 -3
  111. package/lib/types/SocialStatus.js +9 -2
  112. package/lib/types/Spell.d.ts +6 -5
  113. package/lib/types/Spell.js +9 -2
  114. package/lib/types/State.d.ts +6 -5
  115. package/lib/types/State.js +9 -2
  116. package/lib/types/Talisman.d.ts +5 -4
  117. package/lib/types/Talisman.js +10 -3
  118. package/lib/types/TargetCategory.d.ts +5 -4
  119. package/lib/types/TargetCategory.js +9 -2
  120. package/lib/types/UI.d.ts +3 -2
  121. package/lib/types/UI.js +9 -2
  122. package/lib/types/_Activatable.d.ts +109 -109
  123. package/lib/types/_Activatable.js +5 -5
  124. package/lib/types/_ActivatableSelectOptionCategory.d.ts +27 -27
  125. package/lib/types/_ActivatableSelectOptionCategory.js +1 -1
  126. package/lib/types/_ActivatableSkill.d.ts +8 -8
  127. package/lib/types/_ActivatableSkillCastingTime.d.ts +8 -8
  128. package/lib/types/_ActivatableSkillCastingTime.js +1 -1
  129. package/lib/types/_ActivatableSkillCheckResultBased.d.ts +2 -2
  130. package/lib/types/_ActivatableSkillCheckResultBased.js +2 -2
  131. package/lib/types/_ActivatableSkillCost.d.ts +20 -20
  132. package/lib/types/_ActivatableSkillDuration.d.ts +13 -13
  133. package/lib/types/_ActivatableSkillDuration.js +1 -1
  134. package/lib/types/_ActivatableSkillEffect.d.ts +4 -4
  135. package/lib/types/_ActivatableSkillRange.d.ts +6 -6
  136. package/lib/types/_ActivatableSkillRange.js +1 -1
  137. package/lib/types/_ActivatableSkillTargetCategory.d.ts +4 -4
  138. package/lib/types/_AlternativeNames.d.ts +1 -1
  139. package/lib/types/_ArcaneTradition.d.ts +2 -2
  140. package/lib/types/_Blessed.d.ts +2 -2
  141. package/lib/types/_CommonnessRatedAdvantageDisadvantage.d.ts +1 -1
  142. package/lib/types/_Dice.d.ts +1 -1
  143. package/lib/types/_Dice.js +1 -1
  144. package/lib/types/_DiseasePoison.d.ts +4 -4
  145. package/lib/types/_DiseasePoison.js +1 -1
  146. package/lib/types/_Enhancements.d.ts +3 -3
  147. package/lib/types/_I18n.d.ts +1 -1
  148. package/lib/types/_Identifier.d.ts +132 -132
  149. package/lib/types/_IdentifierGroup.d.ts +20 -20
  150. package/lib/types/_ImprovementCost.js +1 -1
  151. package/lib/types/_Influence.d.ts +3 -3
  152. package/lib/types/_LocaleMap.d.ts +1 -1
  153. package/lib/types/_NonEmptyString.d.ts +2 -2
  154. package/lib/types/_Prerequisite.d.ts +21 -21
  155. package/lib/types/_ResponsiveText.d.ts +3 -3
  156. package/lib/types/_Sex.js +1 -1
  157. package/lib/types/_SimpleReferences.d.ts +44 -44
  158. package/lib/types/_SkillCheck.d.ts +1 -1
  159. package/lib/types/_SkillCheck.js +1 -1
  160. package/lib/types/_Spellwork.d.ts +2 -2
  161. package/lib/types/equipment/EquipmentPackage.d.ts +6 -5
  162. package/lib/types/equipment/EquipmentPackage.js +9 -2
  163. package/lib/types/equipment/item/Alchemicum.d.ts +3 -2
  164. package/lib/types/equipment/item/Alchemicum.js +9 -2
  165. package/lib/types/equipment/item/Ammunition.d.ts +6 -5
  166. package/lib/types/equipment/item/Ammunition.js +9 -2
  167. package/lib/types/equipment/item/Animal.d.ts +4 -3
  168. package/lib/types/equipment/item/Animal.js +9 -2
  169. package/lib/types/equipment/item/AnimalCare.d.ts +8 -7
  170. package/lib/types/equipment/item/AnimalCare.js +9 -2
  171. package/lib/types/equipment/item/Armor.d.ts +15 -14
  172. package/lib/types/equipment/item/Armor.js +9 -2
  173. package/lib/types/equipment/item/BandageOrRemedy.d.ts +4 -3
  174. package/lib/types/equipment/item/BandageOrRemedy.js +9 -2
  175. package/lib/types/equipment/item/Book.d.ts +6 -5
  176. package/lib/types/equipment/item/Book.js +9 -2
  177. package/lib/types/equipment/item/CeremonialItem.d.ts +4 -3
  178. package/lib/types/equipment/item/CeremonialItem.js +9 -2
  179. package/lib/types/equipment/item/Clothes.d.ts +3 -2
  180. package/lib/types/equipment/item/Clothes.js +9 -2
  181. package/lib/types/equipment/item/Container.d.ts +3 -2
  182. package/lib/types/equipment/item/Container.js +9 -2
  183. package/lib/types/equipment/item/Elixir.d.ts +6 -5
  184. package/lib/types/equipment/item/Elixir.js +9 -2
  185. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +4 -3
  186. package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +9 -2
  187. package/lib/types/equipment/item/GemOrPreciousStone.d.ts +6 -5
  188. package/lib/types/equipment/item/GemOrPreciousStone.js +9 -2
  189. package/lib/types/equipment/item/IlluminationLightSource.d.ts +6 -5
  190. package/lib/types/equipment/item/IlluminationLightSource.js +10 -3
  191. package/lib/types/equipment/item/IlluminationRefillsOrSupplies.d.ts +3 -2
  192. package/lib/types/equipment/item/IlluminationRefillsOrSupplies.js +9 -2
  193. package/lib/types/equipment/item/Jewelry.d.ts +7 -6
  194. package/lib/types/equipment/item/Jewelry.js +9 -2
  195. package/lib/types/equipment/item/Liebesspielzeug.d.ts +3 -2
  196. package/lib/types/equipment/item/Liebesspielzeug.js +9 -2
  197. package/lib/types/equipment/item/LuxuryGood.d.ts +4 -3
  198. package/lib/types/equipment/item/LuxuryGood.js +9 -2
  199. package/lib/types/equipment/item/MagicalArtifact.d.ts +6 -5
  200. package/lib/types/equipment/item/MagicalArtifact.js +9 -2
  201. package/lib/types/equipment/item/MusicalInstrument.d.ts +4 -3
  202. package/lib/types/equipment/item/MusicalInstrument.js +9 -2
  203. package/lib/types/equipment/item/OrienteeringAid.d.ts +3 -2
  204. package/lib/types/equipment/item/OrienteeringAid.js +9 -2
  205. package/lib/types/equipment/item/Poison.d.ts +30 -29
  206. package/lib/types/equipment/item/Poison.js +12 -5
  207. package/lib/types/equipment/item/RopeOrChain.d.ts +3 -2
  208. package/lib/types/equipment/item/RopeOrChain.js +9 -2
  209. package/lib/types/equipment/item/Stationary.d.ts +3 -2
  210. package/lib/types/equipment/item/Stationary.js +9 -2
  211. package/lib/types/equipment/item/ThievesTool.d.ts +3 -2
  212. package/lib/types/equipment/item/ThievesTool.js +9 -2
  213. package/lib/types/equipment/item/ToolOfTheTrade.d.ts +7 -6
  214. package/lib/types/equipment/item/ToolOfTheTrade.js +9 -2
  215. package/lib/types/equipment/item/TravelGearOrTool.d.ts +3 -2
  216. package/lib/types/equipment/item/TravelGearOrTool.js +9 -2
  217. package/lib/types/equipment/item/Vehicle.d.ts +4 -3
  218. package/lib/types/equipment/item/Vehicle.js +9 -2
  219. package/lib/types/equipment/item/Weapon.d.ts +11 -10
  220. package/lib/types/equipment/item/Weapon.js +9 -2
  221. package/lib/types/equipment/item/WeaponAccessory.d.ts +3 -2
  222. package/lib/types/equipment/item/WeaponAccessory.js +9 -2
  223. package/lib/types/equipment/item/_Herbary.d.ts +1 -1
  224. package/lib/types/equipment/item/_Herbary.js +2 -2
  225. package/lib/types/equipment/item/_Item.d.ts +12 -12
  226. package/lib/types/equipment/item/_MeleeWeapon.d.ts +7 -7
  227. package/lib/types/equipment/item/_RangedWeapon.d.ts +6 -6
  228. package/lib/types/equipment/item/_Weapon.d.ts +5 -5
  229. package/lib/types/equipment/item/sub/ArmorType.d.ts +4 -3
  230. package/lib/types/equipment/item/sub/ArmorType.js +9 -2
  231. package/lib/types/equipment/item/sub/Reach.d.ts +4 -3
  232. package/lib/types/equipment/item/sub/Reach.js +9 -2
  233. package/lib/types/magicalActions/AnimistPower.d.ts +20 -19
  234. package/lib/types/magicalActions/AnimistPower.js +9 -2
  235. package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +4 -3
  236. package/lib/types/magicalActions/AnimistPower_Tribe.js +9 -2
  237. package/lib/types/magicalActions/Curse.d.ts +14 -13
  238. package/lib/types/magicalActions/Curse.js +9 -2
  239. package/lib/types/magicalActions/DominationRitual.d.ts +13 -12
  240. package/lib/types/magicalActions/DominationRitual.js +9 -2
  241. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +11 -10
  242. package/lib/types/magicalActions/ElvenMagicalSong.js +9 -2
  243. package/lib/types/magicalActions/GeodeRitual.d.ts +14 -13
  244. package/lib/types/magicalActions/GeodeRitual.js +9 -2
  245. package/lib/types/magicalActions/JesterTrick.d.ts +13 -12
  246. package/lib/types/magicalActions/JesterTrick.js +9 -2
  247. package/lib/types/magicalActions/MagicalDance.d.ts +10 -9
  248. package/lib/types/magicalActions/MagicalDance.js +9 -2
  249. package/lib/types/magicalActions/MagicalMelody.d.ts +10 -9
  250. package/lib/types/magicalActions/MagicalMelody.js +9 -2
  251. package/lib/types/magicalActions/MagicalRune.d.ts +26 -25
  252. package/lib/types/magicalActions/MagicalRune.js +9 -2
  253. package/lib/types/magicalActions/ZibiljaRitual.d.ts +7 -6
  254. package/lib/types/magicalActions/ZibiljaRitual.js +9 -2
  255. package/lib/types/magicalActions/_MusicTradition.d.ts +3 -3
  256. package/lib/types/magicalActions/_MusicTradition.js +2 -2
  257. package/lib/types/magicalActions/_SkillReference.d.ts +1 -1
  258. package/lib/types/magicalActions/_SkillReference.js +1 -1
  259. package/lib/types/prerequisites/ConditionalPrerequisites.d.ts +1 -1
  260. package/lib/types/prerequisites/DisplayOption.d.ts +2 -2
  261. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +15 -15
  262. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +1 -1
  263. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.d.ts +1 -1
  264. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +1 -1
  265. package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +1 -1
  266. package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +4 -4
  267. package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +1 -1
  268. package/lib/types/prerequisites/single/PactPrerequisite.d.ts +1 -1
  269. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +1 -1
  270. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.js +1 -1
  271. package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +1 -1
  272. package/lib/types/prerequisites/single/RacePrerequisite.d.ts +1 -1
  273. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.d.ts +6 -6
  274. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.js +1 -1
  275. package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +1 -1
  276. package/lib/types/prerequisites/single/RatedSumPrerequisite.d.ts +1 -1
  277. package/lib/types/prerequisites/single/RulePrerequisite.d.ts +1 -1
  278. package/lib/types/prerequisites/single/SexPrerequisite.d.ts +1 -1
  279. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.d.ts +1 -1
  280. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.js +1 -1
  281. package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +1 -1
  282. package/lib/types/prerequisites/single/StatePrerequisite.d.ts +1 -1
  283. package/lib/types/prerequisites/single/TextPrerequisite.d.ts +2 -2
  284. package/lib/types/prerequisites/single/TextPrerequisite.js +2 -2
  285. package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +2 -2
  286. package/lib/types/prerequisites/single/TraditionPrerequisite.js +2 -2
  287. package/lib/types/rule/CoreRule.d.ts +15 -14
  288. package/lib/types/rule/CoreRule.js +10 -3
  289. package/lib/types/rule/FocusRule.d.ts +6 -5
  290. package/lib/types/rule/FocusRule.js +9 -2
  291. package/lib/types/rule/FocusRule_Subject.d.ts +4 -3
  292. package/lib/types/rule/FocusRule_Subject.js +9 -2
  293. package/lib/types/rule/OptionalRule.d.ts +6 -5
  294. package/lib/types/rule/OptionalRule.js +9 -2
  295. package/lib/types/source/Publication.d.ts +4 -3
  296. package/lib/types/source/Publication.js +10 -3
  297. package/lib/types/source/_Erratum.d.ts +2 -2
  298. package/lib/types/source/_PublicationRef.d.ts +13 -13
  299. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +6 -5
  300. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +9 -2
  301. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +6 -5
  302. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +9 -2
  303. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +6 -5
  304. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +9 -2
  305. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +6 -5
  306. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +9 -2
  307. package/lib/types/specialAbility/AncestorGlyph.d.ts +6 -5
  308. package/lib/types/specialAbility/AncestorGlyph.js +9 -2
  309. package/lib/types/specialAbility/BlessedTradition.d.ts +12 -11
  310. package/lib/types/specialAbility/BlessedTradition.js +9 -2
  311. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +6 -5
  312. package/lib/types/specialAbility/BrawlingSpecialAbility.js +9 -2
  313. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +4 -3
  314. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +9 -2
  315. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +4 -3
  316. package/lib/types/specialAbility/CombatSpecialAbility.js +9 -2
  317. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +6 -5
  318. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +9 -2
  319. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +5 -4
  320. package/lib/types/specialAbility/CommandSpecialAbility.js +9 -2
  321. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +6 -5
  322. package/lib/types/specialAbility/FamiliarSpecialAbility.js +9 -2
  323. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +6 -5
  324. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +9 -2
  325. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +6 -5
  326. package/lib/types/specialAbility/FatePointSpecialAbility.js +9 -2
  327. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +4 -3
  328. package/lib/types/specialAbility/GeneralSpecialAbility.js +9 -2
  329. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +4 -3
  330. package/lib/types/specialAbility/KarmaSpecialAbility.js +9 -2
  331. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +6 -5
  332. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +9 -2
  333. package/lib/types/specialAbility/LycantropicGift.d.ts +6 -5
  334. package/lib/types/specialAbility/LycantropicGift.js +9 -2
  335. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +6 -5
  336. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +9 -2
  337. package/lib/types/specialAbility/MagicalSign.d.ts +6 -5
  338. package/lib/types/specialAbility/MagicalSign.js +9 -2
  339. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +4 -3
  340. package/lib/types/specialAbility/MagicalSpecialAbility.js +9 -2
  341. package/lib/types/specialAbility/MagicalTradition.d.ts +7 -6
  342. package/lib/types/specialAbility/MagicalTradition.js +9 -2
  343. package/lib/types/specialAbility/PactGift.d.ts +13 -12
  344. package/lib/types/specialAbility/PactGift.js +11 -4
  345. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +6 -5
  346. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +9 -2
  347. package/lib/types/specialAbility/Sermon.d.ts +6 -5
  348. package/lib/types/specialAbility/Sermon.js +9 -2
  349. package/lib/types/specialAbility/SexSpecialAbility.d.ts +6 -5
  350. package/lib/types/specialAbility/SexSpecialAbility.js +9 -2
  351. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +6 -5
  352. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +9 -2
  353. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +6 -5
  354. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +9 -2
  355. package/lib/types/specialAbility/VampiricGift.d.ts +4 -3
  356. package/lib/types/specialAbility/VampiricGift.js +9 -2
  357. package/lib/types/specialAbility/Vision.d.ts +6 -5
  358. package/lib/types/specialAbility/Vision.js +9 -2
  359. package/lib/types/specialAbility/_Tradition.d.ts +1 -1
  360. package/lib/types/specialAbility/sub/Language.d.ts +12 -11
  361. package/lib/types/specialAbility/sub/Language.js +9 -2
  362. package/lib/types/specialAbility/sub/Script.d.ts +6 -5
  363. package/lib/types/specialAbility/sub/Script.js +9 -2
  364. package/lib/types/specialAbility/sub/TradeSecret.d.ts +6 -5
  365. package/lib/types/specialAbility/sub/TradeSecret.js +9 -2
  366. package/lib/types/specialAbility/sub/_LanguageScript.d.ts +1 -1
  367. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +4 -3
  368. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +9 -2
  369. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +4 -3
  370. package/lib/types/traditionArtifacts/AttireEnchantment.js +9 -2
  371. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +4 -3
  372. package/lib/types/traditionArtifacts/BowlEnchantment.js +9 -2
  373. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +5 -4
  374. package/lib/types/traditionArtifacts/CauldronEnchantment.js +9 -2
  375. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +4 -3
  376. package/lib/types/traditionArtifacts/ChronicleEnchantment.js +9 -2
  377. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +8 -7
  378. package/lib/types/traditionArtifacts/DaggerRitual.js +9 -2
  379. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +4 -3
  380. package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +9 -2
  381. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +4 -3
  382. package/lib/types/traditionArtifacts/InstrumentEnchantment.js +9 -2
  383. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +4 -3
  384. package/lib/types/traditionArtifacts/Krallenkettenzauber.js +9 -2
  385. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +4 -3
  386. package/lib/types/traditionArtifacts/OrbEnchantment.js +9 -2
  387. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +4 -3
  388. package/lib/types/traditionArtifacts/RingEnchantment.js +9 -2
  389. package/lib/types/traditionArtifacts/SickleRitual.d.ts +4 -3
  390. package/lib/types/traditionArtifacts/SickleRitual.js +9 -2
  391. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +4 -3
  392. package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +9 -2
  393. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +4 -3
  394. package/lib/types/traditionArtifacts/StaffEnchantment.js +9 -2
  395. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +4 -3
  396. package/lib/types/traditionArtifacts/ToyEnchantment.js +9 -2
  397. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +4 -3
  398. package/lib/types/traditionArtifacts/Trinkhornzauber.js +9 -2
  399. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +4 -3
  400. package/lib/types/traditionArtifacts/WandEnchantment.js +9 -2
  401. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +4 -3
  402. package/lib/types/traditionArtifacts/WeaponEnchantment.js +9 -2
  403. package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +6 -5
  404. package/lib/types/traditionArtifacts/sub/AnimalShape.js +9 -2
  405. package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +4 -3
  406. package/lib/types/traditionArtifacts/sub/AnimalShapePath.js +9 -2
  407. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +4 -3
  408. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.js +9 -2
  409. package/lib/types/traditionArtifacts/sub/Brew.d.ts +4 -3
  410. package/lib/types/traditionArtifacts/sub/Brew.js +9 -2
  411. package/lib/validation/builders/integrity.d.ts +57 -0
  412. package/lib/validation/builders/integrity.js +44 -0
  413. package/lib/validation/builders/naming.d.ts +13 -0
  414. package/lib/validation/builders/naming.js +14 -0
  415. package/lib/validation/builders/schema.d.ts +31 -0
  416. package/lib/validation/builders/schema.js +32 -0
  417. package/lib/validation/filename.d.ts +9 -0
  418. package/lib/validation/filename.js +10 -0
  419. package/lib/validation/raw.d.ts +9 -0
  420. package/lib/validation/raw.js +55 -0
  421. package/lib/validation/schema.d.ts +6 -22
  422. package/lib/validation/schema.js +31 -32
  423. package/package.json +11 -6
  424. package/schema/Locale.schema.json +1 -8
  425. package/config/directories.d.ts +0 -4
  426. package/config/directories.js +0 -14
  427. package/lib/validation/integrity.d.ts +0 -16
  428. package/lib/validation/integrity.js +0 -3
@@ -6,7 +6,7 @@ import { DisplayOption } from "../DisplayOption.js";
6
6
  * skill they enhance.
7
7
  * @title External Enhancement Prerequisite
8
8
  */
9
- export declare type ExternalEnhancementPrerequisite = {
9
+ export type ExternalEnhancementPrerequisite = {
10
10
  /**
11
11
  * The required skill.
12
12
  */
@@ -17,13 +17,13 @@ export declare type ExternalEnhancementPrerequisite = {
17
17
  enhancement: EnhancementsReference;
18
18
  display_option?: DisplayOption;
19
19
  };
20
- export declare type SkillWithEnhancementsReference = {
20
+ export type SkillWithEnhancementsReference = {
21
21
  /**
22
22
  * The skill's identifier.
23
23
  */
24
24
  id: SkillWithEnhancementsIdentifier;
25
25
  };
26
- export declare type EnhancementsReference = {
26
+ export type EnhancementsReference = {
27
27
  /**
28
28
  * The enhancement's identifier.
29
29
  * @integer
@@ -36,4 +36,4 @@ export declare type EnhancementsReference = {
36
36
  * enhancement to require another enhancement from the same skill.
37
37
  * @title Internal Enhancement Prerequisite
38
38
  */
39
- export declare type InternalEnhancementPrerequisite = EnhancementsReference;
39
+ export type InternalEnhancementPrerequisite = EnhancementsReference;
@@ -3,7 +3,7 @@ import { DisplayOption } from "../DisplayOption.js";
3
3
  /**
4
4
  * @title Influence Prerequisite
5
5
  */
6
- export declare type InfluencePrerequisite = {
6
+ export type InfluencePrerequisite = {
7
7
  /**
8
8
  * The influence's identifier.
9
9
  */
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a specific pact.
5
5
  * @title Pact Prerequisite
6
6
  */
7
- export declare type PactPrerequisite = {
7
+ export type PactPrerequisite = {
8
8
  /**
9
9
  * The required pact category.
10
10
  */
@@ -2,7 +2,7 @@ import { DisplayOption } from "../DisplayOption.js";
2
2
  /**
3
3
  * @title Primary Attribute Prerequisite
4
4
  */
5
- export declare type PrimaryAttributePrerequisite = {
5
+ export type PrimaryAttributePrerequisite = {
6
6
  /**
7
7
  * Is the required primary attribute for spellcasters or blessed ones?
8
8
  */
@@ -2,4 +2,4 @@ export var PrimaryAttributeCategory;
2
2
  (function (PrimaryAttributeCategory) {
3
3
  PrimaryAttributeCategory["Blessed"] = "Blessed";
4
4
  PrimaryAttributeCategory["Magical"] = "Magical";
5
- })(PrimaryAttributeCategory || (PrimaryAttributeCategory = {}));
5
+ })(PrimaryAttributeCategory = PrimaryAttributeCategory || (PrimaryAttributeCategory = {}));
@@ -2,7 +2,7 @@ import { DisplayOption } from "../DisplayOption.js";
2
2
  /**
3
3
  * @title Publication Prerequisite
4
4
  */
5
- export declare type PublicationPrerequisite = {
5
+ export type PublicationPrerequisite = {
6
6
  /**
7
7
  * @integer
8
8
  * @minimum 1
@@ -6,7 +6,7 @@ import { DisplayOption } from "../DisplayOption.js";
6
6
  * if the entry does not allow one of the races.
7
7
  * @title Race Prerequisite
8
8
  */
9
- export declare type RacePrerequisite = {
9
+ export type RacePrerequisite = {
10
10
  /**
11
11
  * The race's identifier.
12
12
  */
@@ -3,7 +3,7 @@ import { DisplayOption } from "../DisplayOption.js";
3
3
  /**
4
4
  * @title Rated Minimum Number Prerequisite
5
5
  */
6
- export declare type RatedMinimumNumberPrerequisite = {
6
+ export type RatedMinimumNumberPrerequisite = {
7
7
  /**
8
8
  * The minimum number of skills that need to be on the defined minimum skill
9
9
  * rating.
@@ -24,7 +24,7 @@ export declare type RatedMinimumNumberPrerequisite = {
24
24
  targets: RatedMinimumNumberPrerequisiteTarget;
25
25
  display_option?: DisplayOption;
26
26
  };
27
- export declare type RatedMinimumNumberPrerequisiteTarget = {
27
+ export type RatedMinimumNumberPrerequisiteTarget = {
28
28
  tag: "Skills";
29
29
  skills: RatedMinimumNumberPrerequisiteSkillsTarget;
30
30
  } | {
@@ -37,7 +37,7 @@ export declare type RatedMinimumNumberPrerequisiteTarget = {
37
37
  tag: "Liturgies";
38
38
  liturgies: AspectReference;
39
39
  };
40
- export declare type RatedMinimumNumberPrerequisiteSkillsTarget = {
40
+ export type RatedMinimumNumberPrerequisiteSkillsTarget = {
41
41
  /**
42
42
  * The skills that are taken into account for satisfying the prerequisite.
43
43
  * @minItems 2
@@ -45,7 +45,7 @@ export declare type RatedMinimumNumberPrerequisiteSkillsTarget = {
45
45
  */
46
46
  list: SkillReference[];
47
47
  };
48
- export declare type CombatTechniquesTarget = {
48
+ export type CombatTechniquesTarget = {
49
49
  group: CombatTechniquesTargetGroup;
50
50
  };
51
51
  export declare enum CombatTechniquesTargetGroup {
@@ -53,13 +53,13 @@ export declare enum CombatTechniquesTargetGroup {
53
53
  Close = "Close",
54
54
  Ranged = "Ranged"
55
55
  }
56
- export declare type RatedMinimumNumberPrerequisiteSpellworksTarget = {
56
+ export type RatedMinimumNumberPrerequisiteSpellworksTarget = {
57
57
  /**
58
58
  * The skills that are taken into account for satisfying the prerequisite.
59
59
  */
60
60
  property: PropertyReference;
61
61
  };
62
- export declare type RatedMinimumNumberPrerequisiteLiturgiesTarget = {
62
+ export type RatedMinimumNumberPrerequisiteLiturgiesTarget = {
63
63
  /**
64
64
  * The skills that are taken into account for satisfying the prerequisite.
65
65
  */
@@ -3,4 +3,4 @@ export var CombatTechniquesTargetGroup;
3
3
  CombatTechniquesTargetGroup["All"] = "All";
4
4
  CombatTechniquesTargetGroup["Close"] = "Close";
5
5
  CombatTechniquesTargetGroup["Ranged"] = "Ranged";
6
- })(CombatTechniquesTargetGroup || (CombatTechniquesTargetGroup = {}));
6
+ })(CombatTechniquesTargetGroup = CombatTechniquesTargetGroup || (CombatTechniquesTargetGroup = {}));
@@ -3,7 +3,7 @@ import { DisplayOption } from "../DisplayOption.js";
3
3
  /**
4
4
  * @title Rated Prerequisite
5
5
  */
6
- export declare type RatedPrerequisite = {
6
+ export type RatedPrerequisite = {
7
7
  /**
8
8
  * The rated entry's identifier.
9
9
  */
@@ -3,7 +3,7 @@ import { DisplayOption } from "../DisplayOption.js";
3
3
  /**
4
4
  * @title Rated Sum Prerequisite
5
5
  */
6
- export declare type RatedSumPrerequisite = {
6
+ export type RatedSumPrerequisite = {
7
7
  /**
8
8
  * The minimum required sum of the targets’ ratings.
9
9
  * @integer
@@ -3,7 +3,7 @@ import { DisplayOption } from "../DisplayOption.js";
3
3
  /**
4
4
  * @title Rule Prerequisite
5
5
  */
6
- export declare type RulePrerequisite = {
6
+ export type RulePrerequisite = {
7
7
  id: ExtensionRuleIdentifier;
8
8
  display_option?: DisplayOption;
9
9
  };
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a specific sex.
5
5
  * @title Sex Prerequisite
6
6
  */
7
- export declare type SexPrerequisite = {
7
+ export type SexPrerequisite = {
8
8
  id: BinarySex;
9
9
  display_option?: DisplayOption;
10
10
  };
@@ -2,7 +2,7 @@
2
2
  * Requires a specific sexual characteristic.
3
3
  * @title Sexual Characteristic Prerequisite
4
4
  */
5
- export declare type SexualCharacteristicPrerequisite = {
5
+ export type SexualCharacteristicPrerequisite = {
6
6
  id: SexualCharacteristic;
7
7
  };
8
8
  export declare enum SexualCharacteristic {
@@ -2,4 +2,4 @@ export var SexualCharacteristic;
2
2
  (function (SexualCharacteristic) {
3
3
  SexualCharacteristic["Penis"] = "Penis";
4
4
  SexualCharacteristic["Vagina"] = "Vagina";
5
- })(SexualCharacteristic || (SexualCharacteristic = {}));
5
+ })(SexualCharacteristic = SexualCharacteristic || (SexualCharacteristic = {}));
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a minimum social status.
5
5
  * @title Social Status Prerequisite
6
6
  */
7
- export declare type SocialStatusPrerequisite = {
7
+ export type SocialStatusPrerequisite = {
8
8
  /**
9
9
  * The minimum social status' identifier.
10
10
  */
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a specific state or one of a specific set of states.
5
5
  * @title State Prerequisite
6
6
  */
7
- export declare type StatePrerequisite = {
7
+ export type StatePrerequisite = {
8
8
  id: StateIdentifier;
9
9
  display_option?: DisplayOption;
10
10
  };
@@ -7,7 +7,7 @@ import { NonEmptyMarkdown } from "../../_NonEmptyString.js";
7
7
  * of the prerequisite string from the sources.
8
8
  * @title Text Prerequisite
9
9
  */
10
- export declare type TextPrerequisite = {
10
+ export type TextPrerequisite = {
11
11
  /**
12
12
  * The method how the prerequisite should be verified. Either is passes all
13
13
  * verification text or it denies all verification tests. The latter results
@@ -52,4 +52,4 @@ export declare enum SentenceType {
52
52
  Standalone = "Standalone",
53
53
  Connected = "Connected"
54
54
  }
55
- export declare type TextPrerequisiteTranslation = NonEmptyMarkdown;
55
+ export type TextPrerequisiteTranslation = NonEmptyMarkdown;
@@ -2,9 +2,9 @@ export var TextVerificationRule;
2
2
  (function (TextVerificationRule) {
3
3
  TextVerificationRule["Pass"] = "Pass";
4
4
  TextVerificationRule["Deny"] = "Deny";
5
- })(TextVerificationRule || (TextVerificationRule = {}));
5
+ })(TextVerificationRule = TextVerificationRule || (TextVerificationRule = {}));
6
6
  export var SentenceType;
7
7
  (function (SentenceType) {
8
8
  SentenceType["Standalone"] = "Standalone";
9
9
  SentenceType["Connected"] = "Connected";
10
- })(SentenceType || (SentenceType = {}));
10
+ })(SentenceType = SentenceType || (SentenceType = {}));
@@ -2,7 +2,7 @@ import { DisplayOption } from "../DisplayOption.js";
2
2
  /**
3
3
  * @title Blessed Tradition Prerequisite
4
4
  */
5
- export declare type BlessedTraditionPrerequisite = {
5
+ export type BlessedTraditionPrerequisite = {
6
6
  /**
7
7
  * The blessed tradition prerequisite may only be satified if the blessed
8
8
  * tradition is either church or shamanistic.
@@ -21,7 +21,7 @@ export declare enum BlessedTraditionPrerequisiteRestriction {
21
21
  /**
22
22
  * @title Magical Tradition Prerequisite
23
23
  */
24
- export declare type MagicalTraditionPrerequisite = {
24
+ export type MagicalTraditionPrerequisite = {
25
25
  /**
26
26
  * The magical tradition prerequisite may only be satified if the magical
27
27
  * tradition can learn rituals or can bind familiars.
@@ -6,7 +6,7 @@ export var BlessedTraditionPrerequisiteRestriction;
6
6
  (function (BlessedTraditionPrerequisiteRestriction) {
7
7
  BlessedTraditionPrerequisiteRestriction["Church"] = "Church";
8
8
  BlessedTraditionPrerequisiteRestriction["Shamanistic"] = "Shamanistic";
9
- })(BlessedTraditionPrerequisiteRestriction || (BlessedTraditionPrerequisiteRestriction = {}));
9
+ })(BlessedTraditionPrerequisiteRestriction = BlessedTraditionPrerequisiteRestriction || (BlessedTraditionPrerequisiteRestriction = {}));
10
10
  /**
11
11
  * The magical tradition prerequisite may only be satified if the magical
12
12
  * tradition can learn rituals or can bind familiars.
@@ -15,4 +15,4 @@ export var MagicalTraditionPrerequisiteRestriction;
15
15
  (function (MagicalTraditionPrerequisiteRestriction) {
16
16
  MagicalTraditionPrerequisiteRestriction["CanLearnRituals"] = "CanLearnRituals";
17
17
  MagicalTraditionPrerequisiteRestriction["CanBindFamiliars"] = "CanBindFamiliars";
18
- })(MagicalTraditionPrerequisiteRestriction || (MagicalTraditionPrerequisiteRestriction = {}));
18
+ })(MagicalTraditionPrerequisiteRestriction = MagicalTraditionPrerequisiteRestriction || (MagicalTraditionPrerequisiteRestriction = {}));
@@ -1,16 +1,17 @@
1
1
  /**
2
2
  * @main CoreRule
3
3
  */
4
- import { Errata } from "../source/_Erratum.js";
5
- import { PublicationRefs } from "../source/_PublicationRef.js";
4
+ import { TypeConfig } from "../../typeConfig.js";
6
5
  import { CoreRuleIdentifier } from "../_Identifier.js";
7
6
  import { CoreRuleDerivableContentIdentifier } from "../_IdentifierGroup.js";
8
7
  import { LocaleMap } from "../_LocaleMap.js";
9
8
  import { NonEmptyMarkdown, NonEmptyString } from "../_NonEmptyString.js";
9
+ import { Errata } from "../source/_Erratum.js";
10
+ import { PublicationRefs } from "../source/_PublicationRef.js";
10
11
  /**
11
12
  * @title Core Rule
12
13
  */
13
- export declare type CoreRule = {
14
+ export type CoreRule = {
14
15
  /**
15
16
  * The core rule's identifier. An unique, increasing integer.
16
17
  */
@@ -25,14 +26,14 @@ export declare type CoreRule = {
25
26
  */
26
27
  translations: LocaleMap<CoreRuleTranslation>;
27
28
  };
28
- export declare type CoreRuleTranslation = {
29
+ export type CoreRuleTranslation = {
29
30
  /**
30
31
  * The name of the optional rule.
31
32
  */
32
33
  name: NonEmptyString;
33
34
  errata?: Errata;
34
35
  };
35
- export declare type ContentNode = {
36
+ export type ContentNode = {
36
37
  tag: "Child";
37
38
  child: ChildNode;
38
39
  } | {
@@ -52,7 +53,7 @@ export declare type ContentNode = {
52
53
  * `Child` should follow a child node, since then it may look like the the text
53
54
  * may be part of the child node.
54
55
  */
55
- export declare type ChildNode = {
56
+ export type ChildNode = {
56
57
  /**
57
58
  * The nested core rule's identifier.
58
59
  */
@@ -68,13 +69,13 @@ export declare type ChildNode = {
68
69
  * A simple text block, containing one or multiple paragraphs. Headings are not
69
70
  * allowed, they should be handled as nested core rules instead.
70
71
  */
71
- export declare type TextNode = {
72
+ export type TextNode = {
72
73
  /**
73
74
  * All translations for the entry, identified by IETF language tag (BCP47).
74
75
  */
75
76
  translations: LocaleMap<TextNodeTranslation>;
76
77
  };
77
- export declare type TextNodeTranslation = {
78
+ export type TextNodeTranslation = {
78
79
  /**
79
80
  * Markdown-formatted text.
80
81
  */
@@ -83,14 +84,14 @@ export declare type TextNodeTranslation = {
83
84
  /**
84
85
  * Generate a list or table from a specific entity type.
85
86
  */
86
- export declare type ReferenceListNode = {
87
+ export type ReferenceListNode = {
87
88
  source: ReferenceListNodeSource;
88
89
  /**
89
90
  * All translations for the entry, identified by IETF language tag (BCP47).
90
91
  */
91
92
  translations: LocaleMap<ReferenceListNodeTranslation>;
92
93
  };
93
- export declare type ReferenceListNodeSource = {
94
+ export type ReferenceListNodeSource = {
94
95
  tag: "Attributes";
95
96
  attributes: {};
96
97
  } | {
@@ -271,7 +272,7 @@ export declare type ReferenceListNodeSource = {
271
272
  tag: "ImprovementCost";
272
273
  improvement_cost: ReferenceListNodeImprovementCostSource;
273
274
  };
274
- export declare type ReferenceListNodeImprovementCostSource = {
275
+ export type ReferenceListNodeImprovementCostSource = {
275
276
  /**
276
277
  * Define if the cost for attributes or skills should be defined. The
277
278
  * cost for attributes start with value 9, while the cost for skills
@@ -296,7 +297,7 @@ export declare enum ReferenceListNodeImprovementCostSourceTarget {
296
297
  Attributes = "Attributes",
297
298
  Skills = "Skills"
298
299
  }
299
- export declare type ReferenceListNodeTranslation = {
300
+ export type ReferenceListNodeTranslation = {
300
301
  /**
301
302
  * Markdown-formatted text.
302
303
  */
@@ -305,7 +306,7 @@ export declare type ReferenceListNodeTranslation = {
305
306
  /**
306
307
  * Generate the full text for a single entry as part of this core rule's text.
307
308
  */
308
- export declare type ReferenceNode = {
309
+ export type ReferenceNode = {
309
310
  id: CoreRuleDerivableContentIdentifier;
310
311
  };
311
- export declare const validateSchema: import("../../validation/schema.js").TypeValidator<CoreRule>;
312
+ export declare const config: TypeConfig<CoreRule>;
@@ -1,10 +1,17 @@
1
1
  /**
2
2
  * @main CoreRule
3
3
  */
4
- import { validateSchemaCreator } from "../../validation/schema.js";
4
+ import { todo } from "../../validation/builders/integrity.js";
5
+ import { createSchemaValidator } from "../../validation/builders/schema.js";
6
+ import { getFIlenamePrefixAsNumericId } from "../../validation/filename.js";
5
7
  export var ReferenceListNodeImprovementCostSourceTarget;
6
8
  (function (ReferenceListNodeImprovementCostSourceTarget) {
7
9
  ReferenceListNodeImprovementCostSourceTarget["Attributes"] = "Attributes";
8
10
  ReferenceListNodeImprovementCostSourceTarget["Skills"] = "Skills";
9
- })(ReferenceListNodeImprovementCostSourceTarget || (ReferenceListNodeImprovementCostSourceTarget = {}));
10
- export const validateSchema = validateSchemaCreator(import.meta.url);
11
+ })(ReferenceListNodeImprovementCostSourceTarget = ReferenceListNodeImprovementCostSourceTarget || (ReferenceListNodeImprovementCostSourceTarget = {}));
12
+ export const config = {
13
+ name: "CoreRule",
14
+ id: getFIlenamePrefixAsNumericId,
15
+ integrityValidator: todo("CoreRule"),
16
+ schemaValidator: createSchemaValidator(import.meta.url),
17
+ };
@@ -1,15 +1,16 @@
1
1
  /**
2
2
  * @main FocusRule
3
3
  */
4
- import { Errata } from "../source/_Erratum.js";
5
- import { PublicationRefs } from "../source/_PublicationRef.js";
4
+ import { TypeConfig } from "../../typeConfig.js";
6
5
  import { LocaleMap } from "../_LocaleMap.js";
7
6
  import { NonEmptyMarkdown, NonEmptyString } from "../_NonEmptyString.js";
8
7
  import { FocusRuleSubjectReference } from "../_SimpleReferences.js";
8
+ import { Errata } from "../source/_Erratum.js";
9
+ import { PublicationRefs } from "../source/_PublicationRef.js";
9
10
  /**
10
11
  * @title Focus Rule
11
12
  */
12
- export declare type FocusRule = {
13
+ export type FocusRule = {
13
14
  /**
14
15
  * The focus rule's identifier. An unique, increasing integer.
15
16
  * @integer
@@ -38,7 +39,7 @@ export declare type FocusRule = {
38
39
  */
39
40
  translations: LocaleMap<FocusRuleTranslation>;
40
41
  };
41
- export declare type FocusRuleTranslation = {
42
+ export type FocusRuleTranslation = {
42
43
  /**
43
44
  * The name of the focus rule.
44
45
  */
@@ -49,4 +50,4 @@ export declare type FocusRuleTranslation = {
49
50
  description: NonEmptyMarkdown;
50
51
  errata?: Errata;
51
52
  };
52
- export declare const validateSchema: import("../../validation/schema.js").TypeValidator<FocusRule>;
53
+ export declare const config: TypeConfig<FocusRule>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main FocusRule
3
3
  */
4
- import { validateSchemaCreator } from "../../validation/schema.js";
5
- export const validateSchema = validateSchemaCreator(import.meta.url);
4
+ import { todo } from "../../validation/builders/integrity.js";
5
+ import { createSchemaValidator } from "../../validation/builders/schema.js";
6
+ import { getFIlenamePrefixAsNumericId } from "../../validation/filename.js";
7
+ export const config = {
8
+ name: "FocusRule",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("FocusRule"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,13 +1,14 @@
1
1
  /**
2
2
  * @main Subject
3
3
  */
4
+ import { TypeConfig } from "../../typeConfig.js";
4
5
  import { LocaleMap } from "../_LocaleMap.js";
5
6
  import { NonEmptyString } from "../_NonEmptyString.js";
6
7
  /**
7
8
  * Subjects or Subject Areas are the categories of Focus Rules.
8
9
  * @title Subject
9
10
  */
10
- export declare type Subject = {
11
+ export type Subject = {
11
12
  /**
12
13
  * The subject's identifier. An unique, increasing integer.
13
14
  * @integer
@@ -19,10 +20,10 @@ export declare type Subject = {
19
20
  */
20
21
  translations: LocaleMap<SubjectTranslation>;
21
22
  };
22
- export declare type SubjectTranslation = {
23
+ export type SubjectTranslation = {
23
24
  /**
24
25
  * The subject.
25
26
  */
26
27
  name: NonEmptyString;
27
28
  };
28
- export declare const validateSchema: import("../../validation/schema.js").TypeValidator<Subject>;
29
+ export declare const config: TypeConfig<Subject>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main Subject
3
3
  */
4
- import { validateSchemaCreator } from "../../validation/schema.js";
5
- export const validateSchema = validateSchemaCreator(import.meta.url);
4
+ import { todo } from "../../validation/builders/integrity.js";
5
+ import { createSchemaValidator } from "../../validation/builders/schema.js";
6
+ import { getFIlenamePrefixAsNumericId } from "../../validation/filename.js";
7
+ export const config = {
8
+ name: "Subject",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("Subject"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,14 +1,15 @@
1
1
  /**
2
2
  * @main OptionalRule
3
3
  */
4
- import { Errata } from "../source/_Erratum.js";
5
- import { PublicationRefs } from "../source/_PublicationRef.js";
4
+ import { TypeConfig } from "../../typeConfig.js";
6
5
  import { LocaleMap } from "../_LocaleMap.js";
7
6
  import { NonEmptyMarkdown, NonEmptyString } from "../_NonEmptyString.js";
7
+ import { Errata } from "../source/_Erratum.js";
8
+ import { PublicationRefs } from "../source/_PublicationRef.js";
8
9
  /**
9
10
  * @title Optional Rule
10
11
  */
11
- export declare type OptionalRule = {
12
+ export type OptionalRule = {
12
13
  /**
13
14
  * The optional rule's identifier. An unique, increasing integer.
14
15
  * @integer
@@ -26,7 +27,7 @@ export declare type OptionalRule = {
26
27
  */
27
28
  translations: LocaleMap<OptionalRuleTranslation>;
28
29
  };
29
- export declare type OptionalRuleTranslation = {
30
+ export type OptionalRuleTranslation = {
30
31
  /**
31
32
  * The name of the optional rule.
32
33
  */
@@ -37,4 +38,4 @@ export declare type OptionalRuleTranslation = {
37
38
  description: NonEmptyMarkdown;
38
39
  errata?: Errata;
39
40
  };
40
- export declare const validateSchema: import("../../validation/schema.js").TypeValidator<OptionalRule>;
41
+ export declare const config: TypeConfig<OptionalRule>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main OptionalRule
3
3
  */
4
- import { validateSchemaCreator } from "../../validation/schema.js";
5
- export const validateSchema = validateSchemaCreator(import.meta.url);
4
+ import { todo } from "../../validation/builders/integrity.js";
5
+ import { createSchemaValidator } from "../../validation/builders/schema.js";
6
+ import { getFIlenamePrefixAsNumericId } from "../../validation/filename.js";
7
+ export const config = {
8
+ name: "OptionalRule",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("OptionalRule"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,13 +1,14 @@
1
1
  /**
2
2
  * @main Publication
3
3
  */
4
+ import { TypeConfig } from "../../typeConfig.js";
4
5
  import { LocaleMap } from "../_LocaleMap.js";
5
6
  import { NonEmptyString } from "../_NonEmptyString.js";
6
7
  import { PublicationPrerequisites } from "../_Prerequisite.js";
7
8
  /**
8
9
  * @title Publication
9
10
  */
10
- export declare type Publication = {
11
+ export type Publication = {
11
12
  /**
12
13
  * The publication's identifier. An unique, increasing integer.
13
14
  * @integer
@@ -36,7 +37,7 @@ export declare type Publication = {
36
37
  */
37
38
  translations: LocaleMap<PublicationTranslation>;
38
39
  };
39
- export declare type PublicationTranslation = {
40
+ export type PublicationTranslation = {
40
41
  /**
41
42
  * The publisher's publication identifier.
42
43
  * @minLength 1
@@ -71,4 +72,4 @@ export declare enum Category {
71
72
  Sourcebook = "Sourcebook",
72
73
  RegionalSourcebook = "RegionalSourcebook"
73
74
  }
74
- export declare const validateSchema: import("../../validation/schema.js").TypeValidator<Publication>;
75
+ export declare const config: TypeConfig<Publication>;
@@ -1,7 +1,9 @@
1
1
  /**
2
2
  * @main Publication
3
3
  */
4
- import { validateSchemaCreator } from "../../validation/schema.js";
4
+ import { todo } from "../../validation/builders/integrity.js";
5
+ import { createSchemaValidator } from "../../validation/builders/schema.js";
6
+ import { getFIlenamePrefixAsNumericId } from "../../validation/filename.js";
5
7
  /**
6
8
  * The publication category.
7
9
  */
@@ -11,5 +13,10 @@ export var Category;
11
13
  Category["ExpansionRules"] = "ExpansionRules";
12
14
  Category["Sourcebook"] = "Sourcebook";
13
15
  Category["RegionalSourcebook"] = "RegionalSourcebook";
14
- })(Category || (Category = {}));
15
- export const validateSchema = validateSchemaCreator(import.meta.url);
16
+ })(Category = Category || (Category = {}));
17
+ export const config = {
18
+ name: "Publication",
19
+ id: getFIlenamePrefixAsNumericId,
20
+ integrityValidator: todo("Publication"),
21
+ schemaValidator: createSchemaValidator(import.meta.url),
22
+ };
@@ -7,11 +7,11 @@ import { NonEmptyMarkdown } from "../_NonEmptyString.js";
7
7
  * @title Errata
8
8
  * @minItems 1
9
9
  */
10
- export declare type Errata = Erratum[];
10
+ export type Errata = Erratum[];
11
11
  /**
12
12
  * @title Erratum
13
13
  */
14
- export declare type Erratum = {
14
+ export type Erratum = {
15
15
  /**
16
16
  * The date when the change was confirmed and applied to the entry.
17
17
  * @format date