optolith-database-schema 0.17.2 → 0.18.2

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 (630) hide show
  1. package/CHANGELOG.md +41 -1
  2. package/lib/main.d.ts +2 -101
  3. package/lib/main.js +361 -106
  4. package/lib/test.d.ts +1 -0
  5. package/lib/test.js +2 -0
  6. package/lib/types/Advantage.d.ts +921 -63
  7. package/lib/types/Advantage.js +42 -13
  8. package/lib/types/AnimalDisease.d.ts +90 -59
  9. package/lib/types/AnimalDisease.js +28 -13
  10. package/lib/types/AnimalType.d.ts +6 -28
  11. package/lib/types/AnimalType.js +14 -13
  12. package/lib/types/ArcaneBardTradition.d.ts +30 -10
  13. package/lib/types/ArcaneBardTradition.js +7 -13
  14. package/lib/types/ArcaneDancerTradition.d.ts +30 -10
  15. package/lib/types/ArcaneDancerTradition.js +7 -13
  16. package/lib/types/Aspect.d.ts +7 -33
  17. package/lib/types/Aspect.js +20 -13
  18. package/lib/types/Attribute.d.ts +8 -36
  19. package/lib/types/Attribute.js +23 -13
  20. package/lib/types/Blessing.d.ts +96 -113
  21. package/lib/types/Blessing.js +94 -13
  22. package/lib/types/Cantrip.d.ts +132 -183
  23. package/lib/types/Cantrip.js +159 -13
  24. package/lib/types/Ceremony.d.ts +645 -113
  25. package/lib/types/Ceremony.js +87 -13
  26. package/lib/types/CombatTechnique.d.ts +127 -0
  27. package/lib/types/CombatTechnique.js +101 -0
  28. package/lib/types/Condition.d.ts +52 -40
  29. package/lib/types/Condition.js +31 -13
  30. package/lib/types/Continent.d.ts +6 -30
  31. package/lib/types/Continent.js +15 -13
  32. package/lib/types/Culture.d.ts +142 -369
  33. package/lib/types/Culture.js +355 -13
  34. package/lib/types/DerivedCharacteristic.d.ts +76 -61
  35. package/lib/types/DerivedCharacteristic.js +45 -13
  36. package/lib/types/Disadvantage.d.ts +921 -58
  37. package/lib/types/Disadvantage.js +45 -13
  38. package/lib/types/Disease.d.ts +81 -43
  39. package/lib/types/Disease.js +15 -13
  40. package/lib/types/Element.d.ts +6 -28
  41. package/lib/types/Element.js +14 -13
  42. package/lib/types/ExperienceLevel.d.ts +13 -64
  43. package/lib/types/ExperienceLevel.js +43 -13
  44. package/lib/types/EyeColor.d.ts +6 -28
  45. package/lib/types/EyeColor.js +14 -13
  46. package/lib/types/FamiliarsTrick.d.ts +189 -266
  47. package/lib/types/FamiliarsTrick.js +193 -13
  48. package/lib/types/HairColor.d.ts +6 -28
  49. package/lib/types/HairColor.js +14 -13
  50. package/lib/types/Lessons.d.ts +180 -0
  51. package/lib/types/Lessons.js +212 -0
  52. package/lib/types/LiturgicalChant.d.ts +645 -113
  53. package/lib/types/LiturgicalChant.js +87 -13
  54. package/lib/types/Locale.d.ts +11 -36
  55. package/lib/types/Locale.js +1316 -13
  56. package/lib/types/MetaCondition.d.ts +52 -43
  57. package/lib/types/MetaCondition.js +32 -13
  58. package/lib/types/PactCategory.d.ts +74 -78
  59. package/lib/types/PactCategory.js +65 -13
  60. package/lib/types/Patron.d.ts +100 -197
  61. package/lib/types/Patron.js +195 -13
  62. package/lib/types/PatronCategory.d.ts +7 -36
  63. package/lib/types/PatronCategory.js +19 -13
  64. package/lib/types/PersonalityTrait.d.ts +80 -67
  65. package/lib/types/PersonalityTrait.js +51 -13
  66. package/lib/types/Profession.d.ts +1941 -665
  67. package/lib/types/Profession.js +610 -13
  68. package/lib/types/Property.d.ts +7 -34
  69. package/lib/types/Property.js +19 -13
  70. package/lib/types/Race.d.ts +163 -349
  71. package/lib/types/Race.js +287 -13
  72. package/lib/types/Region.d.ts +6 -28
  73. package/lib/types/Region.js +14 -13
  74. package/lib/types/Ritual.d.ts +642 -111
  75. package/lib/types/Ritual.js +88 -13
  76. package/lib/types/Service.d.ts +55 -43
  77. package/lib/types/Service.js +38 -13
  78. package/lib/types/SexPractice.d.ts +50 -47
  79. package/lib/types/SexPractice.js +32 -13
  80. package/lib/types/Skill.d.ts +112 -131
  81. package/lib/types/Skill.js +120 -10
  82. package/lib/types/SkillGroup.d.ts +8 -37
  83. package/lib/types/SkillGroup.js +23 -13
  84. package/lib/types/SkillModificationLevel.d.ts +31 -101
  85. package/lib/types/SkillModificationLevel.js +95 -10
  86. package/lib/types/SocialStatus.d.ts +7 -28
  87. package/lib/types/SocialStatus.js +18 -13
  88. package/lib/types/Spell.d.ts +642 -111
  89. package/lib/types/Spell.js +88 -13
  90. package/lib/types/State.d.ts +51 -36
  91. package/lib/types/State.js +24 -13
  92. package/lib/types/Talisman.d.ts +64 -70
  93. package/lib/types/Talisman.js +64 -13
  94. package/lib/types/TargetCategory.d.ts +7 -42
  95. package/lib/types/TargetCategory.js +19 -13
  96. package/lib/types/_Activatable.d.ts +1599 -1366
  97. package/lib/types/_Activatable.js +1392 -2
  98. package/lib/types/_ActivatableSelectOptionCategory.d.ts +657 -386
  99. package/lib/types/_ActivatableSelectOptionCategory.js +381 -1
  100. package/lib/types/_ActivatableSkill.d.ts +1150 -34
  101. package/lib/types/_ActivatableSkill.js +82 -1
  102. package/lib/types/_ActivatableSkillCastingTime.d.ts +66 -74
  103. package/lib/types/_ActivatableSkillCastingTime.js +92 -1
  104. package/lib/types/_ActivatableSkillCheckResultBased.d.ts +25 -33
  105. package/lib/types/_ActivatableSkillCheckResultBased.js +44 -1
  106. package/lib/types/_ActivatableSkillCost.d.ts +239 -255
  107. package/lib/types/_ActivatableSkillCost.js +224 -1
  108. package/lib/types/_ActivatableSkillDuration.d.ts +202 -135
  109. package/lib/types/_ActivatableSkillDuration.js +138 -1
  110. package/lib/types/_ActivatableSkillEffect.d.ts +16 -68
  111. package/lib/types/_ActivatableSkillEffect.js +65 -1
  112. package/lib/types/_ActivatableSkillRange.d.ts +61 -115
  113. package/lib/types/_ActivatableSkillRange.js +106 -1
  114. package/lib/types/_ActivatableSkillTargetCategory.d.ts +13 -39
  115. package/lib/types/_ActivatableSkillTargetCategory.js +29 -1
  116. package/lib/types/_AlternativeNames.d.ts +5 -11
  117. package/lib/types/_AlternativeNames.js +14 -1
  118. package/lib/types/_ArcaneTradition.d.ts +30 -28
  119. package/lib/types/_ArcaneTradition.js +14 -4
  120. package/lib/types/_Blessed.d.ts +8 -22
  121. package/lib/types/_Blessed.js +22 -1
  122. package/lib/types/_CommonnessRatedAdvantageDisadvantage.d.ts +4 -10
  123. package/lib/types/_CommonnessRatedAdvantageDisadvantage.js +12 -1
  124. package/lib/types/_Dice.d.ts +6 -19
  125. package/lib/types/_Dice.js +23 -1
  126. package/lib/types/_DiseasePoison.d.ts +56 -107
  127. package/lib/types/_DiseasePoison.js +107 -2
  128. package/lib/types/_Enhancements.d.ts +165 -59
  129. package/lib/types/_Enhancements.js +66 -1
  130. package/lib/types/_I18n.d.ts +14 -42
  131. package/lib/types/_I18n.js +55 -1
  132. package/lib/types/_Identifier.d.ts +160 -1274
  133. package/lib/types/_Identifier.js +304 -1
  134. package/lib/types/_IdentifierGroup.d.ts +281 -29
  135. package/lib/types/_IdentifierGroup.js +343 -1
  136. package/lib/types/_ImprovementCost.d.ts +7 -4
  137. package/lib/types/_ImprovementCost.js +10 -1
  138. package/lib/types/_Influence.d.ts +78 -49
  139. package/lib/types/_Influence.js +42 -4
  140. package/lib/types/_Prerequisite.d.ts +370 -106
  141. package/lib/types/_Prerequisite.js +136 -1
  142. package/lib/types/_ResponsiveText.d.ts +13 -54
  143. package/lib/types/_ResponsiveText.js +37 -1
  144. package/lib/types/_Sex.d.ts +5 -7
  145. package/lib/types/_Sex.js +8 -4
  146. package/lib/types/_SkillCheck.d.ts +10 -15
  147. package/lib/types/_SkillCheck.js +34 -1
  148. package/lib/types/_Spellwork.d.ts +5 -18
  149. package/lib/types/_Spellwork.js +13 -1
  150. package/lib/types/equipment/EquipmentPackage.d.ts +82 -51
  151. package/lib/types/equipment/EquipmentPackage.js +34 -13
  152. package/lib/types/equipment/item/Ammunition.d.ts +71 -32
  153. package/lib/types/equipment/item/Ammunition.js +37 -13
  154. package/lib/types/equipment/item/Animal.d.ts +71 -19
  155. package/lib/types/equipment/item/Animal.js +15 -13
  156. package/lib/types/equipment/item/AnimalCare.d.ts +86 -49
  157. package/lib/types/equipment/item/AnimalCare.js +51 -13
  158. package/lib/types/equipment/item/Armor.d.ts +120 -186
  159. package/lib/types/equipment/item/Armor.js +156 -13
  160. package/lib/types/equipment/item/BandageOrRemedy.d.ts +177 -37
  161. package/lib/types/equipment/item/BandageOrRemedy.js +31 -13
  162. package/lib/types/equipment/item/Book.d.ts +84 -61
  163. package/lib/types/equipment/item/Book.js +57 -13
  164. package/lib/types/equipment/item/CeremonialItem.d.ts +178 -42
  165. package/lib/types/equipment/item/CeremonialItem.js +36 -13
  166. package/lib/types/equipment/item/Clothes.d.ts +177 -7
  167. package/lib/types/equipment/item/Clothes.js +31 -13
  168. package/lib/types/equipment/item/ClothingPackage.d.ts +62 -0
  169. package/lib/types/equipment/item/ClothingPackage.js +21 -0
  170. package/lib/types/equipment/item/Container.d.ts +177 -7
  171. package/lib/types/equipment/item/Container.js +31 -13
  172. package/lib/types/equipment/item/Elixir.d.ts +102 -76
  173. package/lib/types/equipment/item/Elixir.js +66 -13
  174. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +170 -29
  175. package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +28 -13
  176. package/lib/types/equipment/item/GemOrPreciousStone.d.ts +72 -44
  177. package/lib/types/equipment/item/GemOrPreciousStone.js +41 -13
  178. package/lib/types/equipment/item/IlluminationLightSource.d.ts +186 -61
  179. package/lib/types/equipment/item/IlluminationLightSource.js +61 -13
  180. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +177 -0
  181. package/lib/types/equipment/item/IlluminationRefillOrSupply.js +32 -0
  182. package/lib/types/equipment/item/Jewelry.d.ts +73 -61
  183. package/lib/types/equipment/item/Jewelry.js +37 -13
  184. package/lib/types/equipment/item/Laboratory.d.ts +80 -0
  185. package/lib/types/equipment/item/Laboratory.js +28 -0
  186. package/lib/types/equipment/item/Liebesspielzeug.d.ts +177 -7
  187. package/lib/types/equipment/item/Liebesspielzeug.js +31 -13
  188. package/lib/types/equipment/item/LuxuryGood.d.ts +177 -37
  189. package/lib/types/equipment/item/LuxuryGood.js +31 -13
  190. package/lib/types/equipment/item/MagicalArtifact.d.ts +72 -40
  191. package/lib/types/equipment/item/MagicalArtifact.js +19 -13
  192. package/lib/types/equipment/item/MusicalInstrument.d.ts +174 -32
  193. package/lib/types/equipment/item/MusicalInstrument.js +27 -13
  194. package/lib/types/equipment/item/OrienteeringAid.d.ts +176 -7
  195. package/lib/types/equipment/item/OrienteeringAid.js +2 -14
  196. package/lib/types/equipment/item/Poison.d.ts +489 -354
  197. package/lib/types/equipment/item/Poison.js +388 -13
  198. package/lib/types/equipment/item/RopeOrChain.d.ts +176 -7
  199. package/lib/types/equipment/item/RopeOrChain.js +2 -14
  200. package/lib/types/equipment/item/Stationery.d.ts +176 -0
  201. package/lib/types/equipment/item/Stationery.js +2 -0
  202. package/lib/types/equipment/item/ThievesTool.d.ts +176 -7
  203. package/lib/types/equipment/item/ThievesTool.js +2 -14
  204. package/lib/types/equipment/item/ToolOfTheTrade.d.ts +82 -61
  205. package/lib/types/equipment/item/ToolOfTheTrade.js +27 -13
  206. package/lib/types/equipment/item/TravelGearOrTool.d.ts +177 -7
  207. package/lib/types/equipment/item/TravelGearOrTool.js +31 -13
  208. package/lib/types/equipment/item/Vehicle.d.ts +71 -19
  209. package/lib/types/equipment/item/Vehicle.js +15 -13
  210. package/lib/types/equipment/item/Weapon.d.ts +223 -166
  211. package/lib/types/equipment/item/Weapon.js +153 -13
  212. package/lib/types/equipment/item/WeaponAccessory.d.ts +177 -7
  213. package/lib/types/equipment/item/WeaponAccessory.js +31 -13
  214. package/lib/types/equipment/item/_Herbary.d.ts +42 -16
  215. package/lib/types/equipment/item/_Herbary.js +36 -1
  216. package/lib/types/equipment/item/_Item.d.ts +317 -160
  217. package/lib/types/equipment/item/_Item.js +144 -1
  218. package/lib/types/equipment/item/_MeleeWeapon.d.ts +37 -105
  219. package/lib/types/equipment/item/_MeleeWeapon.js +92 -1
  220. package/lib/types/equipment/item/_RangedWeapon.d.ts +25 -106
  221. package/lib/types/equipment/item/_RangedWeapon.js +85 -1
  222. package/lib/types/equipment/item/_Weapon.d.ts +13 -57
  223. package/lib/types/equipment/item/_Weapon.js +49 -1
  224. package/lib/types/equipment/item/sub/ArmorType.d.ts +7 -37
  225. package/lib/types/equipment/item/sub/ArmorType.js +18 -13
  226. package/lib/types/equipment/item/sub/Reach.d.ts +6 -28
  227. package/lib/types/equipment/item/sub/Reach.js +14 -13
  228. package/lib/types/index.d.ts +150 -0
  229. package/lib/types/index.js +150 -0
  230. package/lib/types/magicalActions/AnimistPower.d.ts +299 -238
  231. package/lib/types/magicalActions/AnimistPower.js +182 -13
  232. package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +6 -28
  233. package/lib/types/magicalActions/AnimistPower_Tribe.js +14 -13
  234. package/lib/types/magicalActions/Curse.d.ts +215 -162
  235. package/lib/types/magicalActions/Curse.js +126 -13
  236. package/lib/types/magicalActions/DominationRitual.d.ts +200 -145
  237. package/lib/types/magicalActions/DominationRitual.js +126 -13
  238. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +121 -135
  239. package/lib/types/magicalActions/ElvenMagicalSong.js +111 -13
  240. package/lib/types/magicalActions/GeodeRitual.d.ts +220 -180
  241. package/lib/types/magicalActions/GeodeRitual.js +135 -13
  242. package/lib/types/magicalActions/JesterTrick.d.ts +299 -177
  243. package/lib/types/magicalActions/JesterTrick.js +153 -13
  244. package/lib/types/magicalActions/MagicalDance.d.ts +125 -119
  245. package/lib/types/magicalActions/MagicalDance.js +113 -13
  246. package/lib/types/magicalActions/MagicalMelody.d.ts +116 -124
  247. package/lib/types/magicalActions/MagicalMelody.js +111 -13
  248. package/lib/types/magicalActions/MagicalRune.d.ts +300 -294
  249. package/lib/types/magicalActions/MagicalRune.js +278 -13
  250. package/lib/types/magicalActions/ZibiljaRitual.d.ts +411 -102
  251. package/lib/types/magicalActions/ZibiljaRitual.js +81 -13
  252. package/lib/types/magicalActions/_MusicTradition.d.ts +17 -30
  253. package/lib/types/magicalActions/_MusicTradition.js +43 -1
  254. package/lib/types/prerequisites/ConditionalPrerequisites.d.ts +24 -10
  255. package/lib/types/prerequisites/ConditionalPrerequisites.js +9 -1
  256. package/lib/types/prerequisites/DisplayOption.d.ts +13 -32
  257. package/lib/types/prerequisites/DisplayOption.js +27 -1
  258. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +1342 -215
  259. package/lib/types/prerequisites/PrerequisiteGroups.js +160 -1
  260. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +108 -31
  261. package/lib/types/prerequisites/single/ActivatablePrerequisite.js +32 -1
  262. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.d.ts +1 -2
  263. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.js +4 -1
  264. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +18 -26
  265. package/lib/types/prerequisites/single/AnimistPowerPrerequisite.js +24 -1
  266. package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +16 -13
  267. package/lib/types/prerequisites/single/CulturePrerequisite.js +16 -1
  268. package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +4 -39
  269. package/lib/types/prerequisites/single/EnhancementPrerequisite.js +12 -1
  270. package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +17 -16
  271. package/lib/types/prerequisites/single/InfluencePrerequisite.js +19 -1
  272. package/lib/types/prerequisites/single/PactPrerequisite.d.ts +18 -23
  273. package/lib/types/prerequisites/single/PactPrerequisite.js +24 -1
  274. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +20 -18
  275. package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.js +25 -1
  276. package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +16 -12
  277. package/lib/types/prerequisites/single/PublicationPrerequisite.js +15 -1
  278. package/lib/types/prerequisites/single/RacePrerequisite.d.ts +17 -16
  279. package/lib/types/prerequisites/single/RacePrerequisite.js +19 -1
  280. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.d.ts +51 -63
  281. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.js +80 -1
  282. package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +26 -18
  283. package/lib/types/prerequisites/single/RatedPrerequisite.js +19 -1
  284. package/lib/types/prerequisites/single/RatedSumPrerequisite.d.ts +17 -19
  285. package/lib/types/prerequisites/single/RatedSumPrerequisite.js +19 -1
  286. package/lib/types/prerequisites/single/RulePrerequisite.d.ts +19 -9
  287. package/lib/types/prerequisites/single/RulePrerequisite.js +15 -1
  288. package/lib/types/prerequisites/single/SexPrerequisite.d.ts +19 -10
  289. package/lib/types/prerequisites/single/SexPrerequisite.js +15 -1
  290. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.d.ts +7 -8
  291. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.js +17 -1
  292. package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +16 -13
  293. package/lib/types/prerequisites/single/SocialStatusPrerequisite.js +16 -1
  294. package/lib/types/prerequisites/single/StatePrerequisite.d.ts +16 -10
  295. package/lib/types/prerequisites/single/StatePrerequisite.js +15 -1
  296. package/lib/types/prerequisites/single/TextPrerequisite.d.ts +19 -49
  297. package/lib/types/prerequisites/single/TextPrerequisite.js +53 -1
  298. package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +37 -33
  299. package/lib/types/prerequisites/single/TraditionPrerequisite.js +42 -1
  300. package/lib/types/rule/CoreRule.d.ts +142 -310
  301. package/lib/types/rule/CoreRule.js +172 -13
  302. package/lib/types/rule/FocusRule.d.ts +54 -53
  303. package/lib/types/rule/FocusRule.js +37 -13
  304. package/lib/types/rule/FocusRule_Subject.d.ts +6 -29
  305. package/lib/types/rule/FocusRule_Subject.js +15 -13
  306. package/lib/types/rule/OptionalRule.d.ts +52 -41
  307. package/lib/types/rule/OptionalRule.js +28 -13
  308. package/lib/types/source/Publication.d.ts +50 -70
  309. package/lib/types/source/Publication.js +57 -13
  310. package/lib/types/source/_Erratum.d.ts +9 -23
  311. package/lib/types/source/_Erratum.js +19 -1
  312. package/lib/types/source/_PublicationRef.d.ts +161 -148
  313. package/lib/types/source/_PublicationRef.js +98 -1
  314. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +1034 -52
  315. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +36 -13
  316. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +917 -34
  317. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +33 -13
  318. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +917 -34
  319. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +33 -13
  320. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +917 -34
  321. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +33 -13
  322. package/lib/types/specialAbility/AncestorGlyph.d.ts +916 -38
  323. package/lib/types/specialAbility/AncestorGlyph.js +35 -13
  324. package/lib/types/specialAbility/BlessedTradition.d.ts +948 -147
  325. package/lib/types/specialAbility/BlessedTradition.js +131 -13
  326. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +980 -34
  327. package/lib/types/specialAbility/BrawlingSpecialAbility.js +32 -13
  328. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +918 -40
  329. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +33 -13
  330. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +1036 -45
  331. package/lib/types/specialAbility/CombatSpecialAbility.js +37 -13
  332. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +1035 -42
  333. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +37 -13
  334. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +980 -38
  335. package/lib/types/specialAbility/CommandSpecialAbility.js +32 -13
  336. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +915 -32
  337. package/lib/types/specialAbility/FamiliarSpecialAbility.js +30 -13
  338. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +915 -32
  339. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +30 -13
  340. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +917 -39
  341. package/lib/types/specialAbility/FatePointSpecialAbility.js +32 -13
  342. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +918 -44
  343. package/lib/types/specialAbility/GeneralSpecialAbility.js +33 -13
  344. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +915 -37
  345. package/lib/types/specialAbility/KarmaSpecialAbility.js +30 -13
  346. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +966 -36
  347. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +34 -13
  348. package/lib/types/specialAbility/LycantropicGift.d.ts +915 -32
  349. package/lib/types/specialAbility/LycantropicGift.js +30 -13
  350. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +966 -36
  351. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +34 -13
  352. package/lib/types/specialAbility/MagicalSign.d.ts +86 -39
  353. package/lib/types/specialAbility/MagicalSign.js +31 -13
  354. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +918 -43
  355. package/lib/types/specialAbility/MagicalSpecialAbility.js +33 -13
  356. package/lib/types/specialAbility/MagicalTradition.d.ts +938 -114
  357. package/lib/types/specialAbility/MagicalTradition.js +97 -13
  358. package/lib/types/specialAbility/PactGift.d.ts +992 -97
  359. package/lib/types/specialAbility/PactGift.js +118 -13
  360. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +917 -46
  361. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +41 -13
  362. package/lib/types/specialAbility/Sermon.d.ts +915 -32
  363. package/lib/types/specialAbility/Sermon.js +30 -13
  364. package/lib/types/specialAbility/SexSpecialAbility.d.ts +917 -34
  365. package/lib/types/specialAbility/SexSpecialAbility.js +32 -13
  366. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +915 -37
  367. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +30 -13
  368. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +964 -34
  369. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +32 -13
  370. package/lib/types/specialAbility/VampiricGift.d.ts +915 -37
  371. package/lib/types/specialAbility/VampiricGift.js +30 -13
  372. package/lib/types/specialAbility/Vision.d.ts +915 -32
  373. package/lib/types/specialAbility/Vision.js +30 -13
  374. package/lib/types/specialAbility/_Tradition.d.ts +5 -12
  375. package/lib/types/specialAbility/_Tradition.js +14 -1
  376. package/lib/types/specialAbility/sub/Language.d.ts +107 -117
  377. package/lib/types/specialAbility/sub/Language.js +87 -13
  378. package/lib/types/specialAbility/sub/Script.d.ts +61 -60
  379. package/lib/types/specialAbility/sub/Script.js +43 -13
  380. package/lib/types/specialAbility/sub/TradeSecret.d.ts +77 -48
  381. package/lib/types/specialAbility/sub/TradeSecret.js +36 -13
  382. package/lib/types/specialAbility/sub/_LanguageScript.d.ts +5 -11
  383. package/lib/types/specialAbility/sub/_LanguageScript.js +15 -1
  384. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +1141 -47
  385. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +36 -13
  386. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +1141 -47
  387. package/lib/types/traditionArtifacts/AttireEnchantment.js +36 -13
  388. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +1141 -47
  389. package/lib/types/traditionArtifacts/BowlEnchantment.js +36 -13
  390. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +1142 -61
  391. package/lib/types/traditionArtifacts/CauldronEnchantment.js +41 -13
  392. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +1141 -47
  393. package/lib/types/traditionArtifacts/ChronicleEnchantment.js +36 -13
  394. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +1153 -71
  395. package/lib/types/traditionArtifacts/DaggerRitual.js +71 -13
  396. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +1141 -47
  397. package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +36 -13
  398. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +1141 -47
  399. package/lib/types/traditionArtifacts/InstrumentEnchantment.js +36 -13
  400. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +1141 -47
  401. package/lib/types/traditionArtifacts/Krallenkettenzauber.js +36 -13
  402. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +1141 -47
  403. package/lib/types/traditionArtifacts/OrbEnchantment.js +36 -13
  404. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +1141 -47
  405. package/lib/types/traditionArtifacts/RingEnchantment.js +36 -13
  406. package/lib/types/traditionArtifacts/SickleRitual.d.ts +1141 -47
  407. package/lib/types/traditionArtifacts/SickleRitual.js +36 -13
  408. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +1141 -52
  409. package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +36 -13
  410. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +1145 -57
  411. package/lib/types/traditionArtifacts/StaffEnchantment.js +41 -13
  412. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +1141 -47
  413. package/lib/types/traditionArtifacts/ToyEnchantment.js +36 -13
  414. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +1141 -47
  415. package/lib/types/traditionArtifacts/Trinkhornzauber.js +36 -13
  416. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +1090 -42
  417. package/lib/types/traditionArtifacts/WandEnchantment.js +35 -13
  418. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +1141 -47
  419. package/lib/types/traditionArtifacts/WeaponEnchantment.js +36 -13
  420. package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +8 -52
  421. package/lib/types/traditionArtifacts/sub/AnimalShape.js +23 -13
  422. package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +6 -28
  423. package/lib/types/traditionArtifacts/sub/AnimalShapePath.js +14 -13
  424. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +8 -40
  425. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.js +22 -13
  426. package/lib/types/traditionArtifacts/sub/Brew.d.ts +6 -28
  427. package/lib/types/traditionArtifacts/sub/Brew.js +14 -13
  428. package/package.json +19 -16
  429. package/schema/Advantage.schema.json +3 -3
  430. package/schema/AnimalDisease.schema.json +4 -4
  431. package/schema/Aspect.schema.json +1 -1
  432. package/schema/Blessing.schema.json +3 -3
  433. package/schema/Cantrip.schema.json +4 -4
  434. package/schema/Ceremony.schema.json +9 -61
  435. package/schema/CombatTechnique_Close.schema.json +2 -2
  436. package/schema/CombatTechnique_Ranged.schema.json +2 -2
  437. package/schema/Condition.schema.json +4 -16
  438. package/schema/Continent.schema.json +1 -1
  439. package/schema/Culture.schema.json +46 -50
  440. package/schema/Disadvantage.schema.json +3 -3
  441. package/schema/Disease.schema.json +2 -2
  442. package/schema/FamiliarsTrick.schema.json +45 -71
  443. package/schema/Lessons_Curriculum.schema.json +26 -36
  444. package/schema/LiturgicalChant.schema.json +9 -61
  445. package/schema/Locale.schema.json +1 -1
  446. package/schema/MetaCondition.schema.json +5 -17
  447. package/schema/Patron.schema.json +60 -71
  448. package/schema/PatronCategory.schema.json +1 -1
  449. package/schema/PersonalityTrait.schema.json +2 -2
  450. package/schema/Profession.schema.json +68 -62
  451. package/schema/Property.schema.json +1 -1
  452. package/schema/Race.schema.json +17 -17
  453. package/schema/Ritual.schema.json +8 -60
  454. package/schema/SexPractice.schema.json +1 -1
  455. package/schema/Skill.schema.json +7 -7
  456. package/schema/SkillModificationLevel.schema.json +3 -3
  457. package/schema/Spell.schema.json +8 -60
  458. package/schema/UI.schema.json +272 -0
  459. package/schema/_Activatable.schema.json +52 -60
  460. package/schema/_ActivatableSelectOptionCategory.schema.json +31 -35
  461. package/schema/_ActivatableSkill.schema.json +16 -0
  462. package/schema/_ActivatableSkillCastingTime.schema.json +5 -5
  463. package/schema/_ActivatableSkillCost.schema.json +7 -7
  464. package/schema/_ActivatableSkillEffect.schema.json +20 -51
  465. package/schema/_ActivatableSkillRange.schema.json +2 -2
  466. package/schema/_ActivatableSkillTargetCategory.schema.json +8 -8
  467. package/schema/_Blessed.schema.json +1 -1
  468. package/schema/_DiseasePoison.schema.json +31 -23
  469. package/schema/_Enhancements.schema.json +1 -1
  470. package/schema/_I18n.schema.json +1 -1
  471. package/schema/_Identifier.schema.json +31 -1
  472. package/schema/_IdentifierGroup.schema.json +4 -1
  473. package/schema/_Influence.schema.json +2 -2
  474. package/schema/_Prerequisite.schema.json +15 -15
  475. package/schema/_ResponsiveText.schema.json +6 -6
  476. package/schema/_SkillCheck.schema.json +3 -14
  477. package/schema/_Spellwork.schema.json +1 -1
  478. package/schema/equipment/EquipmentPackage.schema.json +1 -1
  479. package/schema/equipment/item/Armor.schema.json +5 -5
  480. package/schema/equipment/item/BandageOrRemedy.schema.json +2 -2
  481. package/schema/equipment/item/Book.schema.json +1 -1
  482. package/schema/equipment/item/CeremonialItem.schema.json +2 -2
  483. package/schema/equipment/item/Elixir.schema.json +5 -25
  484. package/schema/equipment/item/EquipmentOfBlessedOnes.schema.json +1 -1
  485. package/schema/equipment/item/IlluminationLightSource.schema.json +4 -8
  486. package/schema/equipment/item/Jewelry.schema.json +1 -1
  487. package/schema/equipment/item/LuxuryGood.schema.json +2 -2
  488. package/schema/equipment/item/MusicalInstrument.schema.json +1 -1
  489. package/schema/equipment/item/Poison.schema.json +25 -17
  490. package/schema/equipment/item/ToolOfTheTrade.schema.json +1 -1
  491. package/schema/equipment/item/Weapon.schema.json +11 -11
  492. package/schema/equipment/item/_Item.schema.json +4 -4
  493. package/schema/equipment/item/_MeleeWeapon.schema.json +3 -7
  494. package/schema/equipment/item/_RangedWeapon.schema.json +5 -5
  495. package/schema/equipment/item/_Weapon.schema.json +2 -2
  496. package/schema/equipment/item/sub/ArmorType.schema.json +1 -1
  497. package/schema/magicalActions/AnimistPower.schema.json +10 -36
  498. package/schema/magicalActions/Curse.schema.json +5 -31
  499. package/schema/magicalActions/DominationRitual.schema.json +6 -32
  500. package/schema/magicalActions/ElvenMagicalSong.schema.json +4 -17
  501. package/schema/magicalActions/GeodeRitual.schema.json +7 -59
  502. package/schema/magicalActions/JesterTrick.schema.json +7 -59
  503. package/schema/magicalActions/MagicalDance.schema.json +7 -33
  504. package/schema/magicalActions/MagicalMelody.schema.json +7 -33
  505. package/schema/magicalActions/MagicalRune.schema.json +53 -146
  506. package/schema/magicalActions/ZibiljaRitual.schema.json +7 -59
  507. package/schema/magicalActions/_MusicTradition.schema.json +1 -1
  508. package/schema/magicalActions/_SkillReference.schema.json +2 -24
  509. package/schema/prerequisites/ConditionalPrerequisites.schema.json +1 -1
  510. package/schema/prerequisites/DisplayOption.schema.json +1 -1
  511. package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +1 -1
  512. package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +2 -2
  513. package/schema/prerequisites/single/PublicationPrerequisite.schema.json +1 -2
  514. package/schema/prerequisites/single/RacePrerequisite.schema.json +1 -1
  515. package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +2 -2
  516. package/schema/prerequisites/single/TextPrerequisite.schema.json +4 -4
  517. package/schema/prerequisites/single/TraditionPrerequisite.schema.json +4 -4
  518. package/schema/rule/CoreRule.schema.json +5 -5
  519. package/schema/rule/FocusRule.schema.json +1 -1
  520. package/schema/rule/OptionalRule.schema.json +1 -1
  521. package/schema/source/Publication.schema.json +2 -2
  522. package/schema/source/_PublicationRef.schema.json +9 -9
  523. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +2 -2
  524. package/schema/specialAbility/BlessedTradition.schema.json +74 -52
  525. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +2 -2
  526. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +155 -504
  527. package/schema/specialAbility/CommandSpecialAbility.schema.json +23 -20
  528. package/schema/specialAbility/FatePointSpecialAbility.schema.json +1 -1
  529. package/schema/specialAbility/GeneralSpecialAbility.schema.json +1 -1
  530. package/schema/specialAbility/KarmaSpecialAbility.schema.json +1 -1
  531. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +155 -504
  532. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +155 -504
  533. package/schema/specialAbility/MagicalSign.schema.json +2 -2
  534. package/schema/specialAbility/MagicalSpecialAbility.schema.json +1 -1
  535. package/schema/specialAbility/MagicalTradition.schema.json +8 -8
  536. package/schema/specialAbility/PactGift.schema.json +4 -4
  537. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +1 -1
  538. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +155 -504
  539. package/schema/specialAbility/VampiricGift.schema.json +1 -1
  540. package/schema/specialAbility/_Tradition.schema.json +1 -1
  541. package/schema/specialAbility/sub/Language.schema.json +4 -4
  542. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +1 -1
  543. package/schema/traditionArtifacts/AttireEnchantment.schema.json +1 -1
  544. package/schema/traditionArtifacts/BowlEnchantment.schema.json +1 -1
  545. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +2 -2
  546. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +1 -1
  547. package/schema/traditionArtifacts/DaggerRitual.schema.json +14 -18
  548. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +1 -1
  549. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +1 -1
  550. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +1 -1
  551. package/schema/traditionArtifacts/OrbEnchantment.schema.json +1 -1
  552. package/schema/traditionArtifacts/RingEnchantment.schema.json +1 -1
  553. package/schema/traditionArtifacts/SickleRitual.schema.json +1 -1
  554. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +2 -2
  555. package/schema/traditionArtifacts/StaffEnchantment.schema.json +2 -2
  556. package/schema/traditionArtifacts/ToyEnchantment.schema.json +1 -1
  557. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +1 -1
  558. package/schema/traditionArtifacts/WandEnchantment.schema.json +1 -1
  559. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +1 -1
  560. package/.prettierrc.yml +0 -3
  561. package/lib/cache/activatableSelectOptions.d.ts +0 -80
  562. package/lib/cache/activatableSelectOptions.js +0 -935
  563. package/lib/cache/ancestorBloodAdvantages.d.ts +0 -5
  564. package/lib/cache/ancestorBloodAdvantages.js +0 -18
  565. package/lib/cache/magicalAndBlessedAdvantagesAndDisadvantages.d.ts +0 -20
  566. package/lib/cache/magicalAndBlessedAdvantagesAndDisadvantages.js +0 -164
  567. package/lib/cache/newApplicationsAndUses.d.ts +0 -20
  568. package/lib/cache/newApplicationsAndUses.js +0 -126
  569. package/lib/cacheConfig.d.ts +0 -4
  570. package/lib/cacheConfig.js +0 -1
  571. package/lib/config/build.d.ts +0 -6
  572. package/lib/config/build.js +0 -8
  573. package/lib/config/cache.d.ts +0 -16
  574. package/lib/config/cache.js +0 -10
  575. package/lib/config/types.d.ts +0 -462
  576. package/lib/config/types.js +0 -306
  577. package/lib/errors.d.ts +0 -20
  578. package/lib/errors.js +0 -33
  579. package/lib/helpers/array.d.ts +0 -14
  580. package/lib/helpers/array.js +0 -15
  581. package/lib/helpers/i18n.d.ts +0 -1
  582. package/lib/helpers/i18n.js +0 -1
  583. package/lib/helpers/io.d.ts +0 -29
  584. package/lib/helpers/io.js +0 -51
  585. package/lib/helpers/objectPath.d.ts +0 -13
  586. package/lib/helpers/objectPath.js +0 -3
  587. package/lib/helpers/pair.d.ts +0 -20
  588. package/lib/helpers/pair.js +0 -20
  589. package/lib/helpers/result.d.ts +0 -57
  590. package/lib/helpers/result.js +0 -45
  591. package/lib/rendering/UI.d.ts +0 -14
  592. package/lib/rendering/UI.js +0 -28
  593. package/lib/typeConfig.d.ts +0 -10
  594. package/lib/typeConfig.js +0 -1
  595. package/lib/types/CombatTechnique_Close.d.ts +0 -73
  596. package/lib/types/CombatTechnique_Close.js +0 -14
  597. package/lib/types/CombatTechnique_Ranged.d.ts +0 -66
  598. package/lib/types/CombatTechnique_Ranged.js +0 -14
  599. package/lib/types/Kirchenpraegung.d.ts +0 -10
  600. package/lib/types/Kirchenpraegung.js +0 -14
  601. package/lib/types/Lessons_Curriculum.d.ts +0 -236
  602. package/lib/types/Lessons_Curriculum.js +0 -14
  603. package/lib/types/Lessons_Guideline.d.ts +0 -34
  604. package/lib/types/Lessons_Guideline.js +0 -14
  605. package/lib/types/UI.d.ts +0 -1216
  606. package/lib/types/UI.js +0 -14
  607. package/lib/types/_LocaleMap.d.ts +0 -10
  608. package/lib/types/_LocaleMap.js +0 -1
  609. package/lib/types/_NonEmptyString.d.ts +0 -9
  610. package/lib/types/_NonEmptyString.js +0 -1
  611. package/lib/types/_SimpleReferences.d.ts +0 -134
  612. package/lib/types/_SimpleReferences.js +0 -1
  613. package/lib/types/equipment/item/IlluminationRefillsOrSupplies.d.ts +0 -7
  614. package/lib/types/equipment/item/IlluminationRefillsOrSupplies.js +0 -14
  615. package/lib/types/equipment/item/Stationary.d.ts +0 -7
  616. package/lib/types/equipment/item/Stationary.js +0 -14
  617. package/lib/types/magicalActions/_SkillReference.d.ts +0 -11
  618. package/lib/types/magicalActions/_SkillReference.js +0 -1
  619. package/lib/validation/builders/integrity.d.ts +0 -56
  620. package/lib/validation/builders/integrity.js +0 -44
  621. package/lib/validation/builders/naming.d.ts +0 -15
  622. package/lib/validation/builders/naming.js +0 -17
  623. package/lib/validation/builders/schema.d.ts +0 -31
  624. package/lib/validation/builders/schema.js +0 -32
  625. package/lib/validation/filename.d.ts +0 -9
  626. package/lib/validation/filename.js +0 -10
  627. package/lib/validation/raw.d.ts +0 -8
  628. package/lib/validation/raw.js +0 -54
  629. package/lib/validation/schema.d.ts +0 -6
  630. package/lib/validation/schema.js +0 -32
@@ -1,11 +1,5 @@
1
- import { NonEmptyString } from "./_NonEmptyString.js";
2
- export type AlternativeName = {
3
- /**
4
- * An alternative name of the disease.
5
- */
6
- name: NonEmptyString;
7
- /**
8
- * The region where this alternative name is used.
9
- */
10
- region?: NonEmptyString;
11
- };
1
+ import { Object, String, TypeAlias } from "tsondb/schema/def";
2
+ export declare const AlternativeName: TypeAlias<"AlternativeName", Object<{
3
+ name: import("tsondb/schema/def").MemberDecl<String, true>;
4
+ region: import("tsondb/schema/def").MemberDecl<String, false>;
5
+ }>, []>;
@@ -1 +1,14 @@
1
- export {};
1
+ import { Object, Optional, Required, String, TypeAlias } from "tsondb/schema/def";
2
+ export const AlternativeName = TypeAlias(import.meta.url, {
3
+ name: "AlternativeName",
4
+ type: () => Object({
5
+ name: Required({
6
+ comment: "An alternative name of the disease.",
7
+ type: String({ minLength: 1 }),
8
+ }),
9
+ region: Optional({
10
+ comment: "The region where this alternative name is used.",
11
+ type: String({ minLength: 1 }),
12
+ }),
13
+ }),
14
+ });
@@ -1,28 +1,30 @@
1
- /**
2
- * @main ArcaneTradition
3
- */
4
- import { LocaleMap } from "./_LocaleMap.js";
5
- import { NonEmptyString } from "./_NonEmptyString.js";
6
- import { ArcaneTraditionPrerequisites } from "./_Prerequisite.js";
7
- /**
8
- * @title Arcane Tradition
9
- */
10
- export type ArcaneTradition = {
11
- /**
12
- * The arcane tradition's identifier. An unique, increasing integer.
13
- * @integer
14
- * @minimum 1
15
- */
16
- id: number;
17
- prerequisites: ArcaneTraditionPrerequisites;
18
- /**
19
- * All translations for the entry, identified by IETF language tag (BCP47).
20
- */
21
- translations: LocaleMap<ArcaneTraditionTranslation>;
22
- };
23
- export type ArcaneTraditionTranslation = {
24
- /**
25
- * The arcane tradition's name.
26
- */
27
- name: NonEmptyString;
28
- };
1
+ import { IncludeIdentifier, Object, String } from "tsondb/schema/def";
2
+ export declare const ArcaneTraditionType: <TN extends string>(translationName: TN) => () => Object<{
3
+ prerequisites: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ArcaneTraditionPrerequisites", IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").TypeAliasDecl<"PlainPrerequisites", import("tsondb/schema/def").ArrayType<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").EnumDecl<"PrerequisitesElement", {
4
+ Single: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>>;
5
+ Disjunction: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").TypeAliasDecl<"PrerequisitesDisjunction", Object<{
6
+ list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>>, true>;
7
+ display_option: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"DisplayOption", {
8
+ Hide: import("tsondb/schema/def").EnumCaseDecl<null>;
9
+ ReplaceWith: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ReplacementDisplayOption", Object<{
10
+ sentence_type: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"SentenceType", {
11
+ Standalone: import("tsondb/schema/def").EnumCaseDecl<null>;
12
+ Connected: import("tsondb/schema/def").EnumCaseDecl<null>;
13
+ }, []>>, false>;
14
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ReplacementDisplayOptionTranslation", {
15
+ replacement: import("tsondb/schema/def").MemberDecl<String, true>;
16
+ }>, true>;
17
+ }>, []>>>;
18
+ }, []>>, false>;
19
+ }>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>>;
20
+ Group: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").TypeAliasDecl<"PrerequisiteGroup", Object<{
21
+ list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>>, true>;
22
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"PrerequisiteGroupTranslation", {
23
+ text: import("tsondb/schema/def").MemberDecl<String, true>;
24
+ }>, true>;
25
+ }>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>>;
26
+ }, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>, []>>, true>;
27
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<TN, {
28
+ name: import("tsondb/schema/def").MemberDecl<String, true>;
29
+ }>, true>;
30
+ }>;
@@ -1,4 +1,14 @@
1
- /**
2
- * @main ArcaneTradition
3
- */
4
- export {};
1
+ import { IncludeIdentifier, Object, Required, String } from "tsondb/schema/def";
2
+ import { NestedLocaleMap } from "./Locale.js";
3
+ import { ArcaneTraditionPrerequisites } from "./_Prerequisite.js";
4
+ export const ArcaneTraditionType = (translationName) => () => Object({
5
+ prerequisites: Required({
6
+ type: IncludeIdentifier(ArcaneTraditionPrerequisites),
7
+ }),
8
+ translations: NestedLocaleMap(Required, translationName, Object({
9
+ name: Required({
10
+ comment: "The arcane tradition’s name.",
11
+ type: String({ minLength: 1 }),
12
+ }),
13
+ })),
14
+ });
@@ -1,22 +1,8 @@
1
- import { AspectReference, BlessedTraditionReference } from "./_SimpleReferences.js";
2
- export type SkillTradition = {
3
- tag: "GeneralAspect";
4
- general_aspect: AspectReference;
5
- } | {
6
- tag: "Tradition";
7
- tradition: SkillTraditionWithAspects;
8
- };
9
- export type SkillTraditionWithAspects = {
10
- /**
11
- * The blessed tradition.
12
- */
13
- tradition: BlessedTraditionReference;
14
- /**
15
- * The aspect(s) from the tradition the ceremony belongs to. Note that not
16
- * all traditions have aspects. Traditions with aspects must have at least one
17
- * aspect specified.
18
- * @minItems 1
19
- * @maxItems 2
20
- */
21
- aspects?: AspectReference[];
22
- };
1
+ import { Array, Enum, EnumCase, IncludeIdentifier, Object, TypeAlias } from "tsondb/schema/def";
2
+ export declare const LiturgyTradition: Enum<"LiturgyTradition", {
3
+ GeneralAspect: EnumCase<import("tsondb/schema/def").ReferenceIdentifierType>;
4
+ Tradition: EnumCase<IncludeIdentifier<[], TypeAlias<"LiturgyTraditionWithAspects", Object<{
5
+ tradition: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
6
+ aspects: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, false>;
7
+ }>, []>>>;
8
+ }, []>;
@@ -1 +1,22 @@
1
- export {};
1
+ import { Array, Enum, EnumCase, IncludeIdentifier, Object, Optional, Required, TypeAlias, } from "tsondb/schema/def";
2
+ import { AspectIdentifier, BlessedTraditionIdentifier } from "./_Identifier.js";
3
+ export const LiturgyTradition = Enum(import.meta.url, {
4
+ name: "LiturgyTradition",
5
+ values: () => ({
6
+ GeneralAspect: EnumCase({ type: AspectIdentifier() }),
7
+ Tradition: EnumCase({ type: IncludeIdentifier(LiturgyTraditionWithAspects) }),
8
+ }),
9
+ });
10
+ const LiturgyTraditionWithAspects = TypeAlias(import.meta.url, {
11
+ name: "LiturgyTraditionWithAspects",
12
+ type: () => Object({
13
+ tradition: Required({
14
+ comment: "The blessed tradition.",
15
+ type: BlessedTraditionIdentifier(),
16
+ }),
17
+ aspects: Optional({
18
+ comment: "The aspect(s) from the tradition the ceremony belongs to. Note that not all traditions have aspects. Traditions with aspects must have at least one aspect specified.",
19
+ type: Array(AspectIdentifier(), { minItems: 1, maxItems: 2 }),
20
+ }),
21
+ }),
22
+ });
@@ -1,10 +1,4 @@
1
- /**
2
- * Reference to a commonness-rated advantage or disadvantage. Commonness-rating terms used in the source books are strongly recommended, common, uncommon, suggested and unsuitable.
3
- * @title Commonness-rated Advantage/Disadvantage
4
- */
5
- export type CommonnessRatedAdvantageDisadvantage<Identifier> = {
6
- /**
7
- * The advantage's or disadvantage's identifier.
8
- */
9
- id: Identifier;
10
- };
1
+ import { Object, TypeArgument } from "tsondb/schema/def";
2
+ export declare const CommonnessRatedAdvantageDisadvantage: import("tsondb/schema/def").TypeAliasDecl<"CommonnessRatedAdvantageDisadvantage", Object<{
3
+ id: import("tsondb/schema/def").MemberDecl<TypeArgument<import("tsondb/schema/def").TypeParameter<"Identifier", import("tsondb/schema/def").Type>>, true>;
4
+ }>, [Identifier: import("tsondb/schema/def").TypeParameter<"Identifier", import("tsondb/schema/def").Type>]>;
@@ -1 +1,12 @@
1
- export {};
1
+ import { GenTypeAlias, Object, Param, Required, TypeArgument } from "tsondb/schema/def";
2
+ export const CommonnessRatedAdvantageDisadvantage = GenTypeAlias(import.meta.url, {
3
+ name: "CommonnessRatedAdvantageDisadvantage",
4
+ comment: "Reference to a commonness-rated advantage or disadvantage. Commonness-rating terms used in the source books are strongly recommended, common, uncommon, suggested and unsuitable.",
5
+ parameters: [Param("Identifier")],
6
+ type: Identifier => Object({
7
+ id: Required({
8
+ comment: "The advantage's or disadvantage's identifier.",
9
+ type: TypeArgument(Identifier),
10
+ }),
11
+ }),
12
+ });
@@ -1,19 +1,6 @@
1
- /**
2
- * @title Dice
3
- */
4
- export type Dice = {
5
- /**
6
- * Number of dice of the same type. Example: 2 in 2D6.
7
- * @integer
8
- * @minimum 1
9
- */
10
- number: number;
11
- /**
12
- * Number of sides on every die. Example: 6 in 2D6.
13
- */
14
- sides: DieType;
15
- };
16
- /**
17
- * Number of sides on every dice. Example: 6 in 2D6.
18
- */
19
- export type DieType = 3 | 6 | 20;
1
+ import { IncludeIdentifier, Integer, Object, TypeAlias } from "tsondb/schema/def";
2
+ export declare const Dice: TypeAlias<"Dice", Object<{
3
+ number: import("tsondb/schema/def").MemberDecl<Integer, true>;
4
+ sides: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"DieType", Integer, []>>, true>;
5
+ }>, []>;
6
+ export declare const DieType: TypeAlias<"DieType", Integer, []>;
@@ -1 +1,23 @@
1
- export {};
1
+ import { IncludeIdentifier, Integer, Object, Required, TypeAlias } from "tsondb/schema/def";
2
+ export const Dice = TypeAlias(import.meta.url, {
3
+ name: "Dice",
4
+ type: () => Object({
5
+ number: Required({
6
+ comment: "Number of dice of the same type. Example: 2 in 2D6.",
7
+ type: Integer({
8
+ minimum: 1,
9
+ }),
10
+ }),
11
+ sides: Required({
12
+ comment: "Number of sides on every die. Example: 6 in 2D6.",
13
+ type: IncludeIdentifier(DieType),
14
+ }),
15
+ }),
16
+ });
17
+ export const DieType = TypeAlias(import.meta.url, {
18
+ name: "DieType",
19
+ comment: "Number of sides on every die. Example: 6 in 2D6.",
20
+ type: () => Integer({
21
+ minimum: 2,
22
+ }),
23
+ });
@@ -1,110 +1,59 @@
1
1
  /**
2
2
  * This file defines some shared types for different diseases and poisons.
3
- * @title Disease (shared)
4
3
  */
5
- import { AlternativeName } from "./_AlternativeNames.js";
6
- import { LocaleMap } from "./_LocaleMap.js";
7
- import { NonEmptyMarkdown, NonEmptyString } from "./_NonEmptyString.js";
8
- import { Errata } from "./source/_Erratum.js";
9
- /**
10
- * Depending on the disease, apply Spirit or Toughness as a penalty to the
11
- * disease roll. It may also happen that the lower of both is applied as a
12
- * penalty.
13
- */
14
- export type Resistance = "Spirit" | "Toughness" | "LowerOfSpiritAndToughness";
15
- /**
16
- * What causes the disease? The GM rolls 1D20 to see if a character gets
17
- * infected. If the infection check succeeds, the GM makes a disease check to
18
- * determine the severity of the infection.
19
- */
20
- export type Cause = {
21
- /**
22
- * The chance to get infected by this cause, in percent.
23
- * @integer
24
- * @minimum 5
25
- * @multipleOf 5
26
- * @maximum 100
27
- */
28
- chance?: number;
29
- /**
30
- * All translations for the entry, identified by IETF language tag (BCP47).
31
- */
32
- translations: LocaleMap<CauseTranslation>;
33
- };
34
- export type CauseTranslation = {
35
- /**
36
- * The name of the cause.
37
- * @minLength 1
38
- */
39
- name: string;
40
- /**
41
- * The chance to get infected by this cause. If present for this
42
- * language, this overrides the universal `chance` field; they cannot be
43
- * used at the same time.
44
- */
45
- chance?: NonEmptyString;
46
- /**
47
- * An additional note about this cause.
48
- */
49
- note?: NonEmptyString;
50
- };
51
- export type DiseaseTranslation = {
52
- /**
53
- * The name of the disease.
54
- */
55
- name: NonEmptyString;
56
- /**
57
- * A list of alternative names.
58
- * @minItems 1
59
- */
60
- alternative_names?: AlternativeName[];
61
- /**
62
- * The disease’s progress, in detail.
63
- */
64
- progress: NonEmptyMarkdown;
65
- /**
66
- * After infection, how much time passes before symptoms appear?
67
- */
68
- incubation_time: NonEmptyString;
69
- /**
70
- * The damage caused by the disease. If the disease check fails, apply the
71
- * lessened effects.
72
- */
73
- damage: Reduceable;
74
- /**
75
- * The duration of the disease. If the disease check fails, use the
76
- * lessened duration.
77
- */
78
- duration: Reduceable;
79
- /**
80
- * Special information about the disease.
81
- */
82
- special?: NonEmptyMarkdown;
83
- /**
84
- * Methods known to lessen the disease’s progress or relieve symptoms.
85
- */
86
- treatment: NonEmptyMarkdown;
87
- /**
88
- * Known remedies for the disease.
89
- */
90
- cure: NonEmptyMarkdown;
91
- errata?: Errata;
92
- };
93
- /**
94
- * An effect or other parameter that may be reduced by a failed disease check
95
- * for lessening or a degraded poison.
96
- *
97
- * This streamlines the wording for diseases and poison by using a unified
98
- * wording for *lessened* (disease) and *degraded* (poison).
99
- */
100
- export type Reduceable<Content = NonEmptyMarkdown> = {
101
- /**
102
- * The default value. In the source, it's the text before the slash.
103
- */
104
- default: Content;
105
- /**
106
- * The reduced value. In the source, it's the text after the slash. Some
107
- * entries may not have a reduced value.
108
- */
109
- reduced?: Content;
110
- };
4
+ import { Array, Enum, EnumCase, IncludeIdentifier, Integer, Object, String, TypeAlias, TypeArgument } from "tsondb/schema/def";
5
+ export declare const level: import("tsondb/schema/def").MemberDecl<Integer, true>;
6
+ export declare const Resistance: Enum<"Resistance", {
7
+ Spirit: EnumCase<null>;
8
+ Toughness: EnumCase<null>;
9
+ LowerOfSpiritAndToughness: EnumCase<null>;
10
+ }, []>;
11
+ export declare const resistance: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"Resistance", {
12
+ Spirit: EnumCase<null>;
13
+ Toughness: EnumCase<null>;
14
+ LowerOfSpiritAndToughness: EnumCase<null>;
15
+ }, []>>, true>;
16
+ export declare const Cause: TypeAlias<"Cause", Object<{
17
+ chance: import("tsondb/schema/def").MemberDecl<Integer, false>;
18
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"CauseTranslation", {
19
+ name: import("tsondb/schema/def").MemberDecl<String, true>;
20
+ chance: import("tsondb/schema/def").MemberDecl<String, false>;
21
+ note: import("tsondb/schema/def").MemberDecl<String, false>;
22
+ }>, true>;
23
+ }>, []>;
24
+ export declare const cause: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"Cause", Object<{
25
+ chance: import("tsondb/schema/def").MemberDecl<Integer, false>;
26
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"CauseTranslation", {
27
+ name: import("tsondb/schema/def").MemberDecl<String, true>;
28
+ chance: import("tsondb/schema/def").MemberDecl<String, false>;
29
+ note: import("tsondb/schema/def").MemberDecl<String, false>;
30
+ }>, true>;
31
+ }>, []>>>, true>;
32
+ export declare const Reduceable: TypeAlias<"Reduceable", Object<{
33
+ default: import("tsondb/schema/def").MemberDecl<TypeArgument<import("tsondb/schema/def").TypeParameter<"Content", import("tsondb/schema/def").Type>>, true>;
34
+ reduced: import("tsondb/schema/def").MemberDecl<TypeArgument<import("tsondb/schema/def").TypeParameter<"Content", import("tsondb/schema/def").Type>>, false>;
35
+ }>, [Content: import("tsondb/schema/def").TypeParameter<"Content", import("tsondb/schema/def").Type>]>;
36
+ export declare const DiseaseTranslation: Object<{
37
+ name: import("tsondb/schema/def").MemberDecl<String, true>;
38
+ alternative_names: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"AlternativeName", Object<{
39
+ name: import("tsondb/schema/def").MemberDecl<String, true>;
40
+ region: import("tsondb/schema/def").MemberDecl<String, false>;
41
+ }>, []>>>, false>;
42
+ progress: import("tsondb/schema/def").MemberDecl<String, true>;
43
+ incubation_time: import("tsondb/schema/def").MemberDecl<String, true>;
44
+ damage: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], TypeAlias<"Reduceable", Object<{
45
+ default: import("tsondb/schema/def").MemberDecl<TypeArgument<import("tsondb/schema/def").TypeParameter<"Content", import("tsondb/schema/def").Type>>, true>;
46
+ reduced: import("tsondb/schema/def").MemberDecl<TypeArgument<import("tsondb/schema/def").TypeParameter<"Content", import("tsondb/schema/def").Type>>, false>;
47
+ }>, [Content: import("tsondb/schema/def").TypeParameter<"Content", import("tsondb/schema/def").Type>]>>, true>;
48
+ duration: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], TypeAlias<"Reduceable", Object<{
49
+ default: import("tsondb/schema/def").MemberDecl<TypeArgument<import("tsondb/schema/def").TypeParameter<"Content", import("tsondb/schema/def").Type>>, true>;
50
+ reduced: import("tsondb/schema/def").MemberDecl<TypeArgument<import("tsondb/schema/def").TypeParameter<"Content", import("tsondb/schema/def").Type>>, false>;
51
+ }>, [Content: import("tsondb/schema/def").TypeParameter<"Content", import("tsondb/schema/def").Type>]>>, true>;
52
+ special: import("tsondb/schema/def").MemberDecl<String, false>;
53
+ treatment: import("tsondb/schema/def").MemberDecl<String, true>;
54
+ cure: import("tsondb/schema/def").MemberDecl<String, true>;
55
+ errata: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Errata", Array<IncludeIdentifier<[], TypeAlias<"Erratum", Object<{
56
+ date: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").DateType, true>;
57
+ description: import("tsondb/schema/def").MemberDecl<String, true>;
58
+ }>, []>>>, []>>, false>;
59
+ }>;
@@ -1,5 +1,110 @@
1
1
  /**
2
2
  * This file defines some shared types for different diseases and poisons.
3
- * @title Disease (shared)
4
3
  */
5
- export {};
4
+ import { Array, Enum, EnumCase, GenIncludeIdentifier, GenTypeAlias, IncludeIdentifier, Integer, Object, Optional, Param, Required, String, TypeAlias, TypeArgument, } from "tsondb/schema/def";
5
+ import { NestedLocaleMap } from "./Locale.js";
6
+ import { AlternativeName } from "./_AlternativeNames.js";
7
+ import { Errata } from "./source/_Erratum.js";
8
+ export const level = Required({
9
+ comment: "The disease’s level.",
10
+ type: Integer({ minimum: 1 }),
11
+ });
12
+ export const Resistance = Enum(import.meta.url, {
13
+ name: "Resistance",
14
+ comment: "Depending on the disease, apply Spirit or Toughness as a penalty to the disease roll. It may also happen that the lower of both is applied as a penalty.",
15
+ values: () => ({
16
+ Spirit: EnumCase({ type: null }),
17
+ Toughness: EnumCase({ type: null }),
18
+ LowerOfSpiritAndToughness: EnumCase({ type: null }),
19
+ }),
20
+ });
21
+ export const resistance = Required({
22
+ comment: "Depending on the disease, apply Spirit or Toughness as a penalty to the disease roll. It may also happen that the lower of both is applied as a penalty.",
23
+ type: IncludeIdentifier(Resistance),
24
+ });
25
+ export const Cause = TypeAlias(import.meta.url, {
26
+ name: "Cause",
27
+ comment: "What causes the disease? The GM rolls 1D20 to see if a character gets infected. If the infection check succeeds, the GM makes a disease check to determine the severity of the infection.",
28
+ type: () => Object({
29
+ chance: Optional({
30
+ comment: "The chance to get infected by this cause, in percent. Some causes do not have a specific chance.",
31
+ type: Integer({ minimum: 5, multipleOf: 5, maximum: 100 }),
32
+ }),
33
+ translations: NestedLocaleMap(Required, "CauseTranslation", Object({
34
+ name: Required({
35
+ comment: "The cause’s name.",
36
+ type: String({ minLength: 1 }),
37
+ }),
38
+ chance: Optional({
39
+ comment: "The chance to get infected by this cause. If present for this language, this overrides the universal `chance` field; they cannot be used at the same time.",
40
+ type: String({ minLength: 1 }),
41
+ }),
42
+ note: Optional({
43
+ comment: "An additional note about this cause.",
44
+ type: String({ minLength: 1 }),
45
+ }),
46
+ })),
47
+ }),
48
+ });
49
+ export const cause = Required({
50
+ comment: "What causes the disease? The GM rolls 1D20 to see if a character gets infected. If the infection check succeeds, the GM makes a disease check to determine the severity of the infection.",
51
+ type: Array(IncludeIdentifier(Cause), { minItems: 1 }),
52
+ });
53
+ export const Reduceable = GenTypeAlias(import.meta.url, {
54
+ name: "Reduceable",
55
+ comment: `An effect or other parameter that may be reduced by a failed disease check for lessening or a degraded poison.
56
+
57
+ This streamlines the wording for diseases and poison by using a unified wording for *lessened* (disease) and *degraded* (poison).`,
58
+ parameters: [Param("Content")],
59
+ type: Content => Object({
60
+ default: Required({
61
+ comment: "The default value. In the source, it's the text before the slash.",
62
+ type: TypeArgument(Content),
63
+ }),
64
+ reduced: Optional({
65
+ comment: "The reduced value. In the source, it's the text after the slash. Some entries may not have a reduced value.",
66
+ type: TypeArgument(Content),
67
+ }),
68
+ }),
69
+ });
70
+ export const DiseaseTranslation = Object({
71
+ name: Required({
72
+ comment: "The disease’s name.",
73
+ type: String({ minLength: 1 }),
74
+ }),
75
+ alternative_names: Optional({
76
+ comment: "A list of alternative names.",
77
+ type: Array(IncludeIdentifier(AlternativeName), { minItems: 1 }),
78
+ }),
79
+ progress: Required({
80
+ comment: "The disease’s progress, in detail.",
81
+ type: String({ minLength: 1, isMarkdown: true }),
82
+ }),
83
+ incubation_time: Required({
84
+ comment: "After infection, how much time passes before symptoms appear?",
85
+ type: String({ minLength: 1 }),
86
+ }),
87
+ damage: Required({
88
+ comment: "The damage caused by the disease. If the disease check fails, apply the lessened effects.",
89
+ type: GenIncludeIdentifier(Reduceable, [String({ minLength: 1, isMarkdown: true })]),
90
+ }),
91
+ duration: Required({
92
+ comment: "The duration of the disease. If the disease check fails, use the lessened duration.",
93
+ type: GenIncludeIdentifier(Reduceable, [String({ minLength: 1, isMarkdown: true })]),
94
+ }),
95
+ special: Optional({
96
+ comment: "Special information about the disease.",
97
+ type: String({ minLength: 1, isMarkdown: true }),
98
+ }),
99
+ treatment: Required({
100
+ comment: "Methods known to lessen the disease’s progress or relieve symptoms.",
101
+ type: String({ minLength: 1, isMarkdown: true }),
102
+ }),
103
+ cure: Required({
104
+ comment: "Known remedies for the disease.",
105
+ type: String({ minLength: 1, isMarkdown: true }),
106
+ }),
107
+ errata: Optional({
108
+ type: IncludeIdentifier(Errata),
109
+ }),
110
+ });