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
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main AnimalType
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: "AnimalType",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("AnimalType"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * @main ArcaneBardTradition
3
3
  */
4
+ import { TypeConfig } from "../typeConfig.js";
4
5
  import { ArcaneTradition } from "./_ArcaneTradition.js";
5
6
  /**
6
7
  * @title Arcane Bard Tradition
7
8
  */
8
- export declare type ArcaneBardTradition = ArcaneTradition;
9
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<ArcaneTradition>;
9
+ export type ArcaneBardTradition = ArcaneTradition;
10
+ export declare const config: TypeConfig<ArcaneBardTradition>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main ArcaneBardTradition
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: "ArcaneBardTradition",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("ArcaneBardTradition"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * @main ArcaneDancerTradition
3
3
  */
4
+ import { TypeConfig } from "../typeConfig.js";
4
5
  import { ArcaneTradition } from "./_ArcaneTradition.js";
5
6
  /**
6
7
  * @title Arcane Dancer Tradition
7
8
  */
8
- export declare type ArcaneDancerTradition = ArcaneTradition;
9
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<ArcaneTradition>;
9
+ export type ArcaneDancerTradition = ArcaneTradition;
10
+ export declare const config: TypeConfig<ArcaneDancerTradition>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main ArcaneDancerTradition
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: "ArcaneDancerTradition",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("ArcaneDancerTradition"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,12 +1,13 @@
1
1
  /**
2
2
  * @main Aspect
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
  * @title Aspect
8
9
  */
9
- export declare type Aspect = {
10
+ export type Aspect = {
10
11
  /**
11
12
  * The aspect's identifier. An unique, increasing integer.
12
13
  * @integer
@@ -18,7 +19,7 @@ export declare type Aspect = {
18
19
  */
19
20
  translations: LocaleMap<AspectTranslation>;
20
21
  };
21
- export declare type AspectTranslation = {
22
+ export type AspectTranslation = {
22
23
  /**
23
24
  * The aspect name.
24
25
  */
@@ -29,4 +30,4 @@ export declare type AspectTranslation = {
29
30
  */
30
31
  master_of_aspect_suffix?: NonEmptyString;
31
32
  };
32
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Aspect>;
33
+ export declare const config: TypeConfig<Aspect>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main Aspect
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: "Aspect",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("Aspect"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,13 +1,13 @@
1
1
  /**
2
2
  * @main Attribute
3
3
  */
4
- import { ReferencialIntegrityValidators } from "../validation/integrity.js";
4
+ import { TypeConfig } from "../typeConfig.js";
5
5
  import { LocaleMap } from "./_LocaleMap.js";
6
6
  import { NonEmptyString } from "./_NonEmptyString.js";
7
7
  /**
8
8
  * @title Attribute
9
9
  */
10
- export declare type Attribute = {
10
+ export type Attribute = {
11
11
  /**
12
12
  * The attribute's identifier. An unique, increasing integer.
13
13
  * @integer
@@ -19,7 +19,7 @@ export declare type Attribute = {
19
19
  */
20
20
  translations: LocaleMap<AttributeTranslation>;
21
21
  };
22
- export declare type AttributeTranslation = {
22
+ export type AttributeTranslation = {
23
23
  /**
24
24
  * The attribute's name.
25
25
  */
@@ -33,5 +33,4 @@ export declare type AttributeTranslation = {
33
33
  */
34
34
  description: NonEmptyString;
35
35
  };
36
- export declare const validateIntegrity: (attribute: Attribute, { checkLocaleId }: ReferencialIntegrityValidators) => string[];
37
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Attribute>;
36
+ export declare const config: TypeConfig<Attribute>;
@@ -1,7 +1,12 @@
1
1
  /**
2
2
  * @main Attribute
3
3
  */
4
- import { getReferencialIntegrityErrorsForTranslatable } from "../validation/integrity.js";
5
- import { validateSchemaCreator } from "../validation/schema.js";
6
- export const validateIntegrity = (attribute, { checkLocaleId }) => getReferencialIntegrityErrorsForTranslatable(attribute, checkLocaleId);
7
- export const validateSchema = validateSchemaCreator(import.meta.url);
4
+ import { getReferencialIntegrityErrorsForTranslatable, reduceIntegrityValidationResults, validateEntityIntegrity } 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: "Attribute",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: (validators, data, filepath) => reduceIntegrityValidationResults(validateEntityIntegrity(validators.identity.attributes.exists, getFIlenamePrefixAsNumericId(data, filepath), data.id, [{ k: "id" }]), getReferencialIntegrityErrorsForTranslatable(validators, data)),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,16 +1,17 @@
1
1
  /**
2
2
  * @main Blessing
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 { DurationUnit } from "./_ActivatableSkillDuration.js";
7
6
  import { FixedRange } from "./_ActivatableSkillRange.js";
8
7
  import { TargetCategory } from "./_ActivatableSkillTargetCategory.js";
9
8
  import { LocaleMap } from "./_LocaleMap.js";
9
+ import { Errata } from "./source/_Erratum.js";
10
+ import { PublicationRefs } from "./source/_PublicationRef.js";
10
11
  /**
11
12
  * @title Blessing
12
13
  */
13
- export declare type Blessing = {
14
+ export type Blessing = {
14
15
  /**
15
16
  * The blessing's identifier. An unique, increasing integer.
16
17
  * @integer
@@ -31,7 +32,7 @@ export declare type Blessing = {
31
32
  */
32
33
  translations: LocaleMap<BlessingTranslation>;
33
34
  };
34
- export declare type BlessingTranslation = {
35
+ export type BlessingTranslation = {
35
36
  /**
36
37
  * The name of the blessing.
37
38
  * @minLength 1
@@ -60,11 +61,11 @@ export declare type BlessingTranslation = {
60
61
  /**
61
62
  * Measurable parameters of a blessing.
62
63
  */
63
- export declare type BlessingPerformanceParameters = {
64
+ export type BlessingPerformanceParameters = {
64
65
  range: BlessingRange;
65
66
  duration: BlessingDuration;
66
67
  };
67
- export declare type BlessingRange = {
68
+ export type BlessingRange = {
68
69
  tag: "Self";
69
70
  self: {};
70
71
  } | {
@@ -74,7 +75,7 @@ export declare type BlessingRange = {
74
75
  tag: "Fixed";
75
76
  fixed: FixedRange;
76
77
  };
77
- export declare type BlessingDuration = {
78
+ export type BlessingDuration = {
78
79
  tag: "Immediate";
79
80
  immediate: {};
80
81
  } | {
@@ -84,7 +85,7 @@ export declare type BlessingDuration = {
84
85
  tag: "Indefinite";
85
86
  indefinite: IndefiniteBlessingDuration;
86
87
  };
87
- export declare type FixedBlessingDuration = {
88
+ export type FixedBlessingDuration = {
88
89
  /**
89
90
  * The (unitless) duration.
90
91
  * @integer
@@ -96,17 +97,17 @@ export declare type FixedBlessingDuration = {
96
97
  */
97
98
  unit: DurationUnit;
98
99
  };
99
- export declare type IndefiniteBlessingDuration = {
100
+ export type IndefiniteBlessingDuration = {
100
101
  /**
101
102
  * All translations for the entry, identified by IETF language tag (BCP47).
102
103
  */
103
104
  translations: LocaleMap<IndefiniteDurationTranslation>;
104
105
  };
105
- export declare type IndefiniteDurationTranslation = {
106
+ export type IndefiniteDurationTranslation = {
106
107
  /**
107
108
  * A description of the duration.
108
109
  * @minLength 1
109
110
  */
110
111
  description: string;
111
112
  };
112
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Blessing>;
113
+ export declare const config: TypeConfig<Blessing>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main Blessing
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: "Blessing",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("Blessing"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @main Cantrip
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 { CastingTimeDuringLovemaking } from "./_ActivatableSkillCastingTime.js";
7
6
  import { DurationUnit } from "./_ActivatableSkillDuration.js";
8
7
  import { FixedRange } from "./_ActivatableSkillRange.js";
@@ -12,10 +11,12 @@ import { MagicalTraditionIdentifier } from "./_Identifier.js";
12
11
  import { LocaleMap } from "./_LocaleMap.js";
13
12
  import { ResponsiveText } from "./_ResponsiveText.js";
14
13
  import { CurriculumReference, MagicalTraditionReference, PropertyReference } from "./_SimpleReferences.js";
14
+ import { Errata } from "./source/_Erratum.js";
15
+ import { PublicationRefs } from "./source/_PublicationRef.js";
15
16
  /**
16
17
  * @title Cantrip
17
18
  */
18
- export declare type Cantrip = {
19
+ export type Cantrip = {
19
20
  /**
20
21
  * The cantrip's identifier. An unique, increasing integer.
21
22
  * @integer
@@ -48,14 +49,14 @@ export declare type Cantrip = {
48
49
  translations: LocaleMap<CantripTranslation>;
49
50
  enhancements?: Enhancements;
50
51
  };
51
- export declare type CantripNote = {
52
+ export type CantripNote = {
52
53
  tag: "Exclusive";
53
54
  exclusive: ExclusiveCantripNote;
54
55
  } | {
55
56
  tag: "Common";
56
57
  common: CommonCantripNotes;
57
58
  };
58
- export declare type ExclusiveCantripNote = {
59
+ export type ExclusiveCantripNote = {
59
60
  /**
60
61
  * The traditions the cantrip is exclusively available to.
61
62
  * @minItems 1
@@ -63,7 +64,7 @@ export declare type ExclusiveCantripNote = {
63
64
  */
64
65
  traditions: MagicalTraditionReference[];
65
66
  };
66
- export declare type CommonCantripNotes = {
67
+ export type CommonCantripNotes = {
67
68
  /**
68
69
  * The academies and traditions the cantrip is commonly teached in.
69
70
  * @minItems 1
@@ -71,14 +72,14 @@ export declare type CommonCantripNotes = {
71
72
  */
72
73
  list: CommonCantripNote[];
73
74
  };
74
- export declare type CommonCantripNote = {
75
+ export type CommonCantripNote = {
75
76
  tag: "Academy";
76
77
  academy: CurriculumReference;
77
78
  } | {
78
79
  tag: "Tradition";
79
80
  tradition: CommonCantripTraditionNote;
80
81
  };
81
- export declare type CommonCantripTraditionNote = {
82
+ export type CommonCantripTraditionNote = {
82
83
  /**
83
84
  * The magical tradition's identifier.
84
85
  */
@@ -88,14 +89,14 @@ export declare type CommonCantripTraditionNote = {
88
89
  */
89
90
  translations?: LocaleMap<CommonCantripTraditionNoteTranslation>;
90
91
  };
91
- export declare type CommonCantripTraditionNoteTranslation = {
92
+ export type CommonCantripTraditionNoteTranslation = {
92
93
  /**
93
94
  * A note, appended to the generated string in parenthesis.
94
95
  * @minLength 1
95
96
  */
96
97
  note: string;
97
98
  };
98
- export declare type CantripTranslation = {
99
+ export type CantripTranslation = {
99
100
  /**
100
101
  * The name of the spell.
101
102
  * @minLength 1
@@ -124,11 +125,11 @@ export declare type CantripTranslation = {
124
125
  /**
125
126
  * Measurable parameters of a blessing.
126
127
  */
127
- export declare type CantripPerformanceParameters = {
128
+ export type CantripPerformanceParameters = {
128
129
  range: CantripRange;
129
130
  duration: CantripDuration;
130
131
  };
131
- export declare type CantripRange = {
132
+ export type CantripRange = {
132
133
  tag: "Self";
133
134
  self: {};
134
135
  } | {
@@ -138,7 +139,7 @@ export declare type CantripRange = {
138
139
  tag: "Fixed";
139
140
  fixed: FixedRange;
140
141
  };
141
- export declare type CantripDuration = {
142
+ export type CantripDuration = {
142
143
  tag: "Immediate";
143
144
  immediate: {};
144
145
  } | {
@@ -151,7 +152,7 @@ export declare type CantripDuration = {
151
152
  tag: "Indefinite";
152
153
  indefinite: IndefiniteCantripDuration;
153
154
  };
154
- export declare type FixedCantripDuration = {
155
+ export type FixedCantripDuration = {
155
156
  /**
156
157
  * If `true`, the duration is a maximum duration.
157
158
  */
@@ -167,16 +168,16 @@ export declare type FixedCantripDuration = {
167
168
  */
168
169
  unit: DurationUnit;
169
170
  };
170
- export declare type IndefiniteCantripDuration = {
171
+ export type IndefiniteCantripDuration = {
171
172
  /**
172
173
  * All translations for the entry, identified by IETF language tag (BCP47).
173
174
  */
174
175
  translations: LocaleMap<IndefiniteDurationTranslation>;
175
176
  };
176
- export declare type IndefiniteDurationTranslation = {
177
+ export type IndefiniteDurationTranslation = {
177
178
  /**
178
179
  * A description of the duration.
179
180
  */
180
181
  description: ResponsiveText;
181
182
  };
182
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Cantrip>;
183
+ export declare const config: TypeConfig<Cantrip>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main Cantrip
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: "Cantrip",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("Cantrip"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @main Ceremony
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 { SlowPerformanceParameters } from "./_ActivatableSkill.js";
7
6
  import { Effect } from "./_ActivatableSkillEffect.js";
8
7
  import { TargetCategory } from "./_ActivatableSkillTargetCategory.js";
@@ -13,10 +12,12 @@ import { LocaleMap } from "./_LocaleMap.js";
13
12
  import { NonEmptyString } from "./_NonEmptyString.js";
14
13
  import { LiturgyPrerequisites } from "./_Prerequisite.js";
15
14
  import { SkillCheck, SkillCheckPenalty } from "./_SkillCheck.js";
15
+ import { Errata } from "./source/_Erratum.js";
16
+ import { PublicationRefs } from "./source/_PublicationRef.js";
16
17
  /**
17
18
  * @title Ceremony
18
19
  */
19
- export declare type Ceremony = {
20
+ export type Ceremony = {
20
21
  /**
21
22
  * The ceremony's identifier. An unique, increasing integer.
22
23
  * @integer
@@ -58,7 +59,7 @@ export declare type Ceremony = {
58
59
  translations: LocaleMap<CeremonyTranslation>;
59
60
  enhancements?: Enhancements;
60
61
  };
61
- export declare type CeremonyTranslation = {
62
+ export type CeremonyTranslation = {
62
63
  /**
63
64
  * The name of the ceremony.
64
65
  */
@@ -109,4 +110,4 @@ export declare type CeremonyTranslation = {
109
110
  target: string;
110
111
  errata?: Errata;
111
112
  };
112
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Ceremony>;
113
+ export declare const config: TypeConfig<Ceremony>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main Ceremony
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: "Ceremony",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("Ceremony"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,15 +1,16 @@
1
1
  /**
2
2
  * @main CloseCombatTechnique
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 { ImprovementCost } from "./_ImprovementCost.js";
7
6
  import { LocaleMap } from "./_LocaleMap.js";
8
7
  import { AttributeReference } from "./_SimpleReferences.js";
8
+ import { Errata } from "./source/_Erratum.js";
9
+ import { PublicationRefs } from "./source/_PublicationRef.js";
9
10
  /**
10
11
  * @title Close Combat Technique
11
12
  */
12
- export declare type CloseCombatTechnique = {
13
+ export type CloseCombatTechnique = {
13
14
  /**
14
15
  * The close combat technique's identifier. An unique, increasing integer.
15
16
  * @integer
@@ -45,7 +46,7 @@ export declare type CloseCombatTechnique = {
45
46
  * Special rules for the combat technique that apply to all weapons in this
46
47
  * category.
47
48
  */
48
- export declare type CloseCombatTechniqueSpecialRules = {
49
+ export type CloseCombatTechniqueSpecialRules = {
49
50
  /**
50
51
  * Is parrying possible with this combat technique?
51
52
  */
@@ -55,7 +56,7 @@ export declare type CloseCombatTechniqueSpecialRules = {
55
56
  has_length: boolean;
56
57
  has_shield_size: boolean;
57
58
  };
58
- export declare type CloseCombatTechniqueTranslation = {
59
+ export type CloseCombatTechniqueTranslation = {
59
60
  /**
60
61
  * The name of the condition.
61
62
  * @minLength 1
@@ -69,4 +70,4 @@ export declare type CloseCombatTechniqueTranslation = {
69
70
  special?: string;
70
71
  errata?: Errata;
71
72
  };
72
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<CloseCombatTechnique>;
73
+ export declare const config: TypeConfig<CloseCombatTechnique>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main CloseCombatTechnique
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: "CloseCombatTechnique",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("CloseCombatTechnique"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,15 +1,16 @@
1
1
  /**
2
2
  * @main RangedCombatTechnique
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 { ImprovementCost } from "./_ImprovementCost.js";
7
6
  import { LocaleMap } from "./_LocaleMap.js";
8
7
  import { AttributeReference } from "./_SimpleReferences.js";
8
+ import { Errata } from "./source/_Erratum.js";
9
+ import { PublicationRefs } from "./source/_PublicationRef.js";
9
10
  /**
10
11
  * @title Ranged Combat Technique
11
12
  */
12
- export declare type RangedCombatTechnique = {
13
+ export type RangedCombatTechnique = {
13
14
  /**
14
15
  * The ranged combat technique's identifier. An unique, increasing integer.
15
16
  * @integer
@@ -45,10 +46,10 @@ export declare type RangedCombatTechnique = {
45
46
  * Special rules for the combat technique that apply to all weapons in this
46
47
  * category.
47
48
  */
48
- export declare type RangedCombatTechniqueSpecialRules = {
49
+ export type RangedCombatTechniqueSpecialRules = {
49
50
  has_ammunition: boolean;
50
51
  };
51
- export declare type RangedCombatTechniqueTranslation = {
52
+ export type RangedCombatTechniqueTranslation = {
52
53
  /**
53
54
  * The name of the condition.
54
55
  * @minLength 1
@@ -62,4 +63,4 @@ export declare type RangedCombatTechniqueTranslation = {
62
63
  special?: string;
63
64
  errata?: Errata;
64
65
  };
65
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<RangedCombatTechnique>;
66
+ export declare const config: TypeConfig<RangedCombatTechnique>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main RangedCombatTechnique
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: "RangedCombatTechnique",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("RangedCombatTechnique"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,14 +1,15 @@
1
1
  /**
2
2
  * @main Condition
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 Condition
10
11
  */
11
- export declare type Condition = {
12
+ export type Condition = {
12
13
  /**
13
14
  * The condition's identifier. An unique, increasing integer.
14
15
  * @integer
@@ -21,7 +22,7 @@ export declare type Condition = {
21
22
  */
22
23
  translations: LocaleMap<ConditionTranslation>;
23
24
  };
24
- export declare type ConditionTranslation = {
25
+ export type ConditionTranslation = {
25
26
  /**
26
27
  * The condition's name.
27
28
  */
@@ -36,4 +37,4 @@ export declare type ConditionTranslation = {
36
37
  effects: [NonEmptyMarkdown, NonEmptyMarkdown, NonEmptyMarkdown, NonEmptyMarkdown];
37
38
  errata?: Errata;
38
39
  };
39
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Condition>;
40
+ export declare const config: TypeConfig<Condition>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main Condition
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: "Condition",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("Condition"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };