optolith-database-schema 0.9.0 → 0.10.1

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 (257) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/lib/config.d.ts +1 -1
  3. package/lib/main.d.ts +3 -3
  4. package/lib/main.js +8 -3
  5. package/lib/types/Advantage.d.ts +15 -4
  6. package/lib/types/AnimalDisease.d.ts +1 -1
  7. package/lib/types/AnimalType.d.ts +2 -2
  8. package/lib/types/ArcaneBardTradition.d.ts +1 -1
  9. package/lib/types/ArcaneDancerTradition.d.ts +1 -1
  10. package/lib/types/Aspect.d.ts +2 -2
  11. package/lib/types/Attribute.d.ts +2 -2
  12. package/lib/types/Blessing.d.ts +8 -8
  13. package/lib/types/Cantrip.d.ts +14 -14
  14. package/lib/types/Ceremony.d.ts +2 -2
  15. package/lib/types/CombatTechnique_Close.d.ts +3 -3
  16. package/lib/types/CombatTechnique_Ranged.d.ts +3 -3
  17. package/lib/types/Condition.d.ts +2 -2
  18. package/lib/types/Continent.d.ts +2 -2
  19. package/lib/types/Culture.d.ts +21 -21
  20. package/lib/types/DerivedCharacteristic.d.ts +3 -3
  21. package/lib/types/Disadvantage.d.ts +14 -4
  22. package/lib/types/Disease.d.ts +1 -1
  23. package/lib/types/Element.d.ts +2 -2
  24. package/lib/types/ExperienceLevel.d.ts +2 -2
  25. package/lib/types/EyeColor.d.ts +2 -2
  26. package/lib/types/FamiliarsTrick.d.ts +22 -22
  27. package/lib/types/HairColor.d.ts +2 -2
  28. package/lib/types/Kirchenpraegung.d.ts +1 -1
  29. package/lib/types/Lessons_Curriculum.d.ts +18 -18
  30. package/lib/types/Lessons_Guideline.d.ts +2 -2
  31. package/lib/types/LiturgicalChant.d.ts +2 -2
  32. package/lib/types/Locale.d.ts +2 -2
  33. package/lib/types/MetaCondition.d.ts +2 -2
  34. package/lib/types/PactCategory.d.ts +6 -6
  35. package/lib/types/Patron.d.ts +13 -13
  36. package/lib/types/PatronCategory.d.ts +2 -2
  37. package/lib/types/PersonalityTrait.d.ts +3 -3
  38. package/lib/types/Profession.d.ts +53 -43
  39. package/lib/types/Property.d.ts +2 -2
  40. package/lib/types/Race.d.ts +14 -14
  41. package/lib/types/Region.d.ts +2 -2
  42. package/lib/types/Ritual.d.ts +2 -2
  43. package/lib/types/Service.d.ts +2 -2
  44. package/lib/types/SexPractice.d.ts +2 -2
  45. package/lib/types/Skill.d.ts +6 -6
  46. package/lib/types/SkillGroup.d.ts +2 -2
  47. package/lib/types/SkillModificationLevel.d.ts +6 -6
  48. package/lib/types/SocialStatus.d.ts +2 -2
  49. package/lib/types/Spell.d.ts +2 -2
  50. package/lib/types/State.d.ts +2 -2
  51. package/lib/types/Talisman.d.ts +9 -9
  52. package/lib/types/TargetCategory.d.ts +3 -3
  53. package/lib/types/UI.d.ts +1 -1
  54. package/lib/types/_Activatable.d.ts +211 -103
  55. package/lib/types/_Activatable.js +4 -35
  56. package/lib/types/_ActivatableSelectOptionCategory.d.ts +55 -25
  57. package/lib/types/_ActivatableSkill.d.ts +8 -8
  58. package/lib/types/_ActivatableSkillCastingTime.d.ts +8 -8
  59. package/lib/types/_ActivatableSkillCheckResultBased.d.ts +2 -2
  60. package/lib/types/_ActivatableSkillCost.d.ts +20 -20
  61. package/lib/types/_ActivatableSkillDuration.d.ts +13 -13
  62. package/lib/types/_ActivatableSkillEffect.d.ts +4 -4
  63. package/lib/types/_ActivatableSkillRange.d.ts +6 -6
  64. package/lib/types/_ActivatableSkillTargetCategory.d.ts +4 -4
  65. package/lib/types/_AlternativeNames.d.ts +1 -1
  66. package/lib/types/_ArcaneTradition.d.ts +2 -2
  67. package/lib/types/_Blessed.d.ts +2 -2
  68. package/lib/types/_CommonnessRatedAdvantageDisadvantage.d.ts +1 -1
  69. package/lib/types/_Dice.d.ts +1 -1
  70. package/lib/types/_DiseasePoison.d.ts +4 -4
  71. package/lib/types/_Enhancements.d.ts +3 -3
  72. package/lib/types/_I18n.d.ts +1 -1
  73. package/lib/types/_Identifier.d.ts +132 -132
  74. package/lib/types/_IdentifierGroup.d.ts +20 -20
  75. package/lib/types/_Influence.d.ts +3 -3
  76. package/lib/types/_LocaleMap.d.ts +1 -1
  77. package/lib/types/_NonEmptyString.d.ts +2 -2
  78. package/lib/types/_Prerequisite.d.ts +21 -21
  79. package/lib/types/_ResponsiveText.d.ts +3 -3
  80. package/lib/types/_SimpleReferences.d.ts +44 -44
  81. package/lib/types/_SkillCheck.d.ts +1 -1
  82. package/lib/types/_Spellwork.d.ts +2 -2
  83. package/lib/types/equipment/EquipmentPackage.d.ts +3 -3
  84. package/lib/types/equipment/item/Alchemicum.d.ts +1 -1
  85. package/lib/types/equipment/item/Ammunition.d.ts +2 -2
  86. package/lib/types/equipment/item/Animal.d.ts +1 -1
  87. package/lib/types/equipment/item/AnimalCare.d.ts +5 -5
  88. package/lib/types/equipment/item/Armor.d.ts +11 -11
  89. package/lib/types/equipment/item/BandageOrRemedy.d.ts +1 -1
  90. package/lib/types/equipment/item/Book.d.ts +2 -2
  91. package/lib/types/equipment/item/CeremonialItem.d.ts +1 -1
  92. package/lib/types/equipment/item/Clothes.d.ts +1 -1
  93. package/lib/types/equipment/item/Container.d.ts +1 -1
  94. package/lib/types/equipment/item/Elixir.d.ts +2 -2
  95. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +1 -1
  96. package/lib/types/equipment/item/GemOrPreciousStone.d.ts +2 -2
  97. package/lib/types/equipment/item/IlluminationLightSource.d.ts +3 -3
  98. package/lib/types/equipment/item/IlluminationRefillsOrSupplies.d.ts +1 -1
  99. package/lib/types/equipment/item/Jewelry.d.ts +3 -3
  100. package/lib/types/equipment/item/Liebesspielzeug.d.ts +1 -1
  101. package/lib/types/equipment/item/LuxuryGood.d.ts +1 -1
  102. package/lib/types/equipment/item/MagicalArtifact.d.ts +2 -2
  103. package/lib/types/equipment/item/MusicalInstrument.d.ts +1 -1
  104. package/lib/types/equipment/item/OrienteeringAid.d.ts +1 -1
  105. package/lib/types/equipment/item/Poison.d.ts +45 -25
  106. package/lib/types/equipment/item/Poison.js +1 -0
  107. package/lib/types/equipment/item/RopeOrChain.d.ts +1 -1
  108. package/lib/types/equipment/item/Stationary.d.ts +1 -1
  109. package/lib/types/equipment/item/ThievesTool.d.ts +1 -1
  110. package/lib/types/equipment/item/ToolOfTheTrade.d.ts +3 -3
  111. package/lib/types/equipment/item/TravelGearOrTool.d.ts +1 -1
  112. package/lib/types/equipment/item/Vehicle.d.ts +1 -1
  113. package/lib/types/equipment/item/Weapon.d.ts +12 -11
  114. package/lib/types/equipment/item/WeaponAccessory.d.ts +1 -1
  115. package/lib/types/equipment/item/_Herbary.d.ts +1 -1
  116. package/lib/types/equipment/item/_Item.d.ts +12 -12
  117. package/lib/types/equipment/item/_MeleeWeapon.d.ts +7 -7
  118. package/lib/types/equipment/item/_RangedWeapon.d.ts +6 -6
  119. package/lib/types/equipment/item/_Weapon.d.ts +5 -5
  120. package/lib/types/equipment/item/sub/ArmorType.d.ts +5 -5
  121. package/lib/types/equipment/item/sub/Reach.d.ts +2 -2
  122. package/lib/types/magicalActions/AnimistPower.d.ts +16 -16
  123. package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +2 -2
  124. package/lib/types/magicalActions/Curse.d.ts +10 -10
  125. package/lib/types/magicalActions/DominationRitual.d.ts +9 -9
  126. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +7 -7
  127. package/lib/types/magicalActions/GeodeRitual.d.ts +10 -10
  128. package/lib/types/magicalActions/JesterTrick.d.ts +9 -9
  129. package/lib/types/magicalActions/MagicalDance.d.ts +6 -6
  130. package/lib/types/magicalActions/MagicalMelody.d.ts +6 -6
  131. package/lib/types/magicalActions/MagicalRune.d.ts +22 -22
  132. package/lib/types/magicalActions/ZibiljaRitual.d.ts +3 -3
  133. package/lib/types/magicalActions/_MusicTradition.d.ts +3 -3
  134. package/lib/types/magicalActions/_SkillReference.d.ts +1 -1
  135. package/lib/types/prerequisites/ConditionalPrerequisites.d.ts +1 -1
  136. package/lib/types/prerequisites/DisplayOption.d.ts +16 -2
  137. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +38 -16
  138. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +1 -1
  139. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.d.ts +5 -0
  140. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.js +1 -0
  141. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +1 -1
  142. package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +1 -1
  143. package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +4 -4
  144. package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +1 -1
  145. package/lib/types/prerequisites/single/PactPrerequisite.d.ts +1 -1
  146. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +1 -1
  147. package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +1 -1
  148. package/lib/types/prerequisites/single/RacePrerequisite.d.ts +1 -1
  149. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.d.ts +67 -0
  150. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.js +6 -0
  151. package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +1 -56
  152. package/lib/types/prerequisites/single/RatedSumPrerequisite.d.ts +19 -0
  153. package/lib/types/prerequisites/single/RatedSumPrerequisite.js +1 -0
  154. package/lib/types/prerequisites/single/RulePrerequisite.d.ts +1 -1
  155. package/lib/types/prerequisites/single/SexPrerequisite.d.ts +1 -1
  156. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.d.ts +11 -0
  157. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.js +5 -0
  158. package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +1 -1
  159. package/lib/types/prerequisites/single/StatePrerequisite.d.ts +1 -1
  160. package/lib/types/prerequisites/single/TextPrerequisite.d.ts +31 -2
  161. package/lib/types/prerequisites/single/TextPrerequisite.js +5 -0
  162. package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +2 -2
  163. package/lib/types/rule/CoreRule.d.ts +11 -11
  164. package/lib/types/rule/FocusRule.d.ts +2 -2
  165. package/lib/types/rule/FocusRule_Subject.d.ts +2 -2
  166. package/lib/types/rule/OptionalRule.d.ts +2 -2
  167. package/lib/types/source/Publication.d.ts +2 -2
  168. package/lib/types/source/_Erratum.d.ts +2 -2
  169. package/lib/types/source/_PublicationRef.d.ts +13 -13
  170. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +13 -2
  171. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +2 -2
  172. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +2 -2
  173. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +2 -2
  174. package/lib/types/specialAbility/AncestorGlyph.d.ts +2 -2
  175. package/lib/types/specialAbility/BlessedTradition.d.ts +8 -8
  176. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +2 -2
  177. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +9 -4
  178. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +8 -4
  179. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +2 -2
  180. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +1 -1
  181. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +2 -2
  182. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +2 -2
  183. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +7 -2
  184. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +14 -4
  185. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +9 -4
  186. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +2 -2
  187. package/lib/types/specialAbility/LycantropicGift.d.ts +2 -2
  188. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +2 -2
  189. package/lib/types/specialAbility/MagicalSign.d.ts +2 -2
  190. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +13 -4
  191. package/lib/types/specialAbility/MagicalTradition.d.ts +3 -3
  192. package/lib/types/specialAbility/PactGift.d.ts +9 -9
  193. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +2 -2
  194. package/lib/types/specialAbility/Sermon.d.ts +2 -2
  195. package/lib/types/specialAbility/SexSpecialAbility.d.ts +2 -2
  196. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +7 -2
  197. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +2 -2
  198. package/lib/types/specialAbility/VampiricGift.d.ts +9 -4
  199. package/lib/types/specialAbility/Vision.d.ts +2 -2
  200. package/lib/types/specialAbility/_Tradition.d.ts +1 -1
  201. package/lib/types/specialAbility/sub/Language.d.ts +8 -8
  202. package/lib/types/specialAbility/sub/Script.d.ts +2 -2
  203. package/lib/types/specialAbility/sub/TradeSecret.d.ts +2 -2
  204. package/lib/types/specialAbility/sub/_LanguageScript.d.ts +1 -1
  205. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +4 -4
  206. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +4 -4
  207. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +4 -4
  208. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +5 -5
  209. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +4 -4
  210. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +8 -8
  211. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +4 -4
  212. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +4 -4
  213. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +4 -4
  214. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +4 -4
  215. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +4 -4
  216. package/lib/types/traditionArtifacts/SickleRitual.d.ts +4 -4
  217. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +9 -4
  218. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +14 -4
  219. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +4 -4
  220. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +4 -4
  221. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +4 -4
  222. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +4 -4
  223. package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +4 -4
  224. package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +2 -2
  225. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +2 -2
  226. package/lib/types/traditionArtifacts/sub/Brew.d.ts +2 -2
  227. package/lib/validation/schema.d.ts +5 -5
  228. package/lib/validation/schema.js +2 -2
  229. package/package.json +5 -5
  230. package/schema/Advantage.schema.json +11 -0
  231. package/schema/Disadvantage.schema.json +8 -0
  232. package/schema/Profession.schema.json +8 -0
  233. package/schema/Talisman.schema.json +2 -4
  234. package/schema/_Activatable.schema.json +166 -0
  235. package/schema/_ActivatableSelectOptionCategory.schema.json +141 -0
  236. package/schema/equipment/item/Poison.schema.json +55 -1
  237. package/schema/equipment/item/Weapon.schema.json +5 -1
  238. package/schema/equipment/item/sub/ArmorType.schema.json +1 -2
  239. package/schema/prerequisites/DisplayOption.schema.json +4 -0
  240. package/schema/prerequisites/PrerequisiteGroups.schema.json +98 -2
  241. package/schema/prerequisites/single/AncestorBloodPrerequisite.schema.json +14 -0
  242. package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +166 -0
  243. package/schema/prerequisites/single/RatedPrerequisite.schema.json +0 -125
  244. package/schema/prerequisites/single/RatedSumPrerequisite.schema.json +33 -0
  245. package/schema/prerequisites/single/SexualCharacteristicPrerequisite.schema.json +26 -0
  246. package/schema/prerequisites/single/TextPrerequisite.schema.json +14 -0
  247. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +8 -0
  248. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +4 -0
  249. package/schema/specialAbility/CombatSpecialAbility.schema.json +4 -0
  250. package/schema/specialAbility/FatePointSpecialAbility.schema.json +4 -0
  251. package/schema/specialAbility/GeneralSpecialAbility.schema.json +8 -0
  252. package/schema/specialAbility/KarmaSpecialAbility.schema.json +4 -0
  253. package/schema/specialAbility/MagicalSpecialAbility.schema.json +8 -0
  254. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +4 -0
  255. package/schema/specialAbility/VampiricGift.schema.json +4 -0
  256. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +4 -0
  257. package/schema/traditionArtifacts/StaffEnchantment.schema.json +8 -0
@@ -5,7 +5,7 @@ import { DisplayOption } from "../DisplayOption.js";
5
5
  * Requires a specific advantage, disadvantage or special ability.
6
6
  * @title Activatable Prerequisite
7
7
  */
8
- export declare type ActivatablePrerequisite = {
8
+ export type ActivatablePrerequisite = {
9
9
  /**
10
10
  * The activatable entry's identifier.
11
11
  */
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Requires that no other Ancestor Blood advantage is active.
3
+ * @title Ancestor Blood Prerequisite
4
+ */
5
+ export type AncestorBloodPrerequisite = {};
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a specific animist power to be on a minimum value.
5
5
  * @title Animist Power Prerequisite
6
6
  */
7
- export declare type AnimistPowerPrerequisite = {
7
+ export type AnimistPowerPrerequisite = {
8
8
  /**
9
9
  * The animist power's identifier.
10
10
  */
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a specific culture or one of a specific set of cultures.
5
5
  * @title Culture Prerequisite
6
6
  */
7
- export declare type CulturePrerequisite = {
7
+ export type CulturePrerequisite = {
8
8
  /**
9
9
  * The culture's identifier.
10
10
  */
@@ -6,7 +6,7 @@ import { DisplayOption } from "../DisplayOption.js";
6
6
  * skill they enhance.
7
7
  * @title External Enhancement Prerequisite
8
8
  */
9
- export declare type ExternalEnhancementPrerequisite = {
9
+ export type ExternalEnhancementPrerequisite = {
10
10
  /**
11
11
  * The required skill.
12
12
  */
@@ -17,13 +17,13 @@ export declare type ExternalEnhancementPrerequisite = {
17
17
  enhancement: EnhancementsReference;
18
18
  display_option?: DisplayOption;
19
19
  };
20
- export declare type SkillWithEnhancementsReference = {
20
+ export type SkillWithEnhancementsReference = {
21
21
  /**
22
22
  * The skill's identifier.
23
23
  */
24
24
  id: SkillWithEnhancementsIdentifier;
25
25
  };
26
- export declare type EnhancementsReference = {
26
+ export type EnhancementsReference = {
27
27
  /**
28
28
  * The enhancement's identifier.
29
29
  * @integer
@@ -36,4 +36,4 @@ export declare type EnhancementsReference = {
36
36
  * enhancement to require another enhancement from the same skill.
37
37
  * @title Internal Enhancement Prerequisite
38
38
  */
39
- export declare type InternalEnhancementPrerequisite = EnhancementsReference;
39
+ export type InternalEnhancementPrerequisite = EnhancementsReference;
@@ -3,7 +3,7 @@ import { DisplayOption } from "../DisplayOption.js";
3
3
  /**
4
4
  * @title Influence Prerequisite
5
5
  */
6
- export declare type InfluencePrerequisite = {
6
+ export type InfluencePrerequisite = {
7
7
  /**
8
8
  * The influence's identifier.
9
9
  */
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a specific pact.
5
5
  * @title Pact Prerequisite
6
6
  */
7
- export declare type PactPrerequisite = {
7
+ export type PactPrerequisite = {
8
8
  /**
9
9
  * The required pact category.
10
10
  */
@@ -2,7 +2,7 @@ import { DisplayOption } from "../DisplayOption.js";
2
2
  /**
3
3
  * @title Primary Attribute Prerequisite
4
4
  */
5
- export declare type PrimaryAttributePrerequisite = {
5
+ export type PrimaryAttributePrerequisite = {
6
6
  /**
7
7
  * Is the required primary attribute for spellcasters or blessed ones?
8
8
  */
@@ -2,7 +2,7 @@ import { DisplayOption } from "../DisplayOption.js";
2
2
  /**
3
3
  * @title Publication Prerequisite
4
4
  */
5
- export declare type PublicationPrerequisite = {
5
+ export type PublicationPrerequisite = {
6
6
  /**
7
7
  * @integer
8
8
  * @minimum 1
@@ -6,7 +6,7 @@ import { DisplayOption } from "../DisplayOption.js";
6
6
  * if the entry does not allow one of the races.
7
7
  * @title Race Prerequisite
8
8
  */
9
- export declare type RacePrerequisite = {
9
+ export type RacePrerequisite = {
10
10
  /**
11
11
  * The race's identifier.
12
12
  */
@@ -0,0 +1,67 @@
1
+ import { AspectReference, PropertyReference, SkillReference } from "../../_SimpleReferences.js";
2
+ import { DisplayOption } from "../DisplayOption.js";
3
+ /**
4
+ * @title Rated Minimum Number Prerequisite
5
+ */
6
+ export type RatedMinimumNumberPrerequisite = {
7
+ /**
8
+ * The minimum number of skills that need to be on the defined minimum skill
9
+ * rating.
10
+ * @integer
11
+ * @minimum 1
12
+ */
13
+ number: number;
14
+ /**
15
+ * The minimum skill rating the defined minimum number of skills need to be
16
+ * on.
17
+ * @integer
18
+ * @minimum 1
19
+ */
20
+ value: number;
21
+ /**
22
+ * The targets that contribute to satisfying the prerequisite.
23
+ */
24
+ targets: RatedMinimumNumberPrerequisiteTarget;
25
+ display_option?: DisplayOption;
26
+ };
27
+ export type RatedMinimumNumberPrerequisiteTarget = {
28
+ tag: "Skills";
29
+ skills: RatedMinimumNumberPrerequisiteSkillsTarget;
30
+ } | {
31
+ tag: "CombatTechniques";
32
+ combat_techniques: CombatTechniquesTarget;
33
+ } | {
34
+ tag: "Spellworks";
35
+ spellworks: PropertyReference;
36
+ } | {
37
+ tag: "Liturgies";
38
+ liturgies: AspectReference;
39
+ };
40
+ export type RatedMinimumNumberPrerequisiteSkillsTarget = {
41
+ /**
42
+ * The skills that are taken into account for satisfying the prerequisite.
43
+ * @minItems 2
44
+ * @uniqueItems
45
+ */
46
+ list: SkillReference[];
47
+ };
48
+ export type CombatTechniquesTarget = {
49
+ group: CombatTechniquesTargetGroup;
50
+ };
51
+ export declare enum CombatTechniquesTargetGroup {
52
+ All = "All",
53
+ Close = "Close",
54
+ Ranged = "Ranged"
55
+ }
56
+ export type RatedMinimumNumberPrerequisiteSpellworksTarget = {
57
+ /**
58
+ * The skills that are taken into account for satisfying the prerequisite.
59
+ */
60
+ property: PropertyReference;
61
+ };
62
+ export type RatedMinimumNumberPrerequisiteLiturgiesTarget = {
63
+ /**
64
+ * The skills that are taken into account for satisfying the prerequisite.
65
+ */
66
+ aspect: AspectReference;
67
+ };
@@ -0,0 +1,6 @@
1
+ export var CombatTechniquesTargetGroup;
2
+ (function (CombatTechniquesTargetGroup) {
3
+ CombatTechniquesTargetGroup["All"] = "All";
4
+ CombatTechniquesTargetGroup["Close"] = "Close";
5
+ CombatTechniquesTargetGroup["Ranged"] = "Ranged";
6
+ })(CombatTechniquesTargetGroup || (CombatTechniquesTargetGroup = {}));
@@ -1,10 +1,9 @@
1
1
  import { RatedIdentifier } from "../../_IdentifierGroup.js";
2
- import { AspectReference, PropertyReference, SkillReference } from "../../_SimpleReferences.js";
3
2
  import { DisplayOption } from "../DisplayOption.js";
4
3
  /**
5
4
  * @title Rated Prerequisite
6
5
  */
7
- export declare type RatedPrerequisite = {
6
+ export type RatedPrerequisite = {
8
7
  /**
9
8
  * The rated entry's identifier.
10
9
  */
@@ -17,57 +16,3 @@ export declare type RatedPrerequisite = {
17
16
  value: number;
18
17
  display_option?: DisplayOption;
19
18
  };
20
- /**
21
- * @title Rated Minimum Number Prerequisite
22
- */
23
- export declare type RatedMinimumNumberPrerequisite = {
24
- /**
25
- * The minimum number of skills that need to be on the defined minimum skill
26
- * rating.
27
- * @integer
28
- * @minimum 1
29
- */
30
- number: number;
31
- /**
32
- * The minimum skill rating the defined minimum number of skills need to be
33
- * on.
34
- * @integer
35
- * @minimum 1
36
- */
37
- value: number;
38
- /**
39
- * The targets that contribute to satisfying the prerequisite.
40
- */
41
- targets: RatedMinimumNumberPrerequisiteTarget;
42
- display_option?: DisplayOption;
43
- };
44
- export declare type RatedMinimumNumberPrerequisiteTarget = {
45
- tag: "Skills";
46
- skills: RatedMinimumNumberPrerequisiteSkillsTarget;
47
- } | {
48
- tag: "Spellworks";
49
- spellworks: PropertyReference;
50
- } | {
51
- tag: "Liturgies";
52
- liturgies: AspectReference;
53
- };
54
- export declare type RatedMinimumNumberPrerequisiteSkillsTarget = {
55
- /**
56
- * The skills that are taken into account for satisfying the prerequisite.
57
- * @minItems 2
58
- * @uniqueItems
59
- */
60
- list: SkillReference[];
61
- };
62
- export declare type RatedMinimumNumberPrerequisiteSpellworksTarget = {
63
- /**
64
- * The skills that are taken into account for satisfying the prerequisite.
65
- */
66
- property: PropertyReference;
67
- };
68
- export declare type RatedMinimumNumberPrerequisiteLiturgiesTarget = {
69
- /**
70
- * The skills that are taken into account for satisfying the prerequisite.
71
- */
72
- aspect: AspectReference;
73
- };
@@ -0,0 +1,19 @@
1
+ import { SkillIdentifier } from "../../_IdentifierGroup.js";
2
+ import { DisplayOption } from "../DisplayOption.js";
3
+ /**
4
+ * @title Rated Sum Prerequisite
5
+ */
6
+ export type RatedSumPrerequisite = {
7
+ /**
8
+ * The minimum required sum of the targets’ ratings.
9
+ * @integer
10
+ * @minimum 1
11
+ */
12
+ sum: number;
13
+ /**
14
+ * The targets that are included in calculating the sum.
15
+ * @minItems 2
16
+ */
17
+ targets: SkillIdentifier[];
18
+ display_option?: DisplayOption;
19
+ };
@@ -3,7 +3,7 @@ import { DisplayOption } from "../DisplayOption.js";
3
3
  /**
4
4
  * @title Rule Prerequisite
5
5
  */
6
- export declare type RulePrerequisite = {
6
+ export type RulePrerequisite = {
7
7
  id: ExtensionRuleIdentifier;
8
8
  display_option?: DisplayOption;
9
9
  };
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a specific sex.
5
5
  * @title Sex Prerequisite
6
6
  */
7
- export declare type SexPrerequisite = {
7
+ export type SexPrerequisite = {
8
8
  id: BinarySex;
9
9
  display_option?: DisplayOption;
10
10
  };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Requires a specific sexual characteristic.
3
+ * @title Sexual Characteristic Prerequisite
4
+ */
5
+ export type SexualCharacteristicPrerequisite = {
6
+ id: SexualCharacteristic;
7
+ };
8
+ export declare enum SexualCharacteristic {
9
+ Penis = "Penis",
10
+ Vagina = "Vagina"
11
+ }
@@ -0,0 +1,5 @@
1
+ export var SexualCharacteristic;
2
+ (function (SexualCharacteristic) {
3
+ SexualCharacteristic["Penis"] = "Penis";
4
+ SexualCharacteristic["Vagina"] = "Vagina";
5
+ })(SexualCharacteristic || (SexualCharacteristic = {}));
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a minimum social status.
5
5
  * @title Social Status Prerequisite
6
6
  */
7
- export declare type SocialStatusPrerequisite = {
7
+ export type SocialStatusPrerequisite = {
8
8
  /**
9
9
  * The minimum social status' identifier.
10
10
  */
@@ -4,7 +4,7 @@ import { DisplayOption } from "../DisplayOption.js";
4
4
  * Requires a specific state or one of a specific set of states.
5
5
  * @title State Prerequisite
6
6
  */
7
- export declare type StatePrerequisite = {
7
+ export type StatePrerequisite = {
8
8
  id: StateIdentifier;
9
9
  display_option?: DisplayOption;
10
10
  };
@@ -7,13 +7,38 @@ import { NonEmptyMarkdown } from "../../_NonEmptyString.js";
7
7
  * of the prerequisite string from the sources.
8
8
  * @title Text Prerequisite
9
9
  */
10
- export declare type TextPrerequisite = {
10
+ export type TextPrerequisite = {
11
11
  /**
12
12
  * The method how the prerequisite should be verified. Either is passes all
13
13
  * verification text or it denies all verification tests. The latter results
14
14
  * in the associated entry to never be available for purchase.
15
15
  */
16
16
  verification: TextVerificationRule;
17
+ /**
18
+ * If the text is a sentence or sentence-like fragment, this property ensures
19
+ * it is integrated into the prerequisite string correctly.
20
+ *
21
+ * A standalone sentence is connected to the previous prerequisite string with
22
+ * a period and a period is also added at the end of the sentence
23
+ * automatically, if it is not present. A connected sentence is connected to
24
+ * the previous prerequisite string with a semicolon and a period is not added
25
+ * to the end of the sentence. In this case, if there are prerequisites after
26
+ * this one, they will be connected using a semicolon again, unless a
27
+ * different punctuation mark is present at the end of the given text.
28
+ */
29
+ sentence_type?: SentenceType;
30
+ /**
31
+ * If the text does not represent an actual prerequisite but a prerequisite
32
+ * for the use of certain aspects or the entry the prerequisite is associated
33
+ * with, or something like that, this property is set to `true`.
34
+ *
35
+ * If all prerequisites of an entry are marked as meta, the entry is
36
+ * considered to have no prerequisites and thus the string `none` must be
37
+ * rendered before the list of meta prerequisites.
38
+ *
39
+ * This is the only use case for this property.
40
+ */
41
+ is_meta?: true;
17
42
  /**
18
43
  * All translations for the entry, identified by IETF language tag (BCP47).
19
44
  */
@@ -23,4 +48,8 @@ export declare enum TextVerificationRule {
23
48
  Pass = "Pass",
24
49
  Deny = "Deny"
25
50
  }
26
- export declare type TextPrerequisiteTranslation = NonEmptyMarkdown;
51
+ export declare enum SentenceType {
52
+ Standalone = "Standalone",
53
+ Connected = "Connected"
54
+ }
55
+ export type TextPrerequisiteTranslation = NonEmptyMarkdown;
@@ -3,3 +3,8 @@ export var TextVerificationRule;
3
3
  TextVerificationRule["Pass"] = "Pass";
4
4
  TextVerificationRule["Deny"] = "Deny";
5
5
  })(TextVerificationRule || (TextVerificationRule = {}));
6
+ export var SentenceType;
7
+ (function (SentenceType) {
8
+ SentenceType["Standalone"] = "Standalone";
9
+ SentenceType["Connected"] = "Connected";
10
+ })(SentenceType || (SentenceType = {}));
@@ -2,7 +2,7 @@ import { DisplayOption } from "../DisplayOption.js";
2
2
  /**
3
3
  * @title Blessed Tradition Prerequisite
4
4
  */
5
- export declare type BlessedTraditionPrerequisite = {
5
+ export type BlessedTraditionPrerequisite = {
6
6
  /**
7
7
  * The blessed tradition prerequisite may only be satified if the blessed
8
8
  * tradition is either church or shamanistic.
@@ -21,7 +21,7 @@ export declare enum BlessedTraditionPrerequisiteRestriction {
21
21
  /**
22
22
  * @title Magical Tradition Prerequisite
23
23
  */
24
- export declare type MagicalTraditionPrerequisite = {
24
+ export type MagicalTraditionPrerequisite = {
25
25
  /**
26
26
  * The magical tradition prerequisite may only be satified if the magical
27
27
  * tradition can learn rituals or can bind familiars.
@@ -10,7 +10,7 @@ import { NonEmptyMarkdown, NonEmptyString } from "../_NonEmptyString.js";
10
10
  /**
11
11
  * @title Core Rule
12
12
  */
13
- export declare type CoreRule = {
13
+ export type CoreRule = {
14
14
  /**
15
15
  * The core rule's identifier. An unique, increasing integer.
16
16
  */
@@ -25,14 +25,14 @@ export declare type CoreRule = {
25
25
  */
26
26
  translations: LocaleMap<CoreRuleTranslation>;
27
27
  };
28
- export declare type CoreRuleTranslation = {
28
+ export type CoreRuleTranslation = {
29
29
  /**
30
30
  * The name of the optional rule.
31
31
  */
32
32
  name: NonEmptyString;
33
33
  errata?: Errata;
34
34
  };
35
- export declare type ContentNode = {
35
+ export type ContentNode = {
36
36
  tag: "Child";
37
37
  child: ChildNode;
38
38
  } | {
@@ -52,7 +52,7 @@ export declare type ContentNode = {
52
52
  * `Child` should follow a child node, since then it may look like the the text
53
53
  * may be part of the child node.
54
54
  */
55
- export declare type ChildNode = {
55
+ export type ChildNode = {
56
56
  /**
57
57
  * The nested core rule's identifier.
58
58
  */
@@ -68,13 +68,13 @@ export declare type ChildNode = {
68
68
  * A simple text block, containing one or multiple paragraphs. Headings are not
69
69
  * allowed, they should be handled as nested core rules instead.
70
70
  */
71
- export declare type TextNode = {
71
+ export type TextNode = {
72
72
  /**
73
73
  * All translations for the entry, identified by IETF language tag (BCP47).
74
74
  */
75
75
  translations: LocaleMap<TextNodeTranslation>;
76
76
  };
77
- export declare type TextNodeTranslation = {
77
+ export type TextNodeTranslation = {
78
78
  /**
79
79
  * Markdown-formatted text.
80
80
  */
@@ -83,14 +83,14 @@ export declare type TextNodeTranslation = {
83
83
  /**
84
84
  * Generate a list or table from a specific entity type.
85
85
  */
86
- export declare type ReferenceListNode = {
86
+ export type ReferenceListNode = {
87
87
  source: ReferenceListNodeSource;
88
88
  /**
89
89
  * All translations for the entry, identified by IETF language tag (BCP47).
90
90
  */
91
91
  translations: LocaleMap<ReferenceListNodeTranslation>;
92
92
  };
93
- export declare type ReferenceListNodeSource = {
93
+ export type ReferenceListNodeSource = {
94
94
  tag: "Attributes";
95
95
  attributes: {};
96
96
  } | {
@@ -271,7 +271,7 @@ export declare type ReferenceListNodeSource = {
271
271
  tag: "ImprovementCost";
272
272
  improvement_cost: ReferenceListNodeImprovementCostSource;
273
273
  };
274
- export declare type ReferenceListNodeImprovementCostSource = {
274
+ export type ReferenceListNodeImprovementCostSource = {
275
275
  /**
276
276
  * Define if the cost for attributes or skills should be defined. The
277
277
  * cost for attributes start with value 9, while the cost for skills
@@ -296,7 +296,7 @@ export declare enum ReferenceListNodeImprovementCostSourceTarget {
296
296
  Attributes = "Attributes",
297
297
  Skills = "Skills"
298
298
  }
299
- export declare type ReferenceListNodeTranslation = {
299
+ export type ReferenceListNodeTranslation = {
300
300
  /**
301
301
  * Markdown-formatted text.
302
302
  */
@@ -305,7 +305,7 @@ export declare type ReferenceListNodeTranslation = {
305
305
  /**
306
306
  * Generate the full text for a single entry as part of this core rule's text.
307
307
  */
308
- export declare type ReferenceNode = {
308
+ export type ReferenceNode = {
309
309
  id: CoreRuleDerivableContentIdentifier;
310
310
  };
311
311
  export declare const validateSchema: import("../../validation/schema.js").TypeValidator<CoreRule>;
@@ -9,7 +9,7 @@ import { FocusRuleSubjectReference } from "../_SimpleReferences.js";
9
9
  /**
10
10
  * @title Focus Rule
11
11
  */
12
- export declare type FocusRule = {
12
+ export type FocusRule = {
13
13
  /**
14
14
  * The focus rule's identifier. An unique, increasing integer.
15
15
  * @integer
@@ -38,7 +38,7 @@ export declare type FocusRule = {
38
38
  */
39
39
  translations: LocaleMap<FocusRuleTranslation>;
40
40
  };
41
- export declare type FocusRuleTranslation = {
41
+ export type FocusRuleTranslation = {
42
42
  /**
43
43
  * The name of the focus rule.
44
44
  */
@@ -7,7 +7,7 @@ import { NonEmptyString } from "../_NonEmptyString.js";
7
7
  * Subjects or Subject Areas are the categories of Focus Rules.
8
8
  * @title Subject
9
9
  */
10
- export declare type Subject = {
10
+ export type Subject = {
11
11
  /**
12
12
  * The subject's identifier. An unique, increasing integer.
13
13
  * @integer
@@ -19,7 +19,7 @@ export declare type Subject = {
19
19
  */
20
20
  translations: LocaleMap<SubjectTranslation>;
21
21
  };
22
- export declare type SubjectTranslation = {
22
+ export type SubjectTranslation = {
23
23
  /**
24
24
  * The subject.
25
25
  */
@@ -8,7 +8,7 @@ import { NonEmptyMarkdown, NonEmptyString } from "../_NonEmptyString.js";
8
8
  /**
9
9
  * @title Optional Rule
10
10
  */
11
- export declare type OptionalRule = {
11
+ export type OptionalRule = {
12
12
  /**
13
13
  * The optional rule's identifier. An unique, increasing integer.
14
14
  * @integer
@@ -26,7 +26,7 @@ export declare type OptionalRule = {
26
26
  */
27
27
  translations: LocaleMap<OptionalRuleTranslation>;
28
28
  };
29
- export declare type OptionalRuleTranslation = {
29
+ export type OptionalRuleTranslation = {
30
30
  /**
31
31
  * The name of the optional rule.
32
32
  */
@@ -7,7 +7,7 @@ import { PublicationPrerequisites } from "../_Prerequisite.js";
7
7
  /**
8
8
  * @title Publication
9
9
  */
10
- export declare type Publication = {
10
+ export type Publication = {
11
11
  /**
12
12
  * The publication's identifier. An unique, increasing integer.
13
13
  * @integer
@@ -36,7 +36,7 @@ export declare type Publication = {
36
36
  */
37
37
  translations: LocaleMap<PublicationTranslation>;
38
38
  };
39
- export declare type PublicationTranslation = {
39
+ export type PublicationTranslation = {
40
40
  /**
41
41
  * The publisher's publication identifier.
42
42
  * @minLength 1
@@ -7,11 +7,11 @@ import { NonEmptyMarkdown } from "../_NonEmptyString.js";
7
7
  * @title Errata
8
8
  * @minItems 1
9
9
  */
10
- export declare type Errata = Erratum[];
10
+ export type Errata = Erratum[];
11
11
  /**
12
12
  * @title Erratum
13
13
  */
14
- export declare type Erratum = {
14
+ export type Erratum = {
15
15
  /**
16
16
  * The date when the change was confirmed and applied to the entry.
17
17
  * @format date