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
@@ -2,9 +2,6 @@
2
2
  * General type specifications used by multiple activatable entries.
3
3
  * @title Activatable
4
4
  */
5
- import { DisplayOption } from "./prerequisites/DisplayOption.js";
6
- import { Errata } from "./source/_Erratum.js";
7
- import { PublicationRefs } from "./source/_PublicationRef.js";
8
5
  import { SelectOptionCategory, SkillApplicationOrUse } from "./_ActivatableSelectOptionCategory.js";
9
6
  import { DurationUnitValue } from "./_ActivatableSkillDuration.js";
10
7
  import { MagicalTraditionIdentifier, PatronIdentifier, SkillIdentifier } from "./_Identifier.js";
@@ -14,29 +11,32 @@ import { NonEmptyMarkdown, NonEmptyString } from "./_NonEmptyString.js";
14
11
  import { GeneralPrerequisites } from "./_Prerequisite.js";
15
12
  import { ResponsiveText, ResponsiveTextOptional } from "./_ResponsiveText.js";
16
13
  import { AdvancedSpecialAbilityReference, AspectReference, CloseCombatTechniqueReference, CombatTechniqueReference, PropertyReference, RaceReference, RangedCombatTechniqueReference, SkillReference, WeaponReference } from "./_SimpleReferences.js";
14
+ import { DisplayOption } from "./prerequisites/DisplayOption.js";
15
+ import { Errata } from "./source/_Erratum.js";
16
+ import { PublicationRefs } from "./source/_PublicationRef.js";
17
17
  /**
18
18
  * The activatable entry's identifier. An unique, increasing integer.
19
19
  * @integer
20
20
  * @minimum 0
21
21
  */
22
- export declare type Id = number;
22
+ export type Id = number;
23
23
  /**
24
24
  * The name of the activatable entry.
25
25
  * @minLength 1
26
26
  */
27
- export declare type Name = string;
27
+ export type Name = string;
28
28
  /**
29
29
  * The full name of the entry as stated in the sources. Only use when `name`
30
30
  * needs to be different from full name for text generation purposes.
31
31
  * @minLength 1
32
32
  */
33
- export declare type NameInLibrary = string;
33
+ export type NameInLibrary = string;
34
34
  /**
35
35
  * Number of available levels.
36
36
  * @integer
37
37
  * @minimum 2
38
38
  */
39
- export declare type Levels = number;
39
+ export type Levels = number;
40
40
  /**
41
41
  * The number stating how often you can buy the entry. The **default** depends on
42
42
  * the entry type:
@@ -50,7 +50,7 @@ export declare type Levels = number;
50
50
  * @integer
51
51
  * @minimum 1
52
52
  */
53
- export declare type Maximum = number;
53
+ export type Maximum = number;
54
54
  /**
55
55
  * Definitions for possible options for the activatable entry. They can either
56
56
  * be derived from entry categories or be defined explicitly. Both can happen as
@@ -66,7 +66,7 @@ export declare type Maximum = number;
66
66
  * manually.
67
67
  * @minProperties 1
68
68
  */
69
- export declare type SelectOptions = {
69
+ export type SelectOptions = {
70
70
  /**
71
71
  * An entry category with optional further configuration. All available
72
72
  * entries from the specified categories will be included as separate select
@@ -85,7 +85,7 @@ export declare type SelectOptions = {
85
85
  */
86
86
  explicit?: ExplicitSelectOption[];
87
87
  };
88
- export declare type ExplicitSelectOption = {
88
+ export type ExplicitSelectOption = {
89
89
  tag: "General";
90
90
  general: ExplicitGeneralSelectOption;
91
91
  } | {
@@ -95,7 +95,7 @@ export declare type ExplicitSelectOption = {
95
95
  tag: "CombatTechnique";
96
96
  combat_technique: ExplicitCombatTechniqueSelectOption;
97
97
  };
98
- export declare type ExplicitGeneralSelectOption = {
98
+ export type ExplicitGeneralSelectOption = {
99
99
  /**
100
100
  * The option's identifier. An unique, increasing integer.
101
101
  * @integer
@@ -124,6 +124,13 @@ export declare type ExplicitGeneralSelectOption = {
124
124
  */
125
125
  skill_uses?: SkillUses;
126
126
  prerequisites?: GeneralPrerequisites;
127
+ /**
128
+ * Specific binding cost for the select option. Only has an effect if the
129
+ * associated entry supports binding costs.
130
+ * @integer
131
+ * @minimum 0
132
+ */
133
+ binding_cost?: number;
127
134
  /**
128
135
  * Specific AP cost for the select option.
129
136
  * @integer
@@ -136,7 +143,7 @@ export declare type ExplicitGeneralSelectOption = {
136
143
  */
137
144
  translations: LocaleMap<ExplicitGeneralSelectOptionTranslation>;
138
145
  };
139
- export declare type ExplicitGeneralSelectOptionTranslation = {
146
+ export type ExplicitGeneralSelectOptionTranslation = {
140
147
  /**
141
148
  * The name of the select option.
142
149
  * @minLength 1
@@ -157,7 +164,7 @@ export declare type ExplicitGeneralSelectOptionTranslation = {
157
164
  description?: string;
158
165
  errata?: Errata;
159
166
  };
160
- export declare type ExplicitSkillSelectOption = {
167
+ export type ExplicitSkillSelectOption = {
161
168
  /**
162
169
  * The skill's identifier. An unique, increasing integer.
163
170
  * @integer
@@ -181,6 +188,13 @@ export declare type ExplicitSkillSelectOption = {
181
188
  */
182
189
  skill_uses?: SkillApplicationOrUse[];
183
190
  prerequisites?: GeneralPrerequisites;
191
+ /**
192
+ * Specific binding cost for the select option. Only has an effect if the
193
+ * associated entry supports binding costs.
194
+ * @integer
195
+ * @minimum 0
196
+ */
197
+ binding_cost?: number;
184
198
  /**
185
199
  * Specific AP cost for the select option.
186
200
  * @integer
@@ -196,15 +210,22 @@ export declare type ExplicitSkillSelectOption = {
196
210
  /**
197
211
  * @minProperties 1
198
212
  */
199
- export declare type ExplicitSkillSelectOptionTranslation = {
213
+ export type ExplicitSkillSelectOptionTranslation = {
200
214
  errata?: Errata;
201
215
  };
202
- export declare type ExplicitCombatTechniqueSelectOption = {
216
+ export type ExplicitCombatTechniqueSelectOption = {
203
217
  /**
204
218
  * The combat technique's identifier.
205
219
  */
206
220
  id: CombatTechniqueIdentifier;
207
221
  prerequisites?: GeneralPrerequisites;
222
+ /**
223
+ * Specific binding cost for the select option. Only has an effect if the
224
+ * associated entry supports binding costs.
225
+ * @integer
226
+ * @minimum 0
227
+ */
228
+ binding_cost?: number;
208
229
  /**
209
230
  * Specific AP cost for the select option.
210
231
  * @integer
@@ -220,17 +241,17 @@ export declare type ExplicitCombatTechniqueSelectOption = {
220
241
  /**
221
242
  * @minProperties 1
222
243
  */
223
- export declare type ExplicitCombatTechniqueSelectOptionTranslation = {
244
+ export type ExplicitCombatTechniqueSelectOptionTranslation = {
224
245
  errata?: Errata;
225
246
  };
226
247
  /**
227
248
  * The rule text.
228
249
  */
229
- export declare type Rules = NonEmptyMarkdown;
250
+ export type Rules = NonEmptyMarkdown;
230
251
  /**
231
252
  * The effect description.
232
253
  */
233
- export declare type Effect = NonEmptyMarkdown;
254
+ export type Effect = NonEmptyMarkdown;
234
255
  /**
235
256
  * The definition of how the combat special ability can be used in combat.
236
257
  */
@@ -254,8 +275,8 @@ export declare enum CombatSpecialAbilityType {
254
275
  * activatable entry.
255
276
  * @minItems 1
256
277
  */
257
- export declare type SkillApplications = SkillApplication[];
258
- export declare type SkillApplication = {
278
+ export type SkillApplications = SkillApplication[];
279
+ export type SkillApplication = {
259
280
  /**
260
281
  * The application's identifier. An entry-unique, increasing integer.
261
282
  * @integer
@@ -271,14 +292,14 @@ export declare type SkillApplication = {
271
292
  */
272
293
  translations?: LocaleMap<SkillApplicationTranslation>;
273
294
  };
274
- export declare type SkillApplicationAssociatedSkill = {
295
+ export type SkillApplicationAssociatedSkill = {
275
296
  tag: "Single";
276
297
  single: SkillReference;
277
298
  } | {
278
299
  tag: "Multiple";
279
300
  multiple: SkillApplicationAssociatedSkills;
280
301
  };
281
- export declare type SkillApplicationAssociatedSkills = {
302
+ export type SkillApplicationAssociatedSkills = {
282
303
  /**
283
304
  * The skills this application belongs to.
284
305
  * @minItems 2
@@ -293,7 +314,7 @@ export declare type SkillApplicationAssociatedSkills = {
293
314
  */
294
315
  required_skill_rating?: number;
295
316
  };
296
- export declare type SkillApplicationTranslation = {
317
+ export type SkillApplicationTranslation = {
297
318
  /**
298
319
  * The name of the application if different from the activatable entry's name.
299
320
  */
@@ -305,8 +326,8 @@ export declare type SkillApplicationTranslation = {
305
326
  * left out if its name equals the name of the origin activatable entry.
306
327
  * @minItems 1
307
328
  */
308
- export declare type SkillUses = SkillUse[];
309
- export declare type SkillUse = {
329
+ export type SkillUses = SkillUse[];
330
+ export type SkillUse = {
310
331
  /**
311
332
  * The use's identifier. An entry-unique, increasing integer.
312
333
  * @integer
@@ -322,21 +343,21 @@ export declare type SkillUse = {
322
343
  */
323
344
  translations?: LocaleMap<SkillUseTranslation>;
324
345
  };
325
- export declare type SkillUseAssociatedSkill = {
346
+ export type SkillUseAssociatedSkill = {
326
347
  tag: "Single";
327
348
  single: SkillReference;
328
349
  } | {
329
350
  tag: "Multiple";
330
351
  multiple: SkillUseAssociatedSkills;
331
352
  };
332
- export declare type SkillUseAssociatedSkills = {
353
+ export type SkillUseAssociatedSkills = {
333
354
  /**
334
355
  * The skills this use belongs to.
335
356
  * @minItems 2
336
357
  */
337
358
  list: SkillReference[];
338
359
  };
339
- export declare type SkillUseTranslation = {
360
+ export type SkillUseTranslation = {
340
361
  /**
341
362
  * The name of the use if different from the activatable entry's name.
342
363
  */
@@ -345,7 +366,7 @@ export declare type SkillUseTranslation = {
345
366
  /**
346
367
  * The penalty the special ability gives when used.
347
368
  */
348
- export declare type Penalty = {
369
+ export type Penalty = {
349
370
  tag: "Single";
350
371
  single: SinglePenalty;
351
372
  } | {
@@ -367,7 +388,7 @@ export declare type Penalty = {
367
388
  tag: "DependsOnHitZone";
368
389
  depends_on_hit_zone: {};
369
390
  };
370
- export declare type SinglePenalty = {
391
+ export type SinglePenalty = {
371
392
  /**
372
393
  * The penalty value.
373
394
  * @integer
@@ -378,7 +399,7 @@ export declare type SinglePenalty = {
378
399
  */
379
400
  applies_to_parry?: true;
380
401
  };
381
- export declare type PenaltyByHandedness = {
402
+ export type PenaltyByHandedness = {
382
403
  /**
383
404
  * The penalty value for one-handed weapons.
384
405
  * @integer
@@ -394,7 +415,7 @@ export declare type PenaltyByHandedness = {
394
415
  */
395
416
  applies_to_parry?: true;
396
417
  };
397
- export declare type PenaltyByActivation = {
418
+ export type PenaltyByActivation = {
398
419
  /**
399
420
  * The penalty value if the entry has been bought by the character.
400
421
  * @integer
@@ -410,17 +431,17 @@ export declare type PenaltyByActivation = {
410
431
  */
411
432
  applies_to_parry?: true;
412
433
  };
413
- export declare type PenaltySelection = {
434
+ export type PenaltySelection = {
414
435
  options: PenaltySelectionOptions;
415
436
  };
416
- export declare type PenaltySelectionOptions = {
437
+ export type PenaltySelectionOptions = {
417
438
  tag: "Specific";
418
439
  specific: SpecificPenaltySelectionOptions;
419
440
  } | {
420
441
  tag: "Range";
421
442
  range: PenaltySelectionOptionsRange;
422
443
  };
423
- export declare type SpecificPenaltySelectionOptions = {
444
+ export type SpecificPenaltySelectionOptions = {
424
445
  /**
425
446
  * The list of specific penalty options.
426
447
  * @minItems 2
@@ -428,14 +449,14 @@ export declare type SpecificPenaltySelectionOptions = {
428
449
  */
429
450
  list: SpecificPenaltySelectionOption[];
430
451
  };
431
- export declare type SpecificPenaltySelectionOption = {
452
+ export type SpecificPenaltySelectionOption = {
432
453
  /**
433
454
  * The penalty value.
434
455
  * @integer
435
456
  */
436
457
  value: number;
437
458
  };
438
- export declare type PenaltySelectionOptionsRange = {
459
+ export type PenaltySelectionOptionsRange = {
439
460
  /**
440
461
  * The minimum penalty value.
441
462
  * @integer
@@ -447,7 +468,7 @@ export declare type PenaltySelectionOptionsRange = {
447
468
  */
448
469
  maximum: number;
449
470
  };
450
- export declare type PenaltyByLevel = {
471
+ export type PenaltyByLevel = {
451
472
  /**
452
473
  * A continuous range of penalties for each level. The first element is the
453
474
  * penalty for the first level, the second element is the penalty for the
@@ -461,7 +482,7 @@ export declare type PenaltyByLevel = {
461
482
  */
462
483
  external?: PenaltyByExternalLevel;
463
484
  };
464
- export declare type PenaltyByLevelLevel = {
485
+ export type PenaltyByLevelLevel = {
465
486
  /**
466
487
  * The penalty value for this level.
467
488
  * @integer
@@ -472,14 +493,14 @@ export declare type PenaltyByLevelLevel = {
472
493
  * The combat-related special ability of which the level defines the penalty
473
494
  * instead.
474
495
  */
475
- export declare type PenaltyByExternalLevel = {
496
+ export type PenaltyByExternalLevel = {
476
497
  /**
477
498
  * The identifier of the combat-related special ability of which the level
478
499
  * defines the penalty instead.
479
500
  */
480
501
  id: CombatRelatedSpecialAbilityIdentifier;
481
502
  };
482
- export declare type PenaltyByAttack = {
503
+ export type PenaltyByAttack = {
483
504
  /**
484
505
  * A list of penalties for subsequent attacks. The first element is the
485
506
  * penalty for the first attack, the second element is the penalty for the
@@ -500,7 +521,7 @@ export declare type PenaltyByAttack = {
500
521
  */
501
522
  attack_replacement?: PenaltyByAttackReplacement;
502
523
  };
503
- export declare type PenaltyByAttackOrderItem = {
524
+ export type PenaltyByAttackOrderItem = {
504
525
  /**
505
526
  * The penalty value for this order.
506
527
  * @integer
@@ -514,7 +535,7 @@ export declare type PenaltyByAttackOrderItem = {
514
535
  export declare enum PenaltyByAttackReplacement {
515
536
  Throw = "Throw"
516
537
  }
517
- export declare type EnchantmentCost = {
538
+ export type EnchantmentCost = {
518
539
  tag: "ArcaneEnergyCost";
519
540
  arcane_energy_cost: ArcaneEnergyCost;
520
541
  } | {
@@ -524,7 +545,7 @@ export declare type EnchantmentCost = {
524
545
  /**
525
546
  * The AE Cost.
526
547
  */
527
- export declare type ArcaneEnergyCost = {
548
+ export type ArcaneEnergyCost = {
528
549
  tag: "Fixed";
529
550
  fixed: FixedArcaneEnergyCost;
530
551
  } | {
@@ -546,7 +567,7 @@ export declare type ArcaneEnergyCost = {
546
567
  tag: "Variable";
547
568
  variable: {};
548
569
  };
549
- export declare type FixedArcaneEnergyCost = {
570
+ export type FixedArcaneEnergyCost = {
550
571
  /**
551
572
  * The AE cost value.
552
573
  * @integer
@@ -586,13 +607,13 @@ export declare enum FixedArcaneEnergyCostPerLevel {
586
607
  /**
587
608
  * @minProperties 1
588
609
  */
589
- export declare type FixedArcaneEnergyCostTranslation = {
610
+ export type FixedArcaneEnergyCostTranslation = {
590
611
  /**
591
612
  * A note, appended to the generated option string in parenthesis.
592
613
  */
593
614
  note?: ResponsiveTextOptional;
594
615
  };
595
- export declare type ArcaneEnergyCostPerCountable = {
616
+ export type ArcaneEnergyCostPerCountable = {
596
617
  /**
597
618
  * The AE cost value that has to be per a specific countable entity.
598
619
  * @integer
@@ -611,7 +632,7 @@ export declare type ArcaneEnergyCostPerCountable = {
611
632
  */
612
633
  translations: LocaleMap<ArcaneEnergyCostPerCountableTranslation>;
613
634
  };
614
- export declare type ArcaneEnergyCostPerCountableTranslation = {
635
+ export type ArcaneEnergyCostPerCountableTranslation = {
615
636
  /**
616
637
  * The cost have to be per a specific countable entity, e.g. `8 AE per
617
638
  * person`.
@@ -622,7 +643,7 @@ export declare type ArcaneEnergyCostPerCountableTranslation = {
622
643
  */
623
644
  note?: ResponsiveTextOptional;
624
645
  };
625
- export declare type IntervalArcaneEnergyCost = {
646
+ export type IntervalArcaneEnergyCost = {
626
647
  /**
627
648
  * The AE cost value that has to be payed each interval.
628
649
  * @integer
@@ -634,7 +655,7 @@ export declare type IntervalArcaneEnergyCost = {
634
655
  */
635
656
  interval: DurationUnitValue;
636
657
  };
637
- export declare type ActivationAndHalfIntervalArcaneEnergyCost = {
658
+ export type ActivationAndHalfIntervalArcaneEnergyCost = {
638
659
  /**
639
660
  * The AE cost value that has to be payed for activation. Half of this value
640
661
  * has to be payed each interval.
@@ -648,19 +669,39 @@ export declare type ActivationAndHalfIntervalArcaneEnergyCost = {
648
669
  */
649
670
  interval: DurationUnitValue;
650
671
  };
651
- export declare type IndefiniteArcaneEnergyCost = {
672
+ export type IndefiniteArcaneEnergyCost = {
673
+ /**
674
+ * Specified if the indefinite AP cost description needs to be modified by a
675
+ * certain value.
676
+ */
677
+ modifier?: IndefiniteArcaneEnergyCostModifier;
652
678
  /**
653
679
  * All translations for the entry, identified by IETF language tag (BCP47).
654
680
  */
655
681
  translations: LocaleMap<IndefiniteArcaneEnergyCostTranslation>;
656
682
  };
657
- export declare type IndefiniteArcaneEnergyCostTranslation = {
683
+ export type IndefiniteArcaneEnergyCostModifier = {
684
+ /**
685
+ * The arithmetic how to apply the `value` to the `base`.
686
+ */
687
+ arithmetic: IndefiniteArcaneEnergyCostModifierArithmetic;
688
+ /**
689
+ * The value that is applied to the `base` using the defined `arithmetic`.
690
+ * @integer
691
+ * @minimum 1
692
+ */
693
+ value: number;
694
+ };
695
+ export declare enum IndefiniteArcaneEnergyCostModifierArithmetic {
696
+ Add = "Add"
697
+ }
698
+ export type IndefiniteArcaneEnergyCostTranslation = {
658
699
  /**
659
700
  * A description of where the cost come from.
660
701
  */
661
702
  description: ResponsiveText;
662
703
  };
663
- export declare type ArcaneEnergyCostDisjunction = {
704
+ export type ArcaneEnergyCostDisjunction = {
664
705
  /**
665
706
  * Specified if the selected AE cost option has to be paid for each time
666
707
  * interval.
@@ -671,7 +712,7 @@ export declare type ArcaneEnergyCostDisjunction = {
671
712
  */
672
713
  options: ArcaneEnergyCostDisjunctionOption[];
673
714
  };
674
- export declare type ArcaneEnergyCostDisjunctionInterval = {
715
+ export type ArcaneEnergyCostDisjunctionInterval = {
675
716
  /**
676
717
  * The interval itself.
677
718
  */
@@ -692,7 +733,7 @@ export declare type ArcaneEnergyCostDisjunctionInterval = {
692
733
  */
693
734
  after_activation: boolean;
694
735
  };
695
- export declare type ArcaneEnergyCostDisjunctionOption = {
736
+ export type ArcaneEnergyCostDisjunctionOption = {
696
737
  /**
697
738
  * A possible AE cost value.
698
739
  * @integer
@@ -707,13 +748,13 @@ export declare type ArcaneEnergyCostDisjunctionOption = {
707
748
  /**
708
749
  * @minProperties 1
709
750
  */
710
- export declare type ArcaneEnergyCostDisjunctionOptionTranslation = {
751
+ export type ArcaneEnergyCostDisjunctionOptionTranslation = {
711
752
  /**
712
753
  * A note, appended to the generated option string in parenthesis.
713
754
  */
714
755
  note?: ResponsiveTextOptional;
715
756
  };
716
- export declare type NoArcaneEnergyCost = {
757
+ export type NoArcaneEnergyCost = {
717
758
  /**
718
759
  * All translations for the entry, identified by IETF language tag
719
760
  * (BCP47).
@@ -723,7 +764,7 @@ export declare type NoArcaneEnergyCost = {
723
764
  /**
724
765
  * @minProperties 1
725
766
  */
726
- export declare type NoArcaneEnergyCostTranslation = {
767
+ export type NoArcaneEnergyCostTranslation = {
727
768
  /**
728
769
  * A note, appended to the generated string in parenthesis.
729
770
  */
@@ -732,7 +773,7 @@ export declare type NoArcaneEnergyCostTranslation = {
732
773
  /**
733
774
  * The volume points the enchantment needs.
734
775
  */
735
- export declare type Volume = {
776
+ export type Volume = {
736
777
  tag: "Fixed";
737
778
  fixed: FixedVolume;
738
779
  } | {
@@ -744,8 +785,11 @@ export declare type Volume = {
744
785
  } | {
745
786
  tag: "Map";
746
787
  map: VolumeMap;
788
+ } | {
789
+ tag: "DerivedFromSelection";
790
+ derived_from_selection: VolumeDerivedFromSelection;
747
791
  };
748
- export declare type FixedVolume = {
792
+ export type FixedVolume = {
749
793
  /**
750
794
  * The volume points.
751
795
  * @integer
@@ -753,7 +797,7 @@ export declare type FixedVolume = {
753
797
  */
754
798
  points: number;
755
799
  };
756
- export declare type VolumePerLevel = {
800
+ export type VolumePerLevel = {
757
801
  /**
758
802
  * The volume points per level.
759
803
  * @integer
@@ -761,7 +805,7 @@ export declare type VolumePerLevel = {
761
805
  */
762
806
  points: number;
763
807
  };
764
- export declare type VolumeByLevel = {
808
+ export type VolumeByLevel = {
765
809
  /**
766
810
  * The volume points for each level. The first element is the volume points
767
811
  * for the first level, the second element is the volume points for the
@@ -770,7 +814,7 @@ export declare type VolumeByLevel = {
770
814
  */
771
815
  list: VolumeByLevelItem[];
772
816
  };
773
- export declare type VolumeByLevelItem = {
817
+ export type VolumeByLevelItem = {
774
818
  /**
775
819
  * The volume points for this level.
776
820
  * @integer
@@ -821,7 +865,7 @@ export declare type VolumeByLevelItem = {
821
865
  * options are not present in the example, but they link to the options the
822
866
  * volume specification is meant for.
823
867
  */
824
- export declare type VolumeMap = {
868
+ export type VolumeMap = {
825
869
  /**
826
870
  * The possible costs and associated labels.
827
871
  * @minItems 2
@@ -835,7 +879,7 @@ export declare type VolumeMap = {
835
879
  /**
836
880
  * @minProperties 1
837
881
  */
838
- export declare type VolumeMapTranslation = {
882
+ export type VolumeMapTranslation = {
839
883
  /**
840
884
  * Place a string between the `for` and the grouped map option labels.
841
885
  */
@@ -852,7 +896,7 @@ export declare type VolumeMapTranslation = {
852
896
  */
853
897
  replacement?: string;
854
898
  };
855
- export declare type VolumeMapOption = {
899
+ export type VolumeMapOption = {
856
900
  /**
857
901
  * The full permanent AE cost value for this option.
858
902
  * @integer
@@ -868,13 +912,13 @@ export declare type VolumeMapOption = {
868
912
  */
869
913
  translations?: LocaleMap<VolumeMapOptionTranslation>;
870
914
  };
871
- export declare type VolumeMapOptionAssociatedOption = {
915
+ export type VolumeMapOptionAssociatedOption = {
872
916
  /**
873
917
  * The option's identifier.
874
918
  */
875
919
  id: VolumePointsOptionReferenceIdentifier;
876
920
  };
877
- export declare type VolumeMapOptionTranslation = {
921
+ export type VolumeMapOptionTranslation = {
878
922
  /**
879
923
  * The description of the option for cost string generation.
880
924
  */
@@ -885,10 +929,18 @@ export declare type VolumeMapOptionTranslation = {
885
929
  */
886
930
  label_standalone?: NonEmptyString;
887
931
  };
932
+ export type VolumeDerivedFromSelection = {
933
+ /**
934
+ * The volume for the selection if it does not define a specific one.
935
+ * @integer
936
+ * @minimum 0
937
+ */
938
+ fallback: number;
939
+ };
888
940
  /**
889
941
  * The binding cost for an enchantment.
890
942
  */
891
- export declare type BindingCost = {
943
+ export type BindingCost = {
892
944
  tag: "Fixed";
893
945
  fixed: FixedBindingCost;
894
946
  } | {
@@ -897,8 +949,11 @@ export declare type BindingCost = {
897
949
  } | {
898
950
  tag: "Map";
899
951
  map: BindingCostMap;
952
+ } | {
953
+ tag: "DerivedFromSelection";
954
+ derived_from_selection: BindingCostDerivedFromSelection;
900
955
  };
901
- export declare type FixedBindingCost = {
956
+ export type FixedBindingCost = {
902
957
  /**
903
958
  * The permanent AE cost.
904
959
  *
@@ -909,7 +964,7 @@ export declare type FixedBindingCost = {
909
964
  */
910
965
  permanent_value: number;
911
966
  };
912
- export declare type BindingCostPerLevel = {
967
+ export type BindingCostPerLevel = {
913
968
  /**
914
969
  * The permanent AE cost per level.
915
970
  * @integer
@@ -944,7 +999,7 @@ export declare type BindingCostPerLevel = {
944
999
  *
945
1000
  * This will generate the exact same string as seen above.
946
1001
  */
947
- export declare type BindingCostMap = {
1002
+ export type BindingCostMap = {
948
1003
  /**
949
1004
  * The possible costs and associated labels.
950
1005
  * @minItems 2
@@ -958,7 +1013,7 @@ export declare type BindingCostMap = {
958
1013
  /**
959
1014
  * @minProperties 1
960
1015
  */
961
- export declare type BindingCostMapTranslation = {
1016
+ export type BindingCostMapTranslation = {
962
1017
  /**
963
1018
  * Place a string between the `for` and the grouped map option labels.
964
1019
  */
@@ -975,7 +1030,7 @@ export declare type BindingCostMapTranslation = {
975
1030
  */
976
1031
  replacement?: NonEmptyString;
977
1032
  };
978
- export declare type BindingCostMapOption = {
1033
+ export type BindingCostMapOption = {
979
1034
  /**
980
1035
  * The full permanent AE cost value for this option.
981
1036
  * @integer
@@ -987,7 +1042,7 @@ export declare type BindingCostMapOption = {
987
1042
  */
988
1043
  translations?: LocaleMap<BindingCostMapOptionTranslation>;
989
1044
  };
990
- export declare type BindingCostMapOptionTranslation = {
1045
+ export type BindingCostMapOptionTranslation = {
991
1046
  /**
992
1047
  * The description of the option for cost string generation.
993
1048
  */
@@ -998,11 +1053,19 @@ export declare type BindingCostMapOptionTranslation = {
998
1053
  */
999
1054
  label_standalone?: NonEmptyString;
1000
1055
  };
1056
+ export type BindingCostDerivedFromSelection = {
1057
+ /**
1058
+ * The binding cost for the selection if it does not define a specific one.
1059
+ * @integer
1060
+ * @minimum 0
1061
+ */
1062
+ fallback: number;
1063
+ };
1001
1064
  /**
1002
1065
  * The magic property's identifier. `DependingOnProperty` can only be used if
1003
1066
  * the special ability has an option to select a property.
1004
1067
  */
1005
- export declare type Property = {
1068
+ export type Property = {
1006
1069
  tag: "DependingOnSelection";
1007
1070
  depending_on_selection: {};
1008
1071
  } | {
@@ -1012,11 +1075,11 @@ export declare type Property = {
1012
1075
  /**
1013
1076
  * The blessed aspect.
1014
1077
  */
1015
- export declare type Aspect = AspectReference;
1078
+ export type Aspect = AspectReference;
1016
1079
  /**
1017
1080
  * A reference to an advanced special ability.
1018
1081
  */
1019
- export declare type AdvancedSpecialAbility<Identifier> = {
1082
+ export type AdvancedSpecialAbility<Identifier> = {
1020
1083
  tag: "General";
1021
1084
  general: AdvancedSpecialAbilityReference<Identifier>;
1022
1085
  } | {
@@ -1029,7 +1092,7 @@ export declare type AdvancedSpecialAbility<Identifier> = {
1029
1092
  tag: "DeriveFromExternalOption";
1030
1093
  derive_from_external_option: AdvancedSpecialAbilityDerivedFromExternalOption<Identifier>;
1031
1094
  };
1032
- export declare type RestrictAdvancedSpecialAbilityOptions<Identifier> = {
1095
+ export type RestrictAdvancedSpecialAbilityOptions<Identifier> = {
1033
1096
  /**
1034
1097
  * The advanced special ability’s identifier.
1035
1098
  */
@@ -1041,7 +1104,7 @@ export declare type RestrictAdvancedSpecialAbilityOptions<Identifier> = {
1041
1104
  */
1042
1105
  option: AdvancedSpecialAbilityRestrictedOptionIdentifier[];
1043
1106
  };
1044
- export declare type OneOfAdvancedSpecialAbilityOptions<Identifier> = {
1107
+ export type OneOfAdvancedSpecialAbilityOptions<Identifier> = {
1045
1108
  /**
1046
1109
  * The possible advanced special abilities.
1047
1110
  * @minItems 2
@@ -1054,7 +1117,7 @@ export declare type OneOfAdvancedSpecialAbilityOptions<Identifier> = {
1054
1117
  is_selection_required_on_purchase: boolean;
1055
1118
  display_option?: DisplayOption;
1056
1119
  };
1057
- export declare type AdvancedSpecialAbilityDerivedFromExternalOption<Identifier> = {
1120
+ export type AdvancedSpecialAbilityDerivedFromExternalOption<Identifier> = {
1058
1121
  /**
1059
1122
  * The possible advanced special abilities.
1060
1123
  */
@@ -1071,7 +1134,7 @@ export declare type AdvancedSpecialAbilityDerivedFromExternalOption<Identifier>
1071
1134
  * ability.
1072
1135
  * @minItems 1
1073
1136
  */
1074
- export declare type AdvancedSpecialAbilityDerivedFromExternalOptionMapping<Identifier> = {
1137
+ export type AdvancedSpecialAbilityDerivedFromExternalOptionMapping<Identifier> = {
1075
1138
  /**
1076
1139
  * The select option's identifier.
1077
1140
  */
@@ -1081,8 +1144,8 @@ export declare type AdvancedSpecialAbilityDerivedFromExternalOptionMapping<Ident
1081
1144
  */
1082
1145
  to_advanced: AdvancedSpecialAbilityReference<Identifier>;
1083
1146
  };
1084
- export declare type AdvancedSpecialAbilityDerivedExternalEntryId = MagicalTraditionIdentifier;
1085
- export declare type AdvancedSpecialAbilityDerivedExternalEntryOptionId = PatronIdentifier;
1147
+ export type AdvancedSpecialAbilityDerivedExternalEntryId = MagicalTraditionIdentifier;
1148
+ export type AdvancedSpecialAbilityDerivedExternalEntryOptionId = PatronIdentifier;
1086
1149
  /**
1087
1150
  * The Advanced Special Abilities for the respective Style Special Ability.
1088
1151
  * Sometimes, only a specific select option or a set of select options of an
@@ -1090,12 +1153,17 @@ export declare type AdvancedSpecialAbilityDerivedExternalEntryOptionId = PatronI
1090
1153
  * be that you can choose from a set of special abilities, but then you can't
1091
1154
  * specify an option.
1092
1155
  */
1093
- export declare type AdvancedSpecialAbilities<Identifier> = [
1156
+ export type AdvancedSpecialAbilities<Identifier> = [
1094
1157
  AdvancedSpecialAbility<Identifier>,
1095
1158
  AdvancedSpecialAbility<Identifier>,
1096
1159
  AdvancedSpecialAbility<Identifier>
1097
1160
  ];
1098
- export declare type ApplicableCombatTechniques = {
1161
+ /**
1162
+ * The prerequisites text. It is only used if the text cannot be generated from
1163
+ * the given information.
1164
+ */
1165
+ export type PrerequisitesReplacement = NonEmptyMarkdown;
1166
+ export type ApplicableCombatTechniques = {
1099
1167
  tag: "None";
1100
1168
  none: {};
1101
1169
  } | {
@@ -1114,38 +1182,38 @@ export declare type ApplicableCombatTechniques = {
1114
1182
  tag: "Specific";
1115
1183
  specific: SpecificApplicableCombatTechniques;
1116
1184
  };
1117
- export declare type AllApplicableCombatTechniques = {
1185
+ export type AllApplicableCombatTechniques = {
1118
1186
  /**
1119
1187
  * @minItems 1
1120
1188
  */
1121
1189
  restrictions?: ApplicableAllCombatTechniquesRestriction[];
1122
1190
  };
1123
- export declare type AllApplicableCloseCombatTechniques = {
1191
+ export type AllApplicableCloseCombatTechniques = {
1124
1192
  /**
1125
1193
  * @minItems 1
1126
1194
  */
1127
1195
  restrictions?: ApplicableCloseCombatTechniquesRestriction[];
1128
1196
  };
1129
- export declare type AllApplicableRangedCombatTechniques = {
1197
+ export type AllApplicableRangedCombatTechniques = {
1130
1198
  /**
1131
1199
  * @minItems 1
1132
1200
  */
1133
1201
  restrictions?: ApplicableRangedCombatTechniquesRestriction[];
1134
1202
  };
1135
- export declare type SpecificApplicableCombatTechniques = {
1203
+ export type SpecificApplicableCombatTechniques = {
1136
1204
  /**
1137
1205
  * @minItems 1
1138
1206
  */
1139
1207
  list: SpecificApplicableCombatTechnique[];
1140
1208
  };
1141
- export declare type SpecificApplicableCombatTechnique = {
1209
+ export type SpecificApplicableCombatTechnique = {
1142
1210
  id: CombatTechniqueIdentifier;
1143
1211
  /**
1144
1212
  * @minItems 1
1145
1213
  */
1146
1214
  restrictions?: ApplicableSpecificCombatTechniquesRestriction[];
1147
1215
  };
1148
- export declare type ApplicableAllCombatTechniquesRestriction = {
1216
+ export type ApplicableAllCombatTechniquesRestriction = {
1149
1217
  tag: "Improvised";
1150
1218
  improvised: {};
1151
1219
  } | {
@@ -1161,7 +1229,7 @@ export declare type ApplicableAllCombatTechniquesRestriction = {
1161
1229
  tag: "ExcludeCombatTechniques";
1162
1230
  exclude_combat_techniques: ApplicableCombatTechniquesNegativeCombatTechniquesRestriction<CombatTechniqueReference>;
1163
1231
  };
1164
- export declare type ApplicableCloseCombatTechniquesRestriction = {
1232
+ export type ApplicableCloseCombatTechniquesRestriction = {
1165
1233
  tag: "Improvised";
1166
1234
  improvised: {};
1167
1235
  } | {
@@ -1186,7 +1254,7 @@ export declare type ApplicableCloseCombatTechniquesRestriction = {
1186
1254
  tag: "ExcludeCombatTechniques";
1187
1255
  exclude_combat_techniques: ApplicableCombatTechniquesNegativeCombatTechniquesRestriction<CloseCombatTechniqueReference>;
1188
1256
  };
1189
- export declare type ApplicableRangedCombatTechniquesRestriction = {
1257
+ export type ApplicableRangedCombatTechniquesRestriction = {
1190
1258
  tag: "Improvised";
1191
1259
  improvised: {};
1192
1260
  } | {
@@ -1202,7 +1270,7 @@ export declare type ApplicableRangedCombatTechniquesRestriction = {
1202
1270
  tag: "ExcludeCombatTechniques";
1203
1271
  exclude_combat_techniques: ApplicableCombatTechniquesNegativeCombatTechniquesRestriction<RangedCombatTechniqueReference>;
1204
1272
  };
1205
- export declare type ApplicableSpecificCombatTechniquesRestriction = {
1273
+ export type ApplicableSpecificCombatTechniquesRestriction = {
1206
1274
  tag: "Improvised";
1207
1275
  improvised: {};
1208
1276
  } | {
@@ -1221,7 +1289,7 @@ export declare type ApplicableSpecificCombatTechniquesRestriction = {
1221
1289
  tag: "Weapons";
1222
1290
  weapons: ApplicableCombatTechniquesWeaponRestriction;
1223
1291
  };
1224
- export declare type ApplicableCombatTechniquesNegativeCombatTechniquesRestriction<Ref> = {
1292
+ export type ApplicableCombatTechniquesNegativeCombatTechniquesRestriction<Ref> = {
1225
1293
  /**
1226
1294
  * The combat techniques this combat special ability is **not** applicable to.
1227
1295
  * @minItems 1
@@ -1229,8 +1297,8 @@ export declare type ApplicableCombatTechniquesNegativeCombatTechniquesRestrictio
1229
1297
  */
1230
1298
  list: Ref[];
1231
1299
  };
1232
- export declare type ApplicableCombatTechniquesRaceRestriction = RaceReference;
1233
- export declare type ApplicableCombatTechniquesLevelRestriction = {
1300
+ export type ApplicableCombatTechniquesRaceRestriction = RaceReference;
1301
+ export type ApplicableCombatTechniquesLevelRestriction = {
1234
1302
  /**
1235
1303
  * The combat special ability is only applicable on a certain level.
1236
1304
  * @integer
@@ -1238,7 +1306,7 @@ export declare type ApplicableCombatTechniquesLevelRestriction = {
1238
1306
  */
1239
1307
  level: number;
1240
1308
  };
1241
- export declare type ApplicableCombatTechniquesWeaponRestriction = {
1309
+ export type ApplicableCombatTechniquesWeaponRestriction = {
1242
1310
  /**
1243
1311
  * The specific weapons this combat special ability is only applicable to.
1244
1312
  * @minItems 1
@@ -1246,12 +1314,15 @@ export declare type ApplicableCombatTechniquesWeaponRestriction = {
1246
1314
  */
1247
1315
  list: WeaponReference[];
1248
1316
  };
1249
- export declare type AdventurePointsValue = {
1317
+ export type AdventurePointsValue = {
1250
1318
  tag: "Fixed";
1251
1319
  fixed: FixedAdventurePointsValue;
1252
1320
  } | {
1253
1321
  tag: "ByLevel";
1254
1322
  by_level: AdventurePointsValueByLevel;
1323
+ } | {
1324
+ tag: "DerivedFromSelection";
1325
+ derived_from_selection: AdventurePointsDerivedFromSelection;
1255
1326
  } | {
1256
1327
  tag: "Indefinite";
1257
1328
  indefinite: {};
@@ -1260,16 +1331,53 @@ export declare type AdventurePointsValue = {
1260
1331
  * A fixed adventure points value. If the entry has levels, this is the cost per
1261
1332
  * level as well.
1262
1333
  */
1263
- export declare type FixedAdventurePointsValue = AdventurePointsSingleValue;
1334
+ export type FixedAdventurePointsValue = AdventurePointsSingleValue;
1264
1335
  /**
1265
1336
  * An entry with levels may have different costs for each level. The length of
1266
1337
  * the list must match the amount of levels the special ability has.
1267
1338
  * @minItems 2
1268
1339
  */
1269
- export declare type AdventurePointsValueByLevel = AdventurePointsSingleValue[];
1340
+ export type AdventurePointsValueByLevel = AdventurePointsSingleValue[];
1341
+ /**
1342
+ * The adventure points value is derived from the selection of the special
1343
+ * ability. Its display value may be able to be derived from the given
1344
+ * information for the select options. If that is not the case or the generated
1345
+ * text would not match the original one, a replacement text can be provided.
1346
+ */
1347
+ export type AdventurePointsDerivedFromSelection = {
1348
+ /**
1349
+ * All translations for the entry, identified by IETF language tag (BCP47).
1350
+ */
1351
+ translations?: LocaleMap<AdventurePointsDerivedFromSelectionTranslation>;
1352
+ };
1353
+ /**
1354
+ * @minProperties 1
1355
+ */
1356
+ export type AdventurePointsDerivedFromSelectionTranslation = {
1357
+ /**
1358
+ * A replacement for the generated text if it would not match the original
1359
+ * one.
1360
+ */
1361
+ replacement?: NonEmptyMarkdown;
1362
+ };
1270
1363
  /**
1271
1364
  * A single adventure points value.
1272
1365
  * @integer
1273
1366
  * @minimum 0
1274
1367
  */
1275
- export declare type AdventurePointsSingleValue = number;
1368
+ export type AdventurePointsSingleValue = number;
1369
+ /**
1370
+ * A string that is used as a label for an input field.
1371
+ */
1372
+ export type Input = NonEmptyString;
1373
+ /**
1374
+ * The AP value. It is only used if the text cannot be generated from the given
1375
+ * information.
1376
+ */
1377
+ export type AdventurePointsValueReplacement = NonEmptyMarkdown;
1378
+ /**
1379
+ * A string that gets appended to the default AP Value text with a preceding
1380
+ * space. This always happens if present, even if the generated AP Value text is
1381
+ * replaced.
1382
+ */
1383
+ export type AdventurePointsValueAppend = NonEmptyMarkdown;