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,16 +1,17 @@
1
1
  /**
2
2
  * @main FamiliarsTrick
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, DurationUnitValue } from "./_ActivatableSkillDuration.js";
7
6
  import { LocaleMap } from "./_LocaleMap.js";
8
7
  import { ResponsiveText, ResponsiveTextOptional, ResponsiveTextReplace } from "./_ResponsiveText.js";
9
8
  import { AnimalTypeReference, PropertyReference } from "./_SimpleReferences.js";
9
+ import { Errata } from "./source/_Erratum.js";
10
+ import { PublicationRefs } from "./source/_PublicationRef.js";
10
11
  /**
11
12
  * @title Familiar's Trick
12
13
  */
13
- export declare type FamiliarsTrick = {
14
+ export type FamiliarsTrick = {
14
15
  /**
15
16
  * The familiar's trick's identifier. An unique, increasing integer.
16
17
  * @integer
@@ -46,26 +47,26 @@ export declare type FamiliarsTrick = {
46
47
  */
47
48
  translations: LocaleMap<FamiliarsTrickTranslation>;
48
49
  };
49
- export declare type Property = {
50
+ export type Property = {
50
51
  tag: "Fixed";
51
52
  fixed: PropertyReference;
52
53
  } | {
53
54
  tag: "Indefinite";
54
55
  indefinite: IndefiniteProperty;
55
56
  };
56
- export declare type IndefiniteProperty = {
57
+ export type IndefiniteProperty = {
57
58
  /**
58
59
  * All translations for the entry, identified by IETF language tag (BCP47).
59
60
  */
60
61
  translations: LocaleMap<IndefinitePropertyTranslation>;
61
62
  };
62
- export declare type IndefinitePropertyTranslation = {
63
+ export type IndefinitePropertyTranslation = {
63
64
  /**
64
65
  * A description of the property.
65
66
  */
66
67
  description: ResponsiveText;
67
68
  };
68
- export declare type FamiliarsTrickTranslation = {
69
+ export type FamiliarsTrickTranslation = {
69
70
  /**
70
71
  * The name of the familiar's trick.
71
72
  * @minLength 1
@@ -96,7 +97,7 @@ export declare type FamiliarsTrickTranslation = {
96
97
  /**
97
98
  * Measurable parameters of a familiar's trick.
98
99
  */
99
- export declare type PerformanceParameters = {
100
+ export type PerformanceParameters = {
100
101
  tag: "OneTime";
101
102
  one_time: OneTimePerformanceParameters;
102
103
  } | {
@@ -106,11 +107,11 @@ export declare type PerformanceParameters = {
106
107
  tag: "Sustained";
107
108
  sustained: SustainedPerformanceParameters;
108
109
  };
109
- export declare type OneTimePerformanceParameters = {
110
+ export type OneTimePerformanceParameters = {
110
111
  cost: OneTimeCost;
111
112
  duration: OneTimeDuration;
112
113
  };
113
- export declare type OneTimeCost = {
114
+ export type OneTimeCost = {
114
115
  tag: "Fixed";
115
116
  fixed: FixedOneTimeCost;
116
117
  } | {
@@ -120,7 +121,7 @@ export declare type OneTimeCost = {
120
121
  tag: "Indefinite";
121
122
  indefinite: IndefiniteOneTimeCost;
122
123
  };
123
- export declare type FixedOneTimeCost = {
124
+ export type FixedOneTimeCost = {
124
125
  /**
125
126
  * The AE cost value.
126
127
  * @integer
@@ -143,14 +144,14 @@ export declare type FixedOneTimeCost = {
143
144
  */
144
145
  translations?: LocaleMap<FixedOneTimeCostTranslation>;
145
146
  };
146
- export declare type FixedOneTimeCostTranslation = {
147
+ export type FixedOneTimeCostTranslation = {
147
148
  /**
148
149
  * The cost have to be per a specific countable entity, e.g. `8 KP
149
150
  * per person`.
150
151
  */
151
152
  per?: ResponsiveTextOptional;
152
153
  };
153
- export declare type AllOneTimeCost = {
154
+ export type AllOneTimeCost = {
154
155
  /**
155
156
  * The minimum AE the familiar has to have.
156
157
  * @integer
@@ -158,20 +159,20 @@ export declare type AllOneTimeCost = {
158
159
  */
159
160
  minimum?: number;
160
161
  };
161
- export declare type IndefiniteOneTimeCost = {
162
+ export type IndefiniteOneTimeCost = {
162
163
  /**
163
164
  * All translations for the entry, identified by IETF language tag
164
165
  * (BCP47).
165
166
  */
166
167
  translations: LocaleMap<IndefiniteOneTimeCostTranslation>;
167
168
  };
168
- export declare type IndefiniteOneTimeCostTranslation = {
169
+ export type IndefiniteOneTimeCostTranslation = {
169
170
  /**
170
171
  * A description of the AE cost.
171
172
  */
172
173
  description: ResponsiveText;
173
174
  };
174
- export declare type OneTimeDuration = {
175
+ export type OneTimeDuration = {
175
176
  tag: "Immediate";
176
177
  immediate: {};
177
178
  } | {
@@ -181,7 +182,7 @@ export declare type OneTimeDuration = {
181
182
  tag: "Indefinite";
182
183
  indefinite: IndefiniteOneTimeDuration;
183
184
  };
184
- export declare type FixedOneTimeDuration = {
185
+ export type FixedOneTimeDuration = {
185
186
  /**
186
187
  * If the duration is the maximum duration, so it may end earlier.
187
188
  */
@@ -201,29 +202,29 @@ export declare type FixedOneTimeDuration = {
201
202
  */
202
203
  translations?: LocaleMap<FixedOneTimeDurationTranslation>;
203
204
  };
204
- export declare type FixedOneTimeDurationTranslation = {
205
+ export type FixedOneTimeDurationTranslation = {
205
206
  /**
206
207
  * A replacement string.
207
208
  */
208
209
  replacement?: ResponsiveTextReplace;
209
210
  };
210
- export declare type IndefiniteOneTimeDuration = {
211
+ export type IndefiniteOneTimeDuration = {
211
212
  /**
212
213
  * All translations for the entry, identified by IETF language tag
213
214
  * (BCP47).
214
215
  */
215
216
  translations: LocaleMap<IndefiniteOneTimeDurationTranslation>;
216
217
  };
217
- export declare type IndefiniteOneTimeDurationTranslation = {
218
+ export type IndefiniteOneTimeDurationTranslation = {
218
219
  /**
219
220
  * A description of the duration.
220
221
  */
221
222
  description: ResponsiveText;
222
223
  };
223
- export declare type OneTimeIntervalPerformanceParameters = {
224
+ export type OneTimeIntervalPerformanceParameters = {
224
225
  cost: OneTimeIntervalCost;
225
226
  };
226
- export declare type OneTimeIntervalCost = {
227
+ export type OneTimeIntervalCost = {
227
228
  /**
228
229
  * The AE cost value.
229
230
  * @integer
@@ -241,10 +242,10 @@ export declare type OneTimeIntervalCost = {
241
242
  */
242
243
  interval: DurationUnitValue;
243
244
  };
244
- export declare type SustainedPerformanceParameters = {
245
+ export type SustainedPerformanceParameters = {
245
246
  cost: SustainedCost;
246
247
  };
247
- export declare type SustainedCost = {
248
+ export type SustainedCost = {
248
249
  /**
249
250
  * The AE cost value.
250
251
  * @integer
@@ -262,4 +263,4 @@ export declare type SustainedCost = {
262
263
  */
263
264
  interval?: DurationUnitValue;
264
265
  };
265
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<FamiliarsTrick>;
266
+ export declare const config: TypeConfig<FamiliarsTrick>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main FamiliarsTrick
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: "FamiliarsTrick",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("FamiliarsTrick"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,12 +1,13 @@
1
1
  /**
2
2
  * @main HairColor
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 Hair Color
8
9
  */
9
- export declare type HairColor = {
10
+ export type HairColor = {
10
11
  /**
11
12
  * The hair color's identifier. An unique, increasing integer.
12
13
  * @integer
@@ -18,10 +19,10 @@ export declare type HairColor = {
18
19
  */
19
20
  translations: LocaleMap<HairColorTranslation>;
20
21
  };
21
- export declare type HairColorTranslation = {
22
+ export type HairColorTranslation = {
22
23
  /**
23
24
  * The hair color.
24
25
  */
25
26
  name: NonEmptyString;
26
27
  };
27
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<HairColor>;
28
+ export declare const config: TypeConfig<HairColor>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main HairColor
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: "HairColor",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("HairColor"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * @main Kirchenpraegung
3
3
  */
4
+ import { TypeConfig } from "../typeConfig.js";
4
5
  import { Influence } from "./_Influence.js";
5
6
  /**
6
7
  * @title Kirchenprägung
7
8
  */
8
- export declare type Kirchenpraegung = Influence;
9
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Influence>;
9
+ export type Kirchenpraegung = Influence;
10
+ export declare const config: TypeConfig<Kirchenpraegung>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main Kirchenpraegung
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: "Kirchenpraegung",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("Kirchenpraegung"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,20 +1,21 @@
1
1
  /**
2
2
  * @main Curriculum
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 { ElementIdentifier, MagicalTraditionIdentifier, PropertyIdentifier, SkillIdentifier } from "./_Identifier.js";
7
6
  import { CombatTechniqueIdentifier, SpellworkIdentifier } from "./_IdentifierGroup.js";
8
7
  import { LocaleMap } from "./_LocaleMap.js";
9
8
  import { NonEmptyString } from "./_NonEmptyString.js";
10
9
  import { GuidelineReference } from "./_SimpleReferences.js";
10
+ import { Errata } from "./source/_Erratum.js";
11
+ import { PublicationRefs } from "./source/_PublicationRef.js";
11
12
  /**
12
13
  * This is a curriculum of a specified academy, containing the guideline,
13
14
  * elective and restricted spellworks as well as the lesson packages of that
14
15
  * academy.
15
16
  * @title Curriculum
16
17
  */
17
- export declare type Curriculum = {
18
+ export type Curriculum = {
18
19
  /**
19
20
  * The curriculum's identifier. An unique, increasing integer.
20
21
  * @integer
@@ -43,7 +44,7 @@ export declare type Curriculum = {
43
44
  */
44
45
  translations: LocaleMap<CurriculumTranslation>;
45
46
  };
46
- export declare type CurriculumTranslation = {
47
+ export type CurriculumTranslation = {
47
48
  /**
48
49
  * The name of the academy.
49
50
  */
@@ -53,20 +54,20 @@ export declare type CurriculumTranslation = {
53
54
  /**
54
55
  * The academy's elective spellworks package.
55
56
  */
56
- declare type ElectiveSpellworks = {
57
+ type ElectiveSpellworks = {
57
58
  tag: "DefinedByGameMaster";
58
59
  defined_by_game_master: {};
59
60
  } | {
60
61
  tag: "Specific";
61
62
  specific: SpecificElectiveSpellworks;
62
63
  };
63
- export declare type SpecificElectiveSpellworks = {
64
+ export type SpecificElectiveSpellworks = {
64
65
  /**
65
66
  * @minItems 1
66
67
  */
67
68
  list: ElectiveSpellwork[];
68
69
  };
69
- export declare type ElectiveSpellwork = {
70
+ export type ElectiveSpellwork = {
70
71
  id: SpellworkIdentifier;
71
72
  /**
72
73
  * The elective spellwork may only take effect if a certain condition is met.
@@ -82,22 +83,22 @@ export declare type ElectiveSpellwork = {
82
83
  * designed so that it can work without a specific profession, as multiple may
83
84
  * belong to an institute, but with referencing other entities instead.
84
85
  */
85
- export declare type ElectiveSpellworkRestriction = {
86
+ export type ElectiveSpellworkRestriction = {
86
87
  tag: "Element";
87
88
  element: ElectiveSpellworkElementRestriction;
88
89
  };
89
- export declare type ElectiveSpellworkElementRestriction = {
90
+ export type ElectiveSpellworkElementRestriction = {
90
91
  id: ElementIdentifier;
91
92
  };
92
93
  /**
93
94
  * The academy's restricted spellworks package.
94
95
  * @minItems 1
95
96
  */
96
- export declare type RestrictedSpellworks = RestrictedSpellwork[];
97
+ export type RestrictedSpellworks = RestrictedSpellwork[];
97
98
  /**
98
99
  * The academy's restricted spellworks package.
99
100
  */
100
- export declare type RestrictedSpellwork = {
101
+ export type RestrictedSpellwork = {
101
102
  tag: "Property";
102
103
  property: RestrictedProperty;
103
104
  } | {
@@ -113,7 +114,7 @@ export declare type RestrictedSpellwork = {
113
114
  tag: "DamageIntelligent";
114
115
  damage_intelligent: {};
115
116
  };
116
- export declare type RestrictedProperty = {
117
+ export type RestrictedProperty = {
117
118
  /**
118
119
  * The identifier of the property that spellworks are disallowed from.
119
120
  * @integer
@@ -135,12 +136,12 @@ export declare type RestrictedProperty = {
135
136
  /**
136
137
  * A list of available lesson packages.
137
138
  */
138
- export declare type LessonPackages = [LessonPackage, LessonPackage];
139
+ export type LessonPackages = [LessonPackage, LessonPackage];
139
140
  /**
140
141
  * @title Lesson Package
141
142
  * @minProperties 3
142
143
  */
143
- export declare type LessonPackage = {
144
+ export type LessonPackage = {
144
145
  /**
145
146
  * The lesson package's identifier. An unique, increasing integer.
146
147
  * @integer
@@ -161,11 +162,11 @@ export declare type LessonPackage = {
161
162
  */
162
163
  translations: LocaleMap<LessonPackageTranslation>;
163
164
  };
164
- export declare type SpellworkChange = {
165
+ export type SpellworkChange = {
165
166
  base: SpellworkAdjustment;
166
167
  replacement: SpellworkAdjustment;
167
168
  };
168
- export declare type LessonPackageTranslation = {
169
+ export type LessonPackageTranslation = {
169
170
  /**
170
171
  * The name of the lesson package.
171
172
  */
@@ -178,7 +179,7 @@ export declare type LessonPackageTranslation = {
178
179
  */
179
180
  spellwork_changes?: NonEmptyString;
180
181
  };
181
- export declare type AbilityAdjustment = {
182
+ export type AbilityAdjustment = {
182
183
  tag: "CombatTechnique";
183
184
  combat_technique: CombatTechniqueAdjustment;
184
185
  } | {
@@ -188,7 +189,7 @@ export declare type AbilityAdjustment = {
188
189
  tag: "Spellwork";
189
190
  spellwork: SpellworkAdjustment;
190
191
  };
191
- export declare type CombatTechniqueAdjustment = {
192
+ export type CombatTechniqueAdjustment = {
192
193
  id: CombatTechniqueIdentifier;
193
194
  /**
194
195
  * The combat technique points that will be added to the current combat
@@ -199,7 +200,7 @@ export declare type CombatTechniqueAdjustment = {
199
200
  */
200
201
  points: number;
201
202
  };
202
- export declare type SkillAdjustment = {
203
+ export type SkillAdjustment = {
203
204
  /**
204
205
  * The skill's identifier.
205
206
  * @integer
@@ -214,7 +215,7 @@ export declare type SkillAdjustment = {
214
215
  */
215
216
  points: number;
216
217
  };
217
- export declare type SpellworkAdjustment = {
218
+ export type SpellworkAdjustment = {
218
219
  id: SpellworkIdentifier;
219
220
  /**
220
221
  * The skill points that will be added to the current skill rating. If a
@@ -231,5 +232,5 @@ export declare type SpellworkAdjustment = {
231
232
  */
232
233
  tradition?: MagicalTraditionIdentifier;
233
234
  };
234
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Curriculum>;
235
+ export declare const config: TypeConfig<Curriculum>;
235
236
  export {};
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main Curriculum
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: "Curriculum",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("Curriculum"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,12 +1,13 @@
1
1
  /**
2
2
  * @main Guideline
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 Guideline
8
9
  */
9
- export declare type Guideline = {
10
+ export type Guideline = {
10
11
  /**
11
12
  * The guideline's identifier. An unique, increasing integer.
12
13
  * @integer
@@ -24,10 +25,10 @@ export declare type Guideline = {
24
25
  */
25
26
  translations: LocaleMap<GuidelineTranslation>;
26
27
  };
27
- export declare type GuidelineTranslation = {
28
+ export type GuidelineTranslation = {
28
29
  /**
29
30
  * The guideline name.
30
31
  */
31
32
  name: NonEmptyString;
32
33
  };
33
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Guideline>;
34
+ export declare const config: TypeConfig<Guideline>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main Guideline
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: "Guideline",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("Guideline"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * @main LiturgicalChant
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 { FastPerformanceParameters } 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 Liturgical Chant
18
19
  */
19
- export declare type LiturgicalChant = {
20
+ export type LiturgicalChant = {
20
21
  /**
21
22
  * The liturgical chant's identifier. An unique, increasing integer.
22
23
  * @integer
@@ -58,7 +59,7 @@ export declare type LiturgicalChant = {
58
59
  translations: LocaleMap<LiturgicalChantTranslation>;
59
60
  enhancements?: Enhancements;
60
61
  };
61
- export declare type LiturgicalChantTranslation = {
62
+ export type LiturgicalChantTranslation = {
62
63
  /**
63
64
  * The name of the liturgical chant.
64
65
  */
@@ -109,4 +110,4 @@ export declare type LiturgicalChantTranslation = {
109
110
  target: string;
110
111
  errata?: Errata;
111
112
  };
112
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<LiturgicalChant>;
113
+ export declare const config: TypeConfig<LiturgicalChant>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main LiturgicalChant
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: "LiturgicalChant",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("LiturgicalChant"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };
@@ -1,14 +1,11 @@
1
1
  /**
2
- * @main Locales
2
+ * @main Locale
3
3
  */
4
- /**
5
- * @title Supported locales
6
- */
7
- export declare type Locales = Locale[];
4
+ import { TypeConfig } from "../typeConfig.js";
8
5
  /**
9
6
  * @title Supported locale
10
7
  */
11
- export declare type Locale = {
8
+ export type Locale = {
12
9
  /**
13
10
  * The locale's identifier. An IETF language tag (BCP47).
14
11
  * @pattern ^[a-z]{2}-[A-Z]{2}$
@@ -36,4 +33,4 @@ export declare type Locale = {
36
33
  */
37
34
  is_missing_implementation?: true;
38
35
  };
39
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<Locales>;
36
+ export declare const config: TypeConfig<Locale, string>;
@@ -1,5 +1,12 @@
1
1
  /**
2
- * @main Locales
2
+ * @main Locale
3
3
  */
4
- import { validateSchemaCreator } from "../validation/schema.js";
5
- export const validateSchema = validateSchemaCreator(import.meta.url, { ignoreFileNamePattern: true });
4
+ import { Result } from "../helpers/result.js";
5
+ import { createSchemaValidator } from "../validation/builders/schema.js";
6
+ import { getFilenameAsStringId } from "../validation/filename.js";
7
+ export const config = {
8
+ name: "Locale",
9
+ id: getFilenameAsStringId,
10
+ integrityValidator: () => Result.ok(undefined),
11
+ schemaValidator: createSchemaValidator(import.meta.url, { ignoreFileNamePattern: true })
12
+ };
@@ -1,17 +1,18 @@
1
1
  /**
2
2
  * @main MetaCondition
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
  * Meta Conditions are rule elements that work like conditions in the sense that
10
11
  * they have four levels with different effects, but which are not explicitly
11
12
  * listed as conditions.
12
13
  * @title Meta Condition
13
14
  */
14
- export declare type MetaCondition = {
15
+ export type MetaCondition = {
15
16
  /**
16
17
  * The meta condition's identifier. An unique, increasing integer.
17
18
  * @integer
@@ -24,7 +25,7 @@ export declare type MetaCondition = {
24
25
  */
25
26
  translations: LocaleMap<MetaConditionTranslation>;
26
27
  };
27
- export declare type MetaConditionTranslation = {
28
+ export type MetaConditionTranslation = {
28
29
  /**
29
30
  * The meta condition's name.
30
31
  */
@@ -39,4 +40,4 @@ export declare type MetaConditionTranslation = {
39
40
  effects: [NonEmptyMarkdown, NonEmptyMarkdown, NonEmptyMarkdown, NonEmptyMarkdown];
40
41
  errata?: Errata;
41
42
  };
42
- export declare const validateSchema: import("../validation/schema.js").TypeValidator<MetaCondition>;
43
+ export declare const config: TypeConfig<MetaCondition>;
@@ -1,5 +1,12 @@
1
1
  /**
2
2
  * @main MetaCondition
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: "MetaCondition",
9
+ id: getFIlenamePrefixAsNumericId,
10
+ integrityValidator: todo("MetaCondition"),
11
+ schemaValidator: createSchemaValidator(import.meta.url),
12
+ };