optolith-database-schema 0.1.4 → 0.1.7

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 (425) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/lib/config.d.ts +228 -0
  3. package/lib/config.js +224 -0
  4. package/lib/main.d.ts +16 -0
  5. package/lib/main.js +111 -1
  6. package/lib/types/Advantage.d.ts +7 -3
  7. package/lib/types/Advantage.js +2 -1
  8. package/lib/types/ArcaneBardTradition.d.ts +3 -2
  9. package/lib/types/ArcaneBardTradition.js +2 -1
  10. package/lib/types/ArcaneDancerTradition.d.ts +3 -2
  11. package/lib/types/ArcaneDancerTradition.js +2 -1
  12. package/lib/types/Aspect.d.ts +1 -0
  13. package/lib/types/Aspect.js +2 -1
  14. package/lib/types/Attribute.d.ts +2 -1
  15. package/lib/types/Attribute.js +3 -1
  16. package/lib/types/Blessing.d.ts +4 -3
  17. package/lib/types/Blessing.js +2 -1
  18. package/lib/types/Cantrip.d.ts +9 -13
  19. package/lib/types/Cantrip.js +2 -1
  20. package/lib/types/Ceremony.d.ts +9 -8
  21. package/lib/types/Ceremony.js +2 -1
  22. package/lib/types/CombatTechnique_Close.d.ts +4 -3
  23. package/lib/types/CombatTechnique_Close.js +2 -1
  24. package/lib/types/CombatTechnique_Ranged.d.ts +4 -3
  25. package/lib/types/CombatTechnique_Ranged.js +2 -1
  26. package/lib/types/Condition.d.ts +3 -2
  27. package/lib/types/Condition.js +2 -1
  28. package/lib/types/Continent.d.ts +1 -0
  29. package/lib/types/Continent.js +2 -1
  30. package/lib/types/Culture.d.ts +5 -4
  31. package/lib/types/Culture.js +2 -1
  32. package/lib/types/DerivedCharacteristic.d.ts +4 -3
  33. package/lib/types/DerivedCharacteristic.js +2 -1
  34. package/lib/types/Disadvantage.d.ts +7 -3
  35. package/lib/types/Disadvantage.js +2 -1
  36. package/lib/types/Element.d.ts +1 -0
  37. package/lib/types/Element.js +2 -1
  38. package/lib/types/ExperienceLevel.d.ts +1 -0
  39. package/lib/types/ExperienceLevel.js +2 -1
  40. package/lib/types/EyeColor.d.ts +1 -0
  41. package/lib/types/EyeColor.js +2 -1
  42. package/lib/types/FamiliarsTrick.d.ts +4 -3
  43. package/lib/types/FamiliarsTrick.js +2 -1
  44. package/lib/types/FamiliarsTrick_AnimalType.d.ts +1 -0
  45. package/lib/types/FamiliarsTrick_AnimalType.js +2 -1
  46. package/lib/types/HairColor.d.ts +1 -0
  47. package/lib/types/HairColor.js +2 -1
  48. package/lib/types/Lessons_Curriculum.d.ts +3 -2
  49. package/lib/types/Lessons_Curriculum.js +2 -1
  50. package/lib/types/Lessons_Guideline.d.ts +1 -0
  51. package/lib/types/Lessons_Guideline.js +2 -1
  52. package/lib/types/LiturgicalChant.d.ts +9 -8
  53. package/lib/types/LiturgicalChant.js +2 -1
  54. package/lib/types/Locale.d.ts +3 -2
  55. package/lib/types/Locale.js +2 -1
  56. package/lib/types/MetaCondition.d.ts +3 -2
  57. package/lib/types/MetaCondition.js +2 -1
  58. package/lib/types/PactCategory.d.ts +3 -2
  59. package/lib/types/PactCategory.js +2 -1
  60. package/lib/types/Patron.d.ts +2 -1
  61. package/lib/types/Patron.js +2 -1
  62. package/lib/types/PatronCategory.d.ts +1 -0
  63. package/lib/types/PatronCategory.js +2 -1
  64. package/lib/types/Property.d.ts +2 -1
  65. package/lib/types/Property.js +2 -1
  66. package/lib/types/Race.d.ts +4 -3
  67. package/lib/types/Race.js +2 -1
  68. package/lib/types/Region.d.ts +1 -0
  69. package/lib/types/Region.js +2 -1
  70. package/lib/types/Ritual.d.ts +9 -8
  71. package/lib/types/Ritual.js +2 -1
  72. package/lib/types/Service.d.ts +3 -2
  73. package/lib/types/Service.js +2 -1
  74. package/lib/types/SexPractice.d.ts +2 -1
  75. package/lib/types/SexPractice.js +2 -1
  76. package/lib/types/Skill.d.ts +5 -4
  77. package/lib/types/Skill.js +2 -1
  78. package/lib/types/SkillGroup.d.ts +2 -1
  79. package/lib/types/SkillGroup.js +2 -1
  80. package/lib/types/SkillModificationLevel.d.ts +1 -0
  81. package/lib/types/SkillModificationLevel.js +2 -0
  82. package/lib/types/SocialStatus.d.ts +1 -0
  83. package/lib/types/SocialStatus.js +2 -1
  84. package/lib/types/Spell.d.ts +9 -8
  85. package/lib/types/Spell.js +2 -1
  86. package/lib/types/State.d.ts +3 -2
  87. package/lib/types/State.js +2 -1
  88. package/lib/types/TargetCategory.d.ts +1 -0
  89. package/lib/types/TargetCategory.js +2 -1
  90. package/lib/types/_Activatable.d.ts +583 -15
  91. package/lib/types/_Activatable.js +44 -0
  92. package/lib/types/_ActivatableSkill.d.ts +1 -1
  93. package/lib/types/_Enhancements.d.ts +4 -4
  94. package/lib/types/_Identifier.d.ts +127 -96
  95. package/lib/types/_Identifier.js +110 -88
  96. package/lib/types/_Influence.d.ts +4 -2
  97. package/lib/types/_Prerequisite.d.ts +93 -397
  98. package/lib/types/_Prerequisite.js +1 -136
  99. package/lib/types/magicalActions/AnimistPower.d.ts +11 -5
  100. package/lib/types/magicalActions/AnimistPower.js +2 -1
  101. package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +1 -0
  102. package/lib/types/magicalActions/AnimistPower_Tribe.js +2 -1
  103. package/lib/types/magicalActions/Curse.d.ts +5 -4
  104. package/lib/types/magicalActions/Curse.js +2 -1
  105. package/lib/types/magicalActions/DominationRitual.d.ts +5 -4
  106. package/lib/types/magicalActions/DominationRitual.js +2 -1
  107. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +7 -6
  108. package/lib/types/magicalActions/ElvenMagicalSong.js +2 -1
  109. package/lib/types/magicalActions/GeodeRitual.d.ts +8 -7
  110. package/lib/types/magicalActions/GeodeRitual.js +2 -1
  111. package/lib/types/magicalActions/JesterTrick.d.ts +6 -5
  112. package/lib/types/magicalActions/JesterTrick.js +2 -1
  113. package/lib/types/magicalActions/MagicalDance.d.ts +7 -6
  114. package/lib/types/magicalActions/MagicalDance.js +2 -1
  115. package/lib/types/magicalActions/MagicalMelody.d.ts +8 -7
  116. package/lib/types/magicalActions/MagicalMelody.js +2 -1
  117. package/lib/types/magicalActions/MagicalRune.d.ts +6 -5
  118. package/lib/types/magicalActions/MagicalRune.js +2 -1
  119. package/lib/types/magicalActions/ZibiljaRitual.d.ts +6 -5
  120. package/lib/types/magicalActions/ZibiljaRitual.js +2 -1
  121. package/lib/types/prerequisites/ConditionalPrerequisites.d.ts +10 -0
  122. package/lib/types/prerequisites/ConditionalPrerequisites.js +1 -0
  123. package/lib/types/prerequisites/DisplayOption.d.ts +19 -0
  124. package/lib/types/prerequisites/DisplayOption.js +1 -0
  125. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +32 -0
  126. package/lib/types/prerequisites/PrerequisiteGroups.js +1 -0
  127. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +95 -0
  128. package/lib/types/prerequisites/single/ActivatablePrerequisite.js +1 -0
  129. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +28 -0
  130. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.js +1 -0
  131. package/lib/types/prerequisites/single/CommonSuggestedByRCPPrerequisite.d.ts +3 -0
  132. package/lib/types/prerequisites/single/CommonSuggestedByRCPPrerequisite.js +1 -0
  133. package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +11 -0
  134. package/lib/types/prerequisites/single/CulturePrerequisite.js +1 -0
  135. package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +36 -0
  136. package/lib/types/prerequisites/single/EnhancementPrerequisite.js +1 -0
  137. package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +18 -0
  138. package/lib/types/prerequisites/single/InfluencePrerequisite.js +1 -0
  139. package/lib/types/prerequisites/single/PactPrerequisite.d.ts +32 -0
  140. package/lib/types/prerequisites/single/PactPrerequisite.js +1 -0
  141. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +22 -0
  142. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.js +1 -0
  143. package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +13 -0
  144. package/lib/types/prerequisites/single/PublicationPrerequisite.js +1 -0
  145. package/lib/types/prerequisites/single/RacePrerequisite.d.ts +14 -0
  146. package/lib/types/prerequisites/single/RacePrerequisite.js +1 -0
  147. package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +99 -0
  148. package/lib/types/prerequisites/single/RatedPrerequisite.js +1 -0
  149. package/lib/types/prerequisites/single/RulePrerequisite.d.ts +10 -0
  150. package/lib/types/prerequisites/single/RulePrerequisite.js +1 -0
  151. package/lib/types/prerequisites/single/SexPrerequisite.d.ts +11 -0
  152. package/lib/types/prerequisites/single/SexPrerequisite.js +1 -0
  153. package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +16 -0
  154. package/lib/types/prerequisites/single/SocialStatusPrerequisite.js +1 -0
  155. package/lib/types/prerequisites/single/StatePrerequisite.d.ts +11 -0
  156. package/lib/types/prerequisites/single/StatePrerequisite.js +1 -0
  157. package/lib/types/prerequisites/single/TextPrerequisite.d.ts +31 -0
  158. package/lib/types/prerequisites/single/TextPrerequisite.js +1 -0
  159. package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +33 -0
  160. package/lib/types/prerequisites/single/TraditionPrerequisite.js +1 -0
  161. package/lib/types/rule/FocusRule.d.ts +3 -2
  162. package/lib/types/rule/FocusRule.js +2 -1
  163. package/lib/types/rule/FocusRule_Subject.d.ts +1 -0
  164. package/lib/types/rule/FocusRule_Subject.js +2 -1
  165. package/lib/types/rule/OptionalRule.d.ts +3 -2
  166. package/lib/types/rule/OptionalRule.js +2 -1
  167. package/lib/types/source/Publication.d.ts +87 -0
  168. package/lib/types/source/Publication.js +2 -1
  169. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +11 -3
  170. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +2 -1
  171. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +7 -3
  172. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +2 -1
  173. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +7 -3
  174. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +2 -1
  175. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +7 -3
  176. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +2 -1
  177. package/lib/types/specialAbility/AncestorGlyph.d.ts +7 -3
  178. package/lib/types/specialAbility/AncestorGlyph.js +2 -1
  179. package/lib/types/specialAbility/BlessedTradition.d.ts +9 -5
  180. package/lib/types/specialAbility/BlessedTradition.js +2 -1
  181. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +7 -3
  182. package/lib/types/specialAbility/BrawlingSpecialAbility.js +2 -1
  183. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +7 -3
  184. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +2 -1
  185. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +11 -3
  186. package/lib/types/specialAbility/CombatSpecialAbility.js +2 -1
  187. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +7 -3
  188. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +2 -1
  189. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +10 -6
  190. package/lib/types/specialAbility/CommandSpecialAbility.js +3 -2
  191. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +7 -3
  192. package/lib/types/specialAbility/FamiliarSpecialAbility.js +2 -1
  193. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +7 -3
  194. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +2 -1
  195. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +7 -3
  196. package/lib/types/specialAbility/FatePointSpecialAbility.js +2 -1
  197. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +7 -3
  198. package/lib/types/specialAbility/GeneralSpecialAbility.js +2 -1
  199. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +7 -3
  200. package/lib/types/specialAbility/KarmaSpecialAbility.js +2 -1
  201. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +10 -6
  202. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +3 -2
  203. package/lib/types/specialAbility/LycantropicGift.d.ts +7 -3
  204. package/lib/types/specialAbility/LycantropicGift.js +2 -1
  205. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +7 -3
  206. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +2 -1
  207. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +7 -3
  208. package/lib/types/specialAbility/MagicalSpecialAbility.js +2 -1
  209. package/lib/types/specialAbility/MagicalTradition.d.ts +8 -4
  210. package/lib/types/specialAbility/MagicalTradition.js +2 -1
  211. package/lib/types/specialAbility/PactGift.d.ts +9 -5
  212. package/lib/types/specialAbility/PactGift.js +2 -1
  213. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +7 -3
  214. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +2 -1
  215. package/lib/types/specialAbility/Sermon.d.ts +7 -3
  216. package/lib/types/specialAbility/Sermon.js +2 -1
  217. package/lib/types/specialAbility/SexSpecialAbility.d.ts +7 -3
  218. package/lib/types/specialAbility/SexSpecialAbility.js +2 -1
  219. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +7 -3
  220. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +2 -1
  221. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +10 -6
  222. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +3 -2
  223. package/lib/types/specialAbility/VampiricGift.d.ts +7 -3
  224. package/lib/types/specialAbility/VampiricGift.js +2 -1
  225. package/lib/types/specialAbility/Vision.d.ts +7 -3
  226. package/lib/types/specialAbility/Vision.js +2 -1
  227. package/lib/types/specialAbility/sub/Language.d.ts +5 -4
  228. package/lib/types/specialAbility/sub/Language.js +2 -1
  229. package/lib/types/specialAbility/sub/Script.d.ts +3 -2
  230. package/lib/types/specialAbility/sub/Script.js +2 -1
  231. package/lib/types/specialAbility/sub/TradeSecret.d.ts +5 -2
  232. package/lib/types/specialAbility/sub/TradeSecret.js +2 -1
  233. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +19 -3
  234. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +2 -1
  235. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +19 -3
  236. package/lib/types/traditionArtifacts/AttireEnchantment.js +2 -1
  237. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +19 -3
  238. package/lib/types/traditionArtifacts/BowlEnchantment.js +2 -1
  239. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +19 -3
  240. package/lib/types/traditionArtifacts/CauldronEnchantment.js +2 -1
  241. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +19 -3
  242. package/lib/types/traditionArtifacts/ChronicleEnchantment.js +2 -1
  243. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +19 -3
  244. package/lib/types/traditionArtifacts/DaggerRitual.js +2 -1
  245. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +19 -3
  246. package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +2 -1
  247. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +19 -3
  248. package/lib/types/traditionArtifacts/InstrumentEnchantment.js +2 -1
  249. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +19 -3
  250. package/lib/types/traditionArtifacts/Krallenkettenzauber.js +2 -1
  251. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +19 -3
  252. package/lib/types/traditionArtifacts/OrbEnchantment.js +2 -1
  253. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +19 -3
  254. package/lib/types/traditionArtifacts/RingEnchantment.js +2 -1
  255. package/lib/types/traditionArtifacts/SickleRitual.d.ts +19 -3
  256. package/lib/types/traditionArtifacts/SickleRitual.js +2 -1
  257. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +19 -3
  258. package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +2 -1
  259. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +19 -3
  260. package/lib/types/traditionArtifacts/StaffEnchantment.js +2 -1
  261. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +19 -3
  262. package/lib/types/traditionArtifacts/ToyEnchantment.js +2 -1
  263. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +19 -3
  264. package/lib/types/traditionArtifacts/Trinkhornzauber.js +2 -1
  265. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +19 -3
  266. package/lib/types/traditionArtifacts/WandEnchantment.js +2 -1
  267. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +19 -3
  268. package/lib/types/traditionArtifacts/WeaponEnchantment.js +2 -1
  269. package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +1 -0
  270. package/lib/types/traditionArtifacts/sub/AnimalShape.js +2 -1
  271. package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +1 -0
  272. package/lib/types/traditionArtifacts/sub/AnimalShapePath.js +2 -1
  273. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +4 -3
  274. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.js +3 -2
  275. package/lib/types/traditionArtifacts/sub/Brew.d.ts +1 -0
  276. package/lib/types/traditionArtifacts/sub/Brew.js +2 -1
  277. package/lib/validation/schema.d.ts +10 -0
  278. package/lib/validation/schema.js +20 -0
  279. package/package.json +4 -2
  280. package/schema/Advantage.schema.json +7 -1
  281. package/schema/ArcaneBardTradition.schema.json +2 -2
  282. package/schema/ArcaneDancerTradition.schema.json +2 -2
  283. package/schema/Aspect.schema.json +1 -1
  284. package/schema/Attribute.schema.json +1 -1
  285. package/schema/Blessing.schema.json +1 -1
  286. package/schema/Cantrip.schema.json +5 -10
  287. package/schema/Ceremony.schema.json +2 -2
  288. package/schema/CombatTechnique_Close.schema.json +1 -1
  289. package/schema/CombatTechnique_Ranged.schema.json +1 -1
  290. package/schema/Condition.schema.json +1 -1
  291. package/schema/Continent.schema.json +1 -1
  292. package/schema/Culture.schema.json +1 -1
  293. package/schema/DerivedCharacteristic.schema.json +2 -2
  294. package/schema/Disadvantage.schema.json +7 -1
  295. package/schema/Element.schema.json +1 -1
  296. package/schema/ExperienceLevel.schema.json +1 -1
  297. package/schema/EyeColor.schema.json +1 -1
  298. package/schema/FamiliarsTrick.schema.json +1 -1
  299. package/schema/FamiliarsTrick_AnimalType.schema.json +1 -1
  300. package/schema/HairColor.schema.json +1 -1
  301. package/schema/Lessons_Curriculum.schema.json +1 -1
  302. package/schema/Lessons_Guideline.schema.json +1 -1
  303. package/schema/LiturgicalChant.schema.json +2 -2
  304. package/schema/Locale.schema.json +1 -1
  305. package/schema/MetaCondition.schema.json +1 -1
  306. package/schema/PactCategory.schema.json +1 -1
  307. package/schema/Patron.schema.json +1 -1
  308. package/schema/PatronCategory.schema.json +1 -1
  309. package/schema/Property.schema.json +1 -1
  310. package/schema/Race.schema.json +1 -1
  311. package/schema/Region.schema.json +1 -1
  312. package/schema/Ritual.schema.json +2 -2
  313. package/schema/Service.schema.json +1 -1
  314. package/schema/SexPractice.schema.json +1 -1
  315. package/schema/Skill.schema.json +1 -1
  316. package/schema/SkillGroup.schema.json +1 -1
  317. package/schema/SkillModificationLevel.schema.json +1 -1
  318. package/schema/SocialStatus.schema.json +1 -1
  319. package/schema/Spell.schema.json +2 -2
  320. package/schema/State.schema.json +1 -1
  321. package/schema/TargetCategory.schema.json +1 -1
  322. package/schema/_Activatable.schema.json +1002 -44
  323. package/schema/_ActivatableSkill.schema.json +1 -1
  324. package/schema/_CommonnessRatedAdvantageDisadvantage.schema.json +1 -1
  325. package/schema/_Enhancements.schema.json +2 -2
  326. package/schema/_I18n.schema.json +1 -1
  327. package/schema/_Identifier.schema.json +326 -189
  328. package/schema/_ImprovementCost.schema.json +1 -1
  329. package/schema/_Influence.schema.json +5 -1
  330. package/schema/_Prerequisite.schema.json +888 -676
  331. package/schema/_Sex.schema.json +1 -1
  332. package/schema/_SkillCheck.schema.json +1 -1
  333. package/schema/magicalActions/AnimistPower.schema.json +5 -1
  334. package/schema/magicalActions/AnimistPower_Tribe.schema.json +1 -1
  335. package/schema/magicalActions/Curse.schema.json +1 -1
  336. package/schema/magicalActions/DominationRitual.schema.json +1 -1
  337. package/schema/magicalActions/ElvenMagicalSong.schema.json +1 -1
  338. package/schema/magicalActions/GeodeRitual.schema.json +2 -2
  339. package/schema/magicalActions/JesterTrick.schema.json +1 -1
  340. package/schema/magicalActions/MagicalDance.schema.json +1 -1
  341. package/schema/magicalActions/MagicalMelody.schema.json +1 -1
  342. package/schema/magicalActions/MagicalRune.schema.json +1 -1
  343. package/schema/magicalActions/ZibiljaRitual.schema.json +1 -1
  344. package/schema/magicalActions/_MusicTradition.schema.json +1 -1
  345. package/schema/magicalActions/_SkillReference.schema.json +1 -1
  346. package/schema/prerequisites/ConditionalPrerequisites.schema.json +15 -0
  347. package/schema/prerequisites/DisplayOption.schema.json +48 -0
  348. package/schema/prerequisites/PrerequisiteGroups.schema.json +246 -0
  349. package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +142 -0
  350. package/schema/prerequisites/single/AnimistPowerPrerequisite.schema.json +40 -0
  351. package/schema/prerequisites/single/CommonSuggestedByRCPPrerequisite.schema.json +18 -0
  352. package/schema/prerequisites/single/CulturePrerequisite.schema.json +27 -0
  353. package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +54 -0
  354. package/schema/prerequisites/single/InfluencePrerequisite.schema.json +33 -0
  355. package/schema/prerequisites/single/PactPrerequisite.schema.json +46 -0
  356. package/schema/prerequisites/single/PrimaryAttributePrerequisite.schema.json +58 -0
  357. package/schema/prerequisites/single/PublicationPrerequisite.schema.json +27 -0
  358. package/schema/prerequisites/single/RacePrerequisite.schema.json +31 -0
  359. package/schema/prerequisites/single/RatedPrerequisite.schema.json +184 -0
  360. package/schema/prerequisites/single/RulePrerequisite.schema.json +26 -0
  361. package/schema/prerequisites/single/SexPrerequisite.schema.json +27 -0
  362. package/schema/prerequisites/single/SocialStatusPrerequisite.schema.json +30 -0
  363. package/schema/prerequisites/single/StatePrerequisite.schema.json +27 -0
  364. package/schema/prerequisites/single/TextPrerequisite.schema.json +63 -0
  365. package/schema/prerequisites/single/TraditionPrerequisite.schema.json +96 -0
  366. package/schema/rule/FocusRule.schema.json +1 -1
  367. package/schema/rule/FocusRule_Subject.schema.json +1 -1
  368. package/schema/rule/OptionalRule.schema.json +1 -1
  369. package/schema/source/Publication.schema.json +2 -2
  370. package/schema/source/_Erratum.schema.json +1 -1
  371. package/schema/source/_PublicationRef.schema.json +1 -1
  372. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +10 -1
  373. package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +7 -1
  374. package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +7 -1
  375. package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +7 -1
  376. package/schema/specialAbility/AncestorGlyph.schema.json +7 -1
  377. package/schema/specialAbility/BlessedTradition.schema.json +8 -2
  378. package/schema/specialAbility/BrawlingSpecialAbility.schema.json +7 -1
  379. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +7 -1
  380. package/schema/specialAbility/CombatSpecialAbility.schema.json +10 -1
  381. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +7 -1
  382. package/schema/specialAbility/CommandSpecialAbility.schema.json +10 -4
  383. package/schema/specialAbility/FamiliarSpecialAbility.schema.json +7 -1
  384. package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +7 -1
  385. package/schema/specialAbility/FatePointSpecialAbility.schema.json +7 -1
  386. package/schema/specialAbility/GeneralSpecialAbility.schema.json +7 -1
  387. package/schema/specialAbility/KarmaSpecialAbility.schema.json +7 -1
  388. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +10 -4
  389. package/schema/specialAbility/LycantropicGift.schema.json +7 -1
  390. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +7 -1
  391. package/schema/specialAbility/MagicalSpecialAbility.schema.json +7 -1
  392. package/schema/specialAbility/MagicalTradition.schema.json +7 -1
  393. package/schema/specialAbility/PactGift.schema.json +8 -2
  394. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +7 -1
  395. package/schema/specialAbility/Sermon.schema.json +7 -1
  396. package/schema/specialAbility/SexSpecialAbility.schema.json +7 -1
  397. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +7 -1
  398. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +10 -4
  399. package/schema/specialAbility/VampiricGift.schema.json +7 -1
  400. package/schema/specialAbility/Vision.schema.json +7 -1
  401. package/schema/specialAbility/sub/Language.schema.json +2 -2
  402. package/schema/specialAbility/sub/Script.schema.json +1 -1
  403. package/schema/specialAbility/sub/TradeSecret.schema.json +4 -1
  404. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +18 -2
  405. package/schema/traditionArtifacts/AttireEnchantment.schema.json +18 -2
  406. package/schema/traditionArtifacts/BowlEnchantment.schema.json +18 -2
  407. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +18 -2
  408. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +18 -2
  409. package/schema/traditionArtifacts/DaggerRitual.schema.json +18 -2
  410. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +18 -2
  411. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +18 -2
  412. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +18 -2
  413. package/schema/traditionArtifacts/OrbEnchantment.schema.json +18 -2
  414. package/schema/traditionArtifacts/RingEnchantment.schema.json +18 -2
  415. package/schema/traditionArtifacts/SickleRitual.schema.json +18 -2
  416. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +18 -2
  417. package/schema/traditionArtifacts/StaffEnchantment.schema.json +18 -2
  418. package/schema/traditionArtifacts/ToyEnchantment.schema.json +18 -2
  419. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +18 -2
  420. package/schema/traditionArtifacts/WandEnchantment.schema.json +18 -2
  421. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +18 -2
  422. package/schema/traditionArtifacts/sub/AnimalShape.schema.json +1 -1
  423. package/schema/traditionArtifacts/sub/AnimalShapePath.schema.json +1 -1
  424. package/schema/traditionArtifacts/sub/AnimalShapeSize.schema.json +4 -4
  425. package/schema/traditionArtifacts/sub/Brew.schema.json +1 -1
@@ -2,9 +2,12 @@
2
2
  * General type specifications used by multiple activatable entries.
3
3
  * @title Activatable
4
4
  */
5
- import { Duration } from "./_ActivatableSkill";
6
- import { Identifier } from "./_Identifier";
7
- import { Prerequisite } from "./_Prerequisite";
5
+ import { DisplayOption } from "./prerequisites/DisplayOption.js";
6
+ import { Errata } from "./source/_Erratum.js";
7
+ import { PublicationRefs } from "./source/_PublicationRef.js";
8
+ import { Duration } from "./_ActivatableSkill.js";
9
+ import { ActivatableIdentifier, AdvancedSpecialAbilityRestrictedOptionIdentifier, CombatRelatedSpecialAbilityIdentifier, CombatTechniqueIdentifier, MagicalTraditionIdentifier, PatronIdentifier, VolumePointsOptionReferenceIdentifier } from "./_Identifier.js";
10
+ import { GeneralPrerequisites } from "./_Prerequisite.js";
8
11
  /**
9
12
  * The activatable entry's identifier. An unique, increasing integer.
10
13
  * @integer
@@ -43,9 +46,573 @@ export declare type Levels = number;
43
46
  */
44
47
  export declare type Maximum = number;
45
48
  /**
49
+ * Definitions for possible options for the activatable entry. They can either
50
+ * be derived from entry categories or be defined explicitly. Both can happen as
51
+ * well, but if there is an explicitly defined select option and a derived
52
+ * select option has the same identifier (which may only happen if skill or
53
+ * combat technique identifiers are used for explicit select options), the
54
+ * explicit definition overwrites the derived option.
46
55
  *
56
+ * Note that this is only a full definition of options for simple logic that can
57
+ * be made explicit using the more detailed configuration for both derived
58
+ * categories and explicit options. There are quite a few entries whose option
59
+ * logic cannot be fully represented here, so that it needs to be implemented
60
+ * manually.
61
+ * @minProperties 1
47
62
  */
48
- export declare type Options = "";
63
+ export declare type SelectOptions = {
64
+ /**
65
+ * A list of categories with optional further configuration. All available
66
+ * entries from the specified categories will be included as separate select
67
+ * options. You can also specify a set of groups that should only be
68
+ * included. Groups not mentioned will be excluded then.
69
+ * @minItems 1
70
+ */
71
+ derived?: CategoryOption[];
72
+ /**
73
+ * A list of explicit select options. If the identifier has a specific type,
74
+ * its entry is the base of this select option, where values defined here
75
+ * override values from the base. Define the `src` property if the options
76
+ * are not derived from the rules text of the advantage/disadvantage/special
77
+ * ability but instead are listed in a separate block and/or on a separate
78
+ * page.
79
+ * @minItems 1
80
+ */
81
+ explicit?: ExplicitOption[];
82
+ };
83
+ declare type CategoryOption = {
84
+ tag: "Blessings";
85
+ } | {
86
+ tag: "Cantrips";
87
+ } | {
88
+ tag: "TradeSecrets";
89
+ } | {
90
+ tag: "Scripts";
91
+ } | {
92
+ tag: "AnimalShapes";
93
+ } | {
94
+ tag: "ArcaneBardTraditions";
95
+ } | {
96
+ tag: "ArcaneDancerTraditions";
97
+ } | {
98
+ tag: "SexPractices";
99
+ } | {
100
+ tag: "Races";
101
+ } | {
102
+ tag: "Cultures";
103
+ } | {
104
+ tag: "BlessedTraditions";
105
+ /**
106
+ * Should the principles (code) of the tradition be required to select the
107
+ * respective tradition?
108
+ */
109
+ require_principles?: true;
110
+ } | {
111
+ tag: "Elements";
112
+ /**
113
+ * Only include entries with the listed identifiers.
114
+ * @minItems 1
115
+ * @uniqueItems
116
+ */
117
+ specific?: {
118
+ /**
119
+ * The element's identifier.
120
+ * @integer
121
+ * @minimum 1
122
+ * @maximum 6
123
+ */
124
+ id: number;
125
+ }[];
126
+ } | {
127
+ tag: "Properties";
128
+ /**
129
+ * Does each property require it's corresponding property knowledge?
130
+ */
131
+ require_knowledge?: true;
132
+ /**
133
+ * Require a minimum number of spellworks of the respective property to be
134
+ * on a minimum skill rating.
135
+ */
136
+ require_minimum_spellworks_on?: {
137
+ /**
138
+ * The minimum number of spellworks that need to be on the defined minimum
139
+ * skill rating.
140
+ * @integer
141
+ * @minimum 1
142
+ */
143
+ number: number;
144
+ /**
145
+ * The minimum skill rating the defined minimum number of spellworks need
146
+ * to be on.
147
+ * @integer
148
+ * @minimum 1
149
+ */
150
+ value: number;
151
+ };
152
+ } | {
153
+ tag: "Aspects";
154
+ /**
155
+ * Does each aspect require it's corresponding aspect knowledge?
156
+ */
157
+ require_knowledge?: true;
158
+ /**
159
+ * The generated name should be the *Master of (Aspect)* suffix for this
160
+ * aspect instead of the aspect's name. If an aspect does not provide a
161
+ * suffix (such as the General aspect), it is automatically excluded from
162
+ * the list.
163
+ */
164
+ use_master_of_suffix_as_name?: true;
165
+ /**
166
+ * Require a minimum number of liturgies of the respective aspect to be on a
167
+ * minimum skill rating.
168
+ */
169
+ require_minimum_liturgies_on?: {
170
+ /**
171
+ * The minimum number of liturgies that need to be on the defined minimum
172
+ * skill rating.
173
+ * @integer
174
+ * @minimum 1
175
+ */
176
+ number: number;
177
+ /**
178
+ * The minimum skill rating the defined minimum number of liturgies need
179
+ * to be on.
180
+ * @integer
181
+ * @minimum 1
182
+ */
183
+ value: number;
184
+ };
185
+ } | {
186
+ tag: "Diseases";
187
+ /**
188
+ * Only convert half the disease level into the AP value.
189
+ */
190
+ use_half_level_as_ap_value?: true;
191
+ } | {
192
+ tag: "Poisons";
193
+ /**
194
+ * Only convert half the poison level into the AP value.
195
+ */
196
+ use_half_level_as_ap_value?: true;
197
+ } | {
198
+ tag: "Languages";
199
+ /**
200
+ * Generate prerequisites for each entry of the category.
201
+ * @minItems 1
202
+ */
203
+ prerequisites?: OptionOptionPrerequisite[];
204
+ } | {
205
+ tag: "Skills";
206
+ /**
207
+ * Only include entries of the specified groups.
208
+ * @minItems 1
209
+ */
210
+ groups?: {
211
+ /**
212
+ * The skill group's identifier.
213
+ * @integer
214
+ * @minimum 1
215
+ * @maximum 5
216
+ */
217
+ id: number;
218
+ }[];
219
+ /**
220
+ * Only include (`Intersection`) or exclude (`Difference`) specific skills.
221
+ */
222
+ specific?: {
223
+ operation: {
224
+ tag: "Intersection";
225
+ } | {
226
+ tag: "Difference";
227
+ };
228
+ /**
229
+ * The list of specific skills.
230
+ * @minItems 1
231
+ * @uniqueItems
232
+ */
233
+ list: {
234
+ /**
235
+ * The skill's identifier.
236
+ * @integer
237
+ * @minimum 1
238
+ * @maximum 59
239
+ */
240
+ id: number;
241
+ }[];
242
+ };
243
+ /**
244
+ * Registers new applications, which get enabled once this entry is
245
+ * activated with its respective select option. It specifies an entry-unique
246
+ * identifier, the skill it belongs to is derived from the select option
247
+ * automatically. A translation can be left out if its name equals the name
248
+ * of the origin entry.
249
+ * @minItems 1
250
+ */
251
+ skill_applications?: {
252
+ /**
253
+ * The application's identifier. An entry-unique, increasing integer.
254
+ * @integer
255
+ * @minimum 1
256
+ */
257
+ id: number;
258
+ /**
259
+ * All translations for the entry, identified by IETF language tag (BCP47).
260
+ * @minProperties 1
261
+ */
262
+ translations?: {
263
+ /**
264
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
265
+ */
266
+ [localeId: string]: {
267
+ /**
268
+ * The name of the application if different from the activatable entry's
269
+ * name.
270
+ * @minLength 1
271
+ */
272
+ name: string;
273
+ };
274
+ };
275
+ }[];
276
+ /**
277
+ * Registers uses, which get enabled once this entry is activated with its
278
+ * respective select option. It specifies an entry-unique identifier, the
279
+ * skill it belongs to is derived from the select option automatically. A
280
+ * translation can be left out if its name equals the name of the origin
281
+ * entry.
282
+ * @minItems 1
283
+ */
284
+ skill_uses?: {
285
+ /**
286
+ * The use's identifier. An entry-unique, increasing integer.
287
+ * @integer
288
+ * @minimum 1
289
+ */
290
+ id: number;
291
+ /**
292
+ * All translations for the entry, identified by IETF language tag (BCP47).
293
+ * @minProperties 1
294
+ */
295
+ translations?: {
296
+ /**
297
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
298
+ */
299
+ [localeId: string]: {
300
+ /**
301
+ * The name of the use if different from the activatable entry's name.
302
+ * @minLength 1
303
+ */
304
+ name: string;
305
+ };
306
+ };
307
+ }[];
308
+ /**
309
+ * Generate prerequisites for each entry of the category.
310
+ * @minItems 1
311
+ */
312
+ prerequisites?: (OptionSkillSelfPrerequisite | OptionOptionPrerequisite)[];
313
+ /**
314
+ * Generate AP values for each entry.
315
+ */
316
+ ap_value?: OptionSkillDeriveAdventurePointsValue;
317
+ } | {
318
+ tag: NonSkillSkillCategory;
319
+ /**
320
+ * Only include (`Intersection`) or exclude (`Difference`) specific entries.
321
+ */
322
+ specific?: {
323
+ operation: {
324
+ tag: "Intersection";
325
+ } | {
326
+ tag: "Difference";
327
+ };
328
+ /**
329
+ * The list of specific entries.
330
+ * @minItems 1
331
+ * @uniqueItems
332
+ */
333
+ list: {
334
+ /**
335
+ * The entry's identifier.
336
+ * @integer
337
+ * @minimum 1
338
+ * @maximum 59
339
+ */
340
+ id: number;
341
+ }[];
342
+ };
343
+ /**
344
+ * Generate prerequisites for each entry of the category.
345
+ * @minItems 1
346
+ */
347
+ prerequisites?: (OptionSkillSelfPrerequisite | OptionOptionPrerequisite)[];
348
+ /**
349
+ * Generate AP values for each entry.
350
+ */
351
+ ap_value?: OptionSkillDeriveAdventurePointsValue;
352
+ };
353
+ declare enum NonSkillSkillCategory {
354
+ CloseCombatTechniques = "CloseCombatTechniques",
355
+ RangedCombatTechniques = "RangedCombatTechniques",
356
+ LiturgicalChants = "LiturgicalChants",
357
+ Ceremonies = "Ceremonies",
358
+ Spells = "Spells",
359
+ Rituals = "Rituals"
360
+ }
361
+ declare type OptionSkillSelfPrerequisite = {
362
+ tag: "Self";
363
+ /**
364
+ * The entry requires itself on a certain Skill Rating.
365
+ * @integer
366
+ * @minimum 1
367
+ */
368
+ value: number;
369
+ };
370
+ /**
371
+ * The entry requires or prohibits itself as a select option of another entry.
372
+ */
373
+ declare type OptionOptionPrerequisite = {
374
+ tag: "SelectOption";
375
+ /**
376
+ * The target entry's identifier.
377
+ */
378
+ id: ActivatableIdentifier;
379
+ /**
380
+ * Is the select option required (`true`) or prohibited (`false`)?
381
+ */
382
+ active: boolean;
383
+ /**
384
+ * The required level, if any.
385
+ * @integer
386
+ * @minimum 2
387
+ */
388
+ level?: number;
389
+ };
390
+ /**
391
+ * Generate AP values for each entry.
392
+ */
393
+ declare type OptionSkillDeriveAdventurePointsValue = {
394
+ tag: "DerivedFromImprovementCost";
395
+ /**
396
+ * This number is multiplied with the improvement cost of the entry
397
+ * (A = 1 to D = 4).
398
+ * @integer
399
+ * @minimum 2
400
+ */
401
+ multiplier?: number;
402
+ } | {
403
+ tag: "Fixed";
404
+ /**
405
+ * A mapping of skill identifiers to their specific AP values.
406
+ */
407
+ map: {
408
+ /**
409
+ * The skill's identifier.
410
+ * @integer
411
+ * @minimum 1
412
+ */
413
+ id: number;
414
+ /**
415
+ * The AP value for the specified entry.
416
+ * @integer
417
+ * @minimum 1
418
+ */
419
+ ap_value: number;
420
+ }[];
421
+ /**
422
+ * The default value of an entry. Used as a fallback if no value is
423
+ * found in `list`.
424
+ * @integer
425
+ * @minimum 1
426
+ */
427
+ default: number;
428
+ };
429
+ declare type ExplicitOption = {
430
+ tag: "General";
431
+ /**
432
+ * The option's identifier. An unique, increasing integer.
433
+ * @integer
434
+ * @minimum 1
435
+ */
436
+ id: number;
437
+ /**
438
+ * Sometimes, professions use specific text selections that are not
439
+ * contained in described lists. This ensures you can use them for
440
+ * professions only. They are not going to be displayed as options to the
441
+ * user.
442
+ */
443
+ profession_only?: true;
444
+ /**
445
+ * Registers new applications, which get enabled once this entry is
446
+ * activated with its respective select option. It specifies an entry-unique
447
+ * identifier and the skill it belongs to. A translation can be left out if
448
+ * its name equals the name of the origin select option.
449
+ */
450
+ skill_applications?: SkillApplications;
451
+ /**
452
+ * Registers uses, which get enabled once this entry is activated with its
453
+ * respective select option. It specifies an entry-unique identifier and the
454
+ * skill it belongs to. A translation can be left out if its name equals the
455
+ * name of the origin select option.
456
+ */
457
+ skill_uses?: SkillUses;
458
+ prerequisites?: GeneralPrerequisites;
459
+ /**
460
+ * Specific AP cost for the select option.
461
+ * @integer
462
+ * @minimum 1
463
+ */
464
+ ap_value?: number;
465
+ src?: PublicationRefs;
466
+ /**
467
+ * All translations for the entry, identified by IETF language tag (BCP47).
468
+ * @minProperties 1
469
+ */
470
+ translations: {
471
+ /**
472
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
473
+ */
474
+ [localeId: string]: {
475
+ /**
476
+ * The name of the select option.
477
+ * @minLength 1
478
+ */
479
+ name: string;
480
+ /**
481
+ * The name of the select option when displayed in a generated
482
+ * profession text.
483
+ * @minLength 1
484
+ */
485
+ name_in_profession?: string;
486
+ /**
487
+ * The description of the select option. Useful for Bad Habits, Trade
488
+ * Secrets and other entries where a description is available.
489
+ * @markdown
490
+ * @minLength 1
491
+ */
492
+ description?: string;
493
+ errata?: Errata;
494
+ };
495
+ };
496
+ } | {
497
+ tag: "Skill";
498
+ /**
499
+ * The skill's identifier. An unique, increasing integer.
500
+ * @integer
501
+ * @minimum 1
502
+ */
503
+ id: number;
504
+ /**
505
+ * Registers new applications, which get enabled once this entry is
506
+ * activated with its respective select option. It specifies an entry-unique
507
+ * identifier and the skill it belongs to. A translation can be left out if
508
+ * its name equals the name of the origin select option.
509
+ * @minItems 1
510
+ */
511
+ skill_applications?: {
512
+ /**
513
+ * The application's identifier. An entry-unique, increasing integer.
514
+ * @integer
515
+ * @minimum 1
516
+ */
517
+ id: number;
518
+ /**
519
+ * All translations for the entry, identified by IETF language tag (BCP47).
520
+ * @minProperties 1
521
+ */
522
+ translations?: {
523
+ /**
524
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
525
+ */
526
+ [localeId: string]: {
527
+ /**
528
+ * The name of the application if different from the activatable entry's
529
+ * name.
530
+ * @minLength 1
531
+ */
532
+ name: string;
533
+ };
534
+ };
535
+ }[];
536
+ /**
537
+ * Registers uses, which get enabled once this entry is activated with its
538
+ * respective select option. It specifies an entry-unique identifier and the
539
+ * skill it belongs to. A translation can be left out if its name equals the
540
+ * name of the origin select option.
541
+ * @minItems 1
542
+ */
543
+ skill_uses?: {
544
+ /**
545
+ * The use's identifier. An entry-unique, increasing integer.
546
+ * @integer
547
+ * @minimum 1
548
+ */
549
+ id: number;
550
+ /**
551
+ * All translations for the entry, identified by IETF language tag (BCP47).
552
+ * @minProperties 1
553
+ */
554
+ translations?: {
555
+ /**
556
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
557
+ */
558
+ [localeId: string]: {
559
+ /**
560
+ * The name of the use if different from the activatable entry's name.
561
+ * @minLength 1
562
+ */
563
+ name: string;
564
+ };
565
+ };
566
+ }[];
567
+ prerequisites?: GeneralPrerequisites;
568
+ /**
569
+ * Specific AP cost for the select option.
570
+ * @integer
571
+ * @minimum 1
572
+ */
573
+ ap_value?: number;
574
+ src?: PublicationRefs;
575
+ /**
576
+ * All translations for the entry, identified by IETF language tag (BCP47).
577
+ * @minProperties 1
578
+ */
579
+ translations?: {
580
+ /**
581
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
582
+ * @minProperties 1
583
+ */
584
+ [localeId: string]: {
585
+ errata?: Errata;
586
+ };
587
+ };
588
+ } | {
589
+ tag: "CombatTechnique";
590
+ /**
591
+ * The combat technique's identifier.
592
+ */
593
+ id: CombatTechniqueIdentifier;
594
+ prerequisites?: GeneralPrerequisites;
595
+ /**
596
+ * Specific AP cost for the select option.
597
+ * @integer
598
+ * @minimum 1
599
+ */
600
+ ap_value?: number;
601
+ src?: PublicationRefs;
602
+ /**
603
+ * All translations for the entry, identified by IETF language tag (BCP47).
604
+ * @minProperties 1
605
+ */
606
+ translations?: {
607
+ /**
608
+ * @patternProperties ^[a-z]{2}-[A-Z]{2}$
609
+ * @minProperties 1
610
+ */
611
+ [localeId: string]: {
612
+ errata?: Errata;
613
+ };
614
+ };
615
+ };
49
616
  /**
50
617
  * The rule text.
51
618
  * @markdown
@@ -284,7 +851,7 @@ export declare type Penalty = {
284
851
  * The identifier of the combat-related special ability of which the level
285
852
  * defines the penalty instead.
286
853
  */
287
- external_id?: Identifier.Group.CombatRelatedSpecialAbility;
854
+ external_id?: CombatRelatedSpecialAbilityIdentifier;
288
855
  } | {
289
856
  tag: "ByAttack";
290
857
  /**
@@ -737,7 +1304,7 @@ export declare type VolumeMapOption = {
737
1304
  /**
738
1305
  * The option's identifier.
739
1306
  */
740
- id: Identifier.Group.VolumePointsOptionReference;
1307
+ id: VolumePointsOptionReferenceIdentifier;
741
1308
  }[];
742
1309
  /**
743
1310
  * All translations for the entry, identified by IETF language tag (BCP47).
@@ -920,7 +1487,7 @@ export declare type AdvancedSpecialAbility = {
920
1487
  * advanced special ability; others are disallowed.
921
1488
  * @minItems 1
922
1489
  */
923
- option: Identifier.Group.AdvancedSpecialAbilityRestrictedOption[];
1490
+ option: AdvancedSpecialAbilityRestrictedOptionIdentifier[];
924
1491
  } | {
925
1492
  tag: "OneOf";
926
1493
  /**
@@ -944,8 +1511,8 @@ export declare type AdvancedSpecialAbility = {
944
1511
  * advanced special ability; others are disallowed.
945
1512
  * @minItems 1
946
1513
  */
947
- option: Identifier.Group.AdvancedSpecialAbilityRestrictedOption[];
948
- display_option?: Prerequisite.Single.DisplayOption.T;
1514
+ option: AdvancedSpecialAbilityRestrictedOptionIdentifier[];
1515
+ display_option?: DisplayOption;
949
1516
  } | {
950
1517
  tag: "DeriveFromExternalOption";
951
1518
  /**
@@ -972,7 +1539,7 @@ export declare type AdvancedSpecialAbility = {
972
1539
  id: number;
973
1540
  };
974
1541
  }[];
975
- display_option?: Prerequisite.Single.DisplayOption.T;
1542
+ display_option?: DisplayOption;
976
1543
  /**
977
1544
  * Do have to choose on when buying the special ability? Otherwise the
978
1545
  * decision can be made later.
@@ -983,10 +1550,10 @@ export declare type AdvancedSpecialAbility = {
983
1550
  * advanced special ability; others are disallowed.
984
1551
  * @minItems 1
985
1552
  */
986
- option: Identifier.Group.AdvancedSpecialAbilityRestrictedOption[];
1553
+ option: AdvancedSpecialAbilityRestrictedOptionIdentifier[];
987
1554
  };
988
- export declare type AdvancedSpecialAbilityDerivedExternalEntryId = Identifier.Tagged<"MagicalTradition">;
989
- export declare type AdvancedSpecialAbilityDerivedExternalEntryOptionId = Identifier.Tagged<"Patron">;
1555
+ export declare type AdvancedSpecialAbilityDerivedExternalEntryId = MagicalTraditionIdentifier;
1556
+ export declare type AdvancedSpecialAbilityDerivedExternalEntryOptionId = PatronIdentifier;
990
1557
  /**
991
1558
  * The Advanced Special Abilities for the respective Style Special Ability.
992
1559
  * Sometimes, only a specific select option or a set of select options of an
@@ -1027,7 +1594,7 @@ export declare type ApplicableCombatTechniques = {
1027
1594
  * @minItems 1
1028
1595
  */
1029
1596
  list: {
1030
- id: Identifier.Group.CombatTechnique;
1597
+ id: CombatTechniqueIdentifier;
1031
1598
  /**
1032
1599
  * @minItems 1
1033
1600
  */
@@ -1056,7 +1623,7 @@ export declare type ApplicableAllCombatTechniquesRestriction = {
1056
1623
  * @minItems 1
1057
1624
  * @uniqueItems
1058
1625
  */
1059
- list: Identifier.Group.CombatTechnique[];
1626
+ list: CombatTechniqueIdentifier[];
1060
1627
  };
1061
1628
  export declare type ApplicableCloseCombatTechniquesRestriction = {
1062
1629
  tag: "Improvised";
@@ -1206,3 +1773,4 @@ export declare type AdventurePointsValue = {
1206
1773
  * @minimum 0
1207
1774
  */
1208
1775
  export declare type AdventurePointsSingleValue = number;
1776
+ export {};