@optolith/database-schema 0.44.1 → 0.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/gen/types.d.ts +679 -240
  3. package/lib/main.js +3 -0
  4. package/lib/types/Advantage.js +2 -1
  5. package/lib/types/AnimalDisease.d.ts +1 -0
  6. package/lib/types/Culture.js +1 -0
  7. package/lib/types/Disadvantage.js +2 -1
  8. package/lib/types/Disease.d.ts +1 -0
  9. package/lib/types/Locale.d.ts +1 -0
  10. package/lib/types/Locale.js +1 -0
  11. package/lib/types/_ActivatableNames.d.ts +14 -0
  12. package/lib/types/_ActivatableNames.js +12 -0
  13. package/lib/types/_AlternativeNames.d.ts +1 -0
  14. package/lib/types/_AlternativeNames.js +5 -0
  15. package/lib/types/_DiseasePoison.d.ts +1 -0
  16. package/lib/types/_Identifier.d.ts +3 -0
  17. package/lib/types/_Identifier.js +6 -0
  18. package/lib/types/_ResponsiveText.d.ts +17 -0
  19. package/lib/types/_ResponsiveText.js +17 -0
  20. package/lib/types/equipment/item/Elixir.d.ts +1 -0
  21. package/lib/types/equipment/item/HerbalAid.d.ts +64 -0
  22. package/lib/types/equipment/item/HerbalAid.js +56 -0
  23. package/lib/types/equipment/item/Plant.d.ts +183 -0
  24. package/lib/types/equipment/item/Plant.js +222 -0
  25. package/lib/types/equipment/item/Poison.d.ts +1 -0
  26. package/lib/types/equipment/item/_Herbary.d.ts +7 -0
  27. package/lib/types/equipment/item/_Herbary.js +11 -0
  28. package/lib/types/equipment/item/sub/Biome.d.ts +6 -0
  29. package/lib/types/equipment/item/sub/Biome.js +21 -0
  30. package/lib/types/index.d.ts +4 -1
  31. package/lib/types/index.js +3 -0
  32. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +2 -1
  33. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +2 -1
  34. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +2 -1
  35. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +2 -1
  36. package/lib/types/specialAbility/AncestorGlyph.js +2 -1
  37. package/lib/types/specialAbility/BlessedTradition.js +2 -0
  38. package/lib/types/specialAbility/BrawlingSpecialAbility.js +2 -1
  39. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +2 -1
  40. package/lib/types/specialAbility/CombatSpecialAbility.js +2 -1
  41. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +2 -1
  42. package/lib/types/specialAbility/CommandSpecialAbility.js +2 -1
  43. package/lib/types/specialAbility/FamiliarSpecialAbility.js +2 -1
  44. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +2 -1
  45. package/lib/types/specialAbility/FatePointSpecialAbility.js +2 -1
  46. package/lib/types/specialAbility/GeneralSpecialAbility.js +2 -1
  47. package/lib/types/specialAbility/KarmaSpecialAbility.js +2 -1
  48. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +2 -1
  49. package/lib/types/specialAbility/LycantropicGift.js +2 -1
  50. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +2 -1
  51. package/lib/types/specialAbility/MagicalSign.js +2 -0
  52. package/lib/types/specialAbility/MagicalSpecialAbility.js +2 -1
  53. package/lib/types/specialAbility/MagicalTradition.js +2 -1
  54. package/lib/types/specialAbility/PactGift.js +2 -1
  55. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +2 -1
  56. package/lib/types/specialAbility/Sermon.js +2 -1
  57. package/lib/types/specialAbility/SexSpecialAbility.js +2 -1
  58. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +2 -1
  59. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +2 -1
  60. package/lib/types/specialAbility/VampiricGift.js +2 -1
  61. package/lib/types/specialAbility/Vision.js +2 -1
  62. package/lib/types/specialAbility/sub/Language.d.ts +2 -1
  63. package/lib/types/specialAbility/sub/Language.js +1 -1
  64. package/lib/types/specialAbility/sub/Script.d.ts +1 -0
  65. package/package.json +1 -1
package/gen/types.d.ts CHANGED
@@ -29,6 +29,7 @@ export type EntityMap = {
29
29
  Bannzeichen: Bannzeichen
30
30
  BannzeichenOption: BannzeichenOption
31
31
  Beutelzauber: Beutelzauber
32
+ Biome: Biome
32
33
  BlessedTradition: BlessedTradition
33
34
  Blessing: Blessing
34
35
  Book: Book
@@ -81,6 +82,7 @@ export type EntityMap = {
81
82
  Guideline: Guideline
82
83
  HairColor: HairColor
83
84
  Haubenzauber: Haubenzauber
85
+ HerbalAid: HerbalAid
84
86
  HomunculusType: HomunculusType
85
87
  IlluminationLightSource: IlluminationLightSource
86
88
  IlluminationRefillOrSupply: IlluminationRefillOrSupply
@@ -124,6 +126,7 @@ export type EntityMap = {
124
126
  Patron: Patron
125
127
  PatronCategory: PatronCategory
126
128
  PersonalityTrait: PersonalityTrait
129
+ Plant: Plant
127
130
  PlayerType: PlayerType
128
131
  Poison: Poison
129
132
  Profession: Profession
@@ -317,6 +320,7 @@ export type EnumMap = {
317
320
  GoblinRitualPerformanceParameters: GoblinRitualPerformanceParameters
318
321
  GoblinRitualRangeValue: GoblinRitualRangeValue
319
322
  GradientColor: GradientColor
323
+ HerbalAidCombatUse: HerbalAidCombatUse
320
324
  HitZone: HitZone
321
325
  ImprovementCost: ImprovementCost
322
326
  IndefiniteArcaneEnergyCostModifierArithmetic: IndefiniteArcaneEnergyCostModifierArithmetic
@@ -365,6 +369,9 @@ export type EnumMap = {
365
369
  PenaltyByAttackReplacement: PenaltyByAttackReplacement
366
370
  PenaltySelectionOptions: PenaltySelectionOptions
367
371
  PersonalityTraitPrerequisiteGroup: PersonalityTraitPrerequisiteGroup
372
+ PlantPrice: PlantPrice
373
+ PlantRarity: PlantRarity
374
+ PlantRecipe: PlantRecipe
368
375
  PoisonApplicationType: PoisonApplicationType
369
376
  PoisonCost: PoisonCost
370
377
  PoisonDuration: PoisonDuration
@@ -578,6 +585,7 @@ export type TypeAliasMap = {
578
585
  ElementsSelectOptionCategory: ElementsSelectOptionCategory
579
586
  ElixirEffectForEachQualityLevel: ElixirEffectForEachQualityLevel
580
587
  ElixirPlainEffect: ElixirPlainEffect
588
+ ElixirRecipe: ElixirRecipe
581
589
  ElvenMagicalSongCost: ElvenMagicalSongCost
582
590
  ElvenMagicalSongPerformanceParameters: ElvenMagicalSongPerformanceParameters
583
591
  ElvenMagicalSongPermanentCost: ElvenMagicalSongPermanentCost
@@ -645,6 +653,7 @@ export type TypeAliasMap = {
645
653
  HasAdditionalPenalties: HasAdditionalPenalties
646
654
  HeadHitZone: HeadHitZone
647
655
  HeadHitZoneCombinationPossibilities: HeadHitZoneCombinationPossibilities
656
+ HerbalAidRecipe: HerbalAidRecipe
648
657
  Immediate: Immediate
649
658
  ImprovisedWeapon: ImprovisedWeapon
650
659
  IndefiniteArcaneEnergyCost: IndefiniteArcaneEnergyCost
@@ -658,8 +667,10 @@ export type TypeAliasMap = {
658
667
  IndefiniteFamiliarsTrickProperty: IndefiniteFamiliarsTrickProperty
659
668
  IndefiniteMagicalDanceCost: IndefiniteMagicalDanceCost
660
669
  IndefiniteOneTimeCost: IndefiniteOneTimeCost
670
+ IndefinitePlantPrice: IndefinitePlantPrice
661
671
  IndefinitePoisonCost: IndefinitePoisonCost
662
672
  IndefinitePoisonTime: IndefinitePoisonTime
673
+ IndefiniteRecipe: IndefiniteRecipe
663
674
  IndefiniteSpecializations: IndefiniteSpecializations
664
675
  InfluenceEffect: InfluenceEffect
665
676
  InfluencePrerequisite: InfluencePrerequisite
@@ -748,7 +759,11 @@ export type TypeAliasMap = {
748
759
  PlainCommonProfessions: PlainCommonProfessions
749
760
  PlainGeneralPrerequisites: PlainGeneralPrerequisites
750
761
  PlainPrerequisites: PlainPrerequisites<unknown>
762
+ PlantEffect: PlantEffect
763
+ PlantOccurences: PlantOccurences
764
+ PlantOccurrence: PlantOccurrence
751
765
  PlantPoison: PlantPoison
766
+ PoisonRecipe: PoisonRecipe
752
767
  Preconditions: Preconditions
753
768
  PrerequisiteForLevel: PrerequisiteForLevel<unknown>
754
769
  PrerequisiteGroup: PrerequisiteGroup<unknown>
@@ -2594,6 +2609,7 @@ export interface Locale {
2594
2609
  "no Liturgies totaling {$apValue} AP": string & { __params: { "apValue": StringableTranslationParameter } }
2595
2610
  "{$apValue} AP to improve other {$skillsOfGroup}": string & { __params: { "apValue": StringableTranslationParameter; "skillsOfGroup": StringableTranslationParameter } }
2596
2611
  "{$apValue} AP to distribute among the following skills: {$list}": string & { __params: { "apValue": StringableTranslationParameter; "list": StringableTranslationParameter } }
2612
+ "maximum SR per skill: {$maxSR}": string & { __params: { "maxSR": StringableTranslationParameter } }
2597
2613
  "no AP to improve other {$skillsOfGroup}": string & { __params: { "skillsOfGroup": StringableTranslationParameter } }
2598
2614
  ".input {$count :number} {{{$count} cantrips}}": string & { __params: { "count": number } }
2599
2615
  "{$count} from the following list": string & { __params: { "count": StringableTranslationParameter } }
@@ -5334,8 +5350,220 @@ export interface AlternativeName {
5334
5350
  * The region where this alternative name is used.
5335
5351
  */
5336
5352
  region?: string
5353
+
5354
+ /**
5355
+ * The language of that alternative name if any.
5356
+ */
5357
+ language?: Language_ID
5358
+ }
5359
+
5360
+ export interface Language {
5361
+ /**
5362
+ * The continents this language is present on.
5363
+ */
5364
+ continent: AssociatedContinent[]
5365
+
5366
+ /**
5367
+ * If applicable, a description of what may be a specialization.
5368
+ */
5369
+ customSpecializations?: IndefiniteSpecializations
5370
+
5371
+ prerequisites?: LanguagePrerequisites
5372
+
5373
+ /**
5374
+ * The maximum possible level of the language. Only specified if lower than default of 3.
5375
+ */
5376
+ max_level?: number
5377
+
5378
+ /**
5379
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
5380
+ */
5381
+ src: PublicationRefs
5382
+
5383
+ /**
5384
+ * All translations for the entry, identified by IETF language tag (BCP47).
5385
+ */
5386
+ translations: {
5387
+ [localeId: string]: LanguageTranslation
5388
+ }
5389
+ }
5390
+
5391
+ /**
5392
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
5393
+ */
5394
+ export type Language_ID = string
5395
+
5396
+ export interface LanguageTranslation {
5397
+ /**
5398
+ * The language’s name.
5399
+ */
5400
+ name: string
5401
+
5402
+ /**
5403
+ * A list of alternative names.
5404
+ */
5405
+ alternative_names?: AlternativeName[]
5406
+
5407
+ /**
5408
+ * The description of the language.
5409
+ */
5410
+ description?: string
5411
+
5412
+ errata?: Errata
5413
+ }
5414
+
5415
+ export interface AssociatedContinent {
5416
+ /**
5417
+ * The continent’s identifier.
5418
+ */
5419
+ id: Continent_ID
5420
+
5421
+ /**
5422
+ * Is the language considered virtually extinct in this continent?
5423
+ */
5424
+ is_extinct: boolean
5425
+ }
5426
+
5427
+ /**
5428
+ * Continents are mostly referenced to in languages and scripts that occur on a specific continent.
5429
+ */
5430
+ export interface Continent {
5431
+ /**
5432
+ * All translations for the entry, identified by IETF language tag (BCP47).
5433
+ */
5434
+ translations: {
5435
+ [localeId: string]: ContinentTranslation
5436
+ }
5437
+ }
5438
+
5439
+ /**
5440
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
5441
+ */
5442
+ export type Continent_ID = string
5443
+
5444
+ export interface ContinentTranslation {
5445
+ /**
5446
+ * The continent name.
5447
+ */
5448
+ name: string
5449
+ }
5450
+
5451
+ export interface LanguageSpecialization {
5452
+ /**
5453
+ * The language this specialization belongs to.
5454
+ */
5455
+ parent: Language_ID
5456
+
5457
+ /**
5458
+ * All translations for the entry, identified by IETF language tag (BCP47).
5459
+ */
5460
+ translations: {
5461
+ [localeId: string]: LanguageSpecializationTranslation
5462
+ }
5463
+ }
5464
+
5465
+ /**
5466
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
5467
+ */
5468
+ export type LanguageSpecialization_ID = string
5469
+
5470
+ export interface LanguageSpecializationTranslation {
5471
+ /**
5472
+ * The specialization’s name.
5473
+ */
5474
+ name: string
5475
+
5476
+ /**
5477
+ * The specialization description. It will be appended to the name in parenthesis.
5478
+ */
5479
+ description?: string
5480
+ }
5481
+
5482
+ export interface IndefiniteSpecializations {
5483
+ /**
5484
+ * All translations for the entry, identified by IETF language tag (BCP47).
5485
+ */
5486
+ translations: {
5487
+ [localeId: string]: IndefiniteSpecializationsTranslation
5488
+ }
5489
+ }
5490
+
5491
+ export interface IndefiniteSpecializationsTranslation {
5492
+ /**
5493
+ * The specializations description.
5494
+ */
5495
+ description: string
5496
+
5497
+ /**
5498
+ * An input label or placeholder text for an UI element if it differs from the `description`.
5499
+ */
5500
+ label?: string
5501
+ }
5502
+
5503
+ export type LanguagePrerequisites = PrerequisitesForLevels<LanguagePrerequisiteGroup>
5504
+
5505
+ export type LanguagePrerequisiteGroup =
5506
+ | {
5507
+ kind: "Race"
5508
+ Race: RacePrerequisite
5509
+ }
5510
+ | {
5511
+ kind: "Activatable"
5512
+ Activatable: ActivatablePrerequisite
5513
+ }
5514
+ | {
5515
+ kind: "Text"
5516
+ Text: TextPrerequisite
5517
+ }
5518
+
5519
+ /**
5520
+ * A prerequisite that is either not verifyable in general – e.g. roleplay or background information – or the referenced entities were not made available for use yet – e.g. races –, but which should be displayed, because it is part of the prerequisite string from the sources.
5521
+ */
5522
+ export interface TextPrerequisite {
5523
+ /**
5524
+ * The method how the prerequisite should be verified. Either is passes all verification text or it denies all verification tests. The latter results in the associated entry to never be available for purchase.
5525
+ */
5526
+ verification: TextVerificationRule
5527
+
5528
+ /**
5529
+ * If the text is a sentence or sentence-like fragment, this property ensures it is integrated into the prerequisite string correctly.
5530
+ *
5531
+ * A standalone sentence is connected to the previous prerequisite string with a period and a period is also added at the end of the sentence automatically, if it is not present. A connected sentence is connected to the previous prerequisite string with a semicolon and a period is not added to the end of the sentence. In this case, if there are prerequisites after this one, they will be connected using a semicolon again, unless a different punctuation mark is present at the end of the given text.
5532
+ */
5533
+ sentence_type?: SentenceType
5534
+
5535
+ /**
5536
+ * If the text does not represent an actual prerequisite but a prerequisite for the use of certain aspects or the entry the prerequisite is associated with, or something like that, this property is set to `true`.
5537
+ *
5538
+ * If all prerequisites of an entry are marked as meta, the entry is considered to have no prerequisites and thus the string `none` must be rendered before the list of meta prerequisites.
5539
+ *
5540
+ * This is the only use case for this property.
5541
+ */
5542
+ is_meta?: boolean
5543
+
5544
+ /**
5545
+ * All translations for the entry, identified by IETF language tag (BCP47).
5546
+ */
5547
+ translations: {
5548
+ [localeId: string]: TextPrerequisiteTranslation
5549
+ }
5550
+ }
5551
+
5552
+ export interface TextPrerequisiteTranslation {
5553
+ /**
5554
+ * The displayed text.
5555
+ */
5556
+ text: string
5337
5557
  }
5338
5558
 
5559
+ export type TextVerificationRule =
5560
+ | {
5561
+ kind: "Pass"
5562
+ }
5563
+ | {
5564
+ kind: "Deny"
5565
+ }
5566
+
5339
5567
  /**
5340
5568
  * An effect or other parameter that may be reduced by a failed disease check for lessening or a degraded poison.
5341
5569
  *
@@ -5999,270 +6227,63 @@ export interface DependingOnPurchaseOrSalePoisonCost {
5999
6227
  sale: number
6000
6228
  }
6001
6229
 
6002
- export interface Language {
6230
+ export interface AnimalShape {
6003
6231
  /**
6004
- * The continents this language is present on.
6232
+ * The animal shape’s path.
6005
6233
  */
6006
- continent: AssociatedContinent[]
6234
+ path: AnimalShapePath_ID
6007
6235
 
6008
6236
  /**
6009
- * If applicable, a description of what may be a specialization.
6237
+ * The animal shape’s size.
6010
6238
  */
6011
- customSpecializations?: IndefiniteSpecializations
6012
-
6013
- prerequisites?: LanguagePrerequisites
6239
+ size: AnimalShapeSize_ID
6014
6240
 
6015
6241
  /**
6016
- * The maximum possible level of the language. Only specified if lower than default of 3.
6242
+ * All translations for the entry, identified by IETF language tag (BCP47).
6017
6243
  */
6018
- max_level?: number
6244
+ translations: {
6245
+ [localeId: string]: AnimalShapeTranslation
6246
+ }
6247
+ }
6248
+
6249
+ /**
6250
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
6251
+ */
6252
+ export type AnimalShape_ID = string
6019
6253
 
6254
+ export interface AnimalShapeTranslation {
6020
6255
  /**
6021
- * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
6256
+ * The animal shape’s name.
6022
6257
  */
6023
- src: PublicationRefs
6258
+ name: string
6259
+ }
6024
6260
 
6261
+ export interface AnimalShapePath {
6025
6262
  /**
6026
6263
  * All translations for the entry, identified by IETF language tag (BCP47).
6027
6264
  */
6028
6265
  translations: {
6029
- [localeId: string]: LanguageTranslation
6266
+ [localeId: string]: AnimalShapePathTranslation
6030
6267
  }
6031
6268
  }
6032
6269
 
6033
6270
  /**
6034
6271
  * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
6035
6272
  */
6036
- export type Language_ID = string
6273
+ export type AnimalShapePath_ID = string
6037
6274
 
6038
- export interface LanguageTranslation {
6275
+ export interface AnimalShapePathTranslation {
6039
6276
  /**
6040
- * The language’s name.
6277
+ * The animal shape path’s name.
6041
6278
  */
6042
6279
  name: string
6280
+ }
6043
6281
 
6282
+ export interface AnimalShapeSize {
6044
6283
  /**
6045
- * A list of alternative names.
6284
+ * The animal shape size’s volume points
6046
6285
  */
6047
- alternative_names?: AlternativeName[]
6048
-
6049
- /**
6050
- * The description of the language.
6051
- */
6052
- description?: string
6053
-
6054
- errata?: Errata
6055
- }
6056
-
6057
- export interface AssociatedContinent {
6058
- /**
6059
- * The continent’s identifier.
6060
- */
6061
- id: Continent_ID
6062
-
6063
- /**
6064
- * Is the language considered virtually extinct in this continent?
6065
- */
6066
- is_extinct: boolean
6067
- }
6068
-
6069
- /**
6070
- * Continents are mostly referenced to in languages and scripts that occur on a specific continent.
6071
- */
6072
- export interface Continent {
6073
- /**
6074
- * All translations for the entry, identified by IETF language tag (BCP47).
6075
- */
6076
- translations: {
6077
- [localeId: string]: ContinentTranslation
6078
- }
6079
- }
6080
-
6081
- /**
6082
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
6083
- */
6084
- export type Continent_ID = string
6085
-
6086
- export interface ContinentTranslation {
6087
- /**
6088
- * The continent name.
6089
- */
6090
- name: string
6091
- }
6092
-
6093
- export interface LanguageSpecialization {
6094
- /**
6095
- * The language this specialization belongs to.
6096
- */
6097
- parent: Language_ID
6098
-
6099
- /**
6100
- * All translations for the entry, identified by IETF language tag (BCP47).
6101
- */
6102
- translations: {
6103
- [localeId: string]: LanguageSpecializationTranslation
6104
- }
6105
- }
6106
-
6107
- /**
6108
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
6109
- */
6110
- export type LanguageSpecialization_ID = string
6111
-
6112
- export interface LanguageSpecializationTranslation {
6113
- /**
6114
- * The specialization’s name.
6115
- */
6116
- name: string
6117
-
6118
- /**
6119
- * The specialization description. It will be appended to the name in parenthesis.
6120
- */
6121
- description?: string
6122
- }
6123
-
6124
- export interface IndefiniteSpecializations {
6125
- /**
6126
- * All translations for the entry, identified by IETF language tag (BCP47).
6127
- */
6128
- translations: {
6129
- [localeId: string]: IndefiniteSpecializationsTranslation
6130
- }
6131
- }
6132
-
6133
- export interface IndefiniteSpecializationsTranslation {
6134
- /**
6135
- * The specializations description.
6136
- */
6137
- description: string
6138
-
6139
- /**
6140
- * An input label or placeholder text for an UI element if it differs from the `description`.
6141
- */
6142
- label?: string
6143
- }
6144
-
6145
- export type LanguagePrerequisites = PrerequisitesForLevels<LanguagePrerequisiteGroup>
6146
-
6147
- export type LanguagePrerequisiteGroup =
6148
- | {
6149
- kind: "Race"
6150
- Race: RacePrerequisite
6151
- }
6152
- | {
6153
- kind: "Activatable"
6154
- Activatable: ActivatablePrerequisite
6155
- }
6156
- | {
6157
- kind: "Text"
6158
- Text: TextPrerequisite
6159
- }
6160
-
6161
- /**
6162
- * A prerequisite that is either not verifyable in general – e.g. roleplay or background information – or the referenced entities were not made available for use yet – e.g. races –, but which should be displayed, because it is part of the prerequisite string from the sources.
6163
- */
6164
- export interface TextPrerequisite {
6165
- /**
6166
- * The method how the prerequisite should be verified. Either is passes all verification text or it denies all verification tests. The latter results in the associated entry to never be available for purchase.
6167
- */
6168
- verification: TextVerificationRule
6169
-
6170
- /**
6171
- * If the text is a sentence or sentence-like fragment, this property ensures it is integrated into the prerequisite string correctly.
6172
- *
6173
- * A standalone sentence is connected to the previous prerequisite string with a period and a period is also added at the end of the sentence automatically, if it is not present. A connected sentence is connected to the previous prerequisite string with a semicolon and a period is not added to the end of the sentence. In this case, if there are prerequisites after this one, they will be connected using a semicolon again, unless a different punctuation mark is present at the end of the given text.
6174
- */
6175
- sentence_type?: SentenceType
6176
-
6177
- /**
6178
- * If the text does not represent an actual prerequisite but a prerequisite for the use of certain aspects or the entry the prerequisite is associated with, or something like that, this property is set to `true`.
6179
- *
6180
- * If all prerequisites of an entry are marked as meta, the entry is considered to have no prerequisites and thus the string `none` must be rendered before the list of meta prerequisites.
6181
- *
6182
- * This is the only use case for this property.
6183
- */
6184
- is_meta?: boolean
6185
-
6186
- /**
6187
- * All translations for the entry, identified by IETF language tag (BCP47).
6188
- */
6189
- translations: {
6190
- [localeId: string]: TextPrerequisiteTranslation
6191
- }
6192
- }
6193
-
6194
- export interface TextPrerequisiteTranslation {
6195
- /**
6196
- * The displayed text.
6197
- */
6198
- text: string
6199
- }
6200
-
6201
- export type TextVerificationRule =
6202
- | {
6203
- kind: "Pass"
6204
- }
6205
- | {
6206
- kind: "Deny"
6207
- }
6208
-
6209
- export interface AnimalShape {
6210
- /**
6211
- * The animal shape’s path.
6212
- */
6213
- path: AnimalShapePath_ID
6214
-
6215
- /**
6216
- * The animal shape’s size.
6217
- */
6218
- size: AnimalShapeSize_ID
6219
-
6220
- /**
6221
- * All translations for the entry, identified by IETF language tag (BCP47).
6222
- */
6223
- translations: {
6224
- [localeId: string]: AnimalShapeTranslation
6225
- }
6226
- }
6227
-
6228
- /**
6229
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
6230
- */
6231
- export type AnimalShape_ID = string
6232
-
6233
- export interface AnimalShapeTranslation {
6234
- /**
6235
- * The animal shape’s name.
6236
- */
6237
- name: string
6238
- }
6239
-
6240
- export interface AnimalShapePath {
6241
- /**
6242
- * All translations for the entry, identified by IETF language tag (BCP47).
6243
- */
6244
- translations: {
6245
- [localeId: string]: AnimalShapePathTranslation
6246
- }
6247
- }
6248
-
6249
- /**
6250
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
6251
- */
6252
- export type AnimalShapePath_ID = string
6253
-
6254
- export interface AnimalShapePathTranslation {
6255
- /**
6256
- * The animal shape path’s name.
6257
- */
6258
- name: string
6259
- }
6260
-
6261
- export interface AnimalShapeSize {
6262
- /**
6263
- * The animal shape size’s volume points
6264
- */
6265
- volume: number
6286
+ volume: number
6266
6287
 
6267
6288
  /**
6268
6289
  * The animal shape size’s adventure point value
@@ -19674,6 +19695,10 @@ export type BlessedCommonProfessionConstraint =
19674
19695
  kind: "Tradition"
19675
19696
  Tradition: BlessedTraditionConstraint
19676
19697
  }
19698
+ | {
19699
+ kind: "Profession"
19700
+ Profession: ProfessionConstraint
19701
+ }
19677
19702
 
19678
19703
  export interface BlessedTraditionConstraint {
19679
19704
  /**
@@ -21786,6 +21811,27 @@ export interface SecondaryArmorTranslation {
21786
21811
  disadvantage?: string
21787
21812
  }
21788
21813
 
21814
+ export interface Biome {
21815
+ /**
21816
+ * All translations for the entry, identified by IETF language tag (BCP47).
21817
+ */
21818
+ translations: {
21819
+ [localeId: string]: BiomeTranslation
21820
+ }
21821
+ }
21822
+
21823
+ /**
21824
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
21825
+ */
21826
+ export type Biome_ID = string
21827
+
21828
+ export interface BiomeTranslation {
21829
+ /**
21830
+ * The biome's name.
21831
+ */
21832
+ name: string
21833
+ }
21834
+
21789
21835
  export interface Book {
21790
21836
  /**
21791
21837
  * The type of book.
@@ -24517,23 +24563,89 @@ export interface IndefiniteFamiliarsTrickPropertyTranslation {
24517
24563
  description: ResponsiveText
24518
24564
  }
24519
24565
 
24520
- export interface HomunculusType {
24566
+ export interface HerbalAid {
24567
+ /**
24568
+ * The plant types this aid belongs to.
24569
+ */
24570
+ types: EffectType[]
24571
+
24572
+ /**
24573
+ * The difficulty for this aid to craft.
24574
+ */
24575
+ crafting_difficulty: number
24576
+
24577
+ /**
24578
+ * The armor or weapon this herbal aid represents.
24579
+ */
24580
+ combatUse?: HerbalAidCombatUse
24581
+
24582
+ /**
24583
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
24584
+ */
24585
+ src: PublicationRefs
24586
+
24521
24587
  /**
24522
24588
  * All translations for the entry, identified by IETF language tag (BCP47).
24523
24589
  */
24524
24590
  translations: {
24525
- [localeId: string]: HomunculusTypeTranslation
24591
+ [localeId: string]: HerbalAidTranslation
24526
24592
  }
24527
24593
  }
24528
24594
 
24529
24595
  /**
24530
24596
  * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
24531
24597
  */
24532
- export type HomunculusType_ID = string
24598
+ export type HerbalAid_ID = string
24533
24599
 
24534
- export interface HomunculusTypeTranslation {
24600
+ export interface HerbalAidTranslation {
24535
24601
  /**
24536
- * The homunculus type’s name.
24602
+ * The herbal aid's name.
24603
+ */
24604
+ name: string
24605
+
24606
+ /**
24607
+ * The herbal aid's description.
24608
+ */
24609
+ description: string
24610
+
24611
+ /**
24612
+ * The ingredients used to craft this herbal aid.
24613
+ */
24614
+ ingredients: string[]
24615
+
24616
+ /**
24617
+ * The typical tools used to craft this.
24618
+ */
24619
+ typical_tools?: string[]
24620
+ }
24621
+
24622
+ export type HerbalAidCombatUse =
24623
+ | {
24624
+ kind: "Weapon"
24625
+ Weapon: Weapon_ID
24626
+ }
24627
+ | {
24628
+ kind: "Armor"
24629
+ Armor: Armor_ID
24630
+ }
24631
+
24632
+ export interface HomunculusType {
24633
+ /**
24634
+ * All translations for the entry, identified by IETF language tag (BCP47).
24635
+ */
24636
+ translations: {
24637
+ [localeId: string]: HomunculusTypeTranslation
24638
+ }
24639
+ }
24640
+
24641
+ /**
24642
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
24643
+ */
24644
+ export type HomunculusType_ID = string
24645
+
24646
+ export interface HomunculusTypeTranslation {
24647
+ /**
24648
+ * The homunculus type’s name.
24537
24649
  */
24538
24650
  name: string
24539
24651
  }
@@ -24673,6 +24785,333 @@ export interface PersonalityTraitEffect {
24673
24785
  text: string
24674
24786
  }
24675
24787
 
24788
+ export interface Plant {
24789
+ /**
24790
+ * The plant types of this plant.
24791
+ */
24792
+ types: EffectType[]
24793
+
24794
+ /**
24795
+ * The biomes this plant occurs in and its rarity in those biomes.
24796
+ */
24797
+ occurences: PlantOccurences
24798
+
24799
+ /**
24800
+ * The search difficulty for this plant.
24801
+ */
24802
+ search_difficulty: number
24803
+
24804
+ /**
24805
+ * The identification difficulty for this plant.
24806
+ */
24807
+ identification_difficulty: number
24808
+
24809
+ /**
24810
+ * The applications of this plant per quality level.
24811
+ */
24812
+ applications: [number, number, number, number, number, number]
24813
+
24814
+ /**
24815
+ * The plant's touch effect.
24816
+ */
24817
+ touch?: PlantEffect
24818
+
24819
+ /**
24820
+ * The plant's inhalation effect.
24821
+ */
24822
+ inhalation?: PlantEffect
24823
+
24824
+ /**
24825
+ * The plant's ingestion effect.
24826
+ */
24827
+ ingestion?: PlantEffect
24828
+
24829
+ /**
24830
+ * The price of the plant.
24831
+ */
24832
+ price: PlantPrice
24833
+
24834
+ /**
24835
+ * The herbal aids and elixirs that can be crafted with this plant.
24836
+ */
24837
+ recipes?: PlantRecipe[]
24838
+
24839
+ /**
24840
+ * References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
24841
+ */
24842
+ src: PublicationRefs
24843
+
24844
+ /**
24845
+ * All translations for the entry, identified by IETF language tag (BCP47).
24846
+ */
24847
+ translations: {
24848
+ [localeId: string]: PlantTranslation
24849
+ }
24850
+ }
24851
+
24852
+ /**
24853
+ * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
24854
+ */
24855
+ export type Plant_ID = string
24856
+
24857
+ export interface PlantTranslation {
24858
+ /**
24859
+ * The plant's name.
24860
+ */
24861
+ name: string
24862
+
24863
+ /**
24864
+ * A list of alternative names.
24865
+ */
24866
+ alternative_names?: AlternativeName[]
24867
+
24868
+ /**
24869
+ * How this plant is used as a household remedy and in folk traditions.
24870
+ */
24871
+ remedies_and_traditions: string
24872
+
24873
+ /**
24874
+ * What one knows about this plant for each quality level. The first element represents QL 1, the second element QL 2, and so on.
24875
+ */
24876
+ knowledge: string[]
24877
+ }
24878
+
24879
+ export interface PlantOccurences {
24880
+ /**
24881
+ * The biomes this plant occurs in and its rarity in those biomes.
24882
+ */
24883
+ items?: PlantOccurrence[]
24884
+
24885
+ /**
24886
+ * All translations for the entry, identified by IETF language tag (BCP47).
24887
+ */
24888
+ translation?: {
24889
+ [localeId: string]: PlantOccurrencesTranslation
24890
+ }
24891
+ }
24892
+
24893
+ export interface PlantOccurrencesTranslation {
24894
+ /**
24895
+ * A note to all occurences of this plant
24896
+ */
24897
+ note: string
24898
+ }
24899
+
24900
+ export interface PlantOccurrence {
24901
+ /**
24902
+ * The biome this plant occurs in.
24903
+ */
24904
+ biome: Biome_ID
24905
+
24906
+ /**
24907
+ * The rarity of this plant in the biome.
24908
+ */
24909
+ rarity: PlantRarity
24910
+
24911
+ /**
24912
+ * All translations for the entry, identified by IETF language tag (BCP47).
24913
+ */
24914
+ translation?: {
24915
+ [localeId: string]: PlantOccurrenceTranslation
24916
+ }
24917
+ }
24918
+
24919
+ export interface PlantOccurrenceTranslation {
24920
+ /**
24921
+ * A note added to this occurrence
24922
+ */
24923
+ note: string
24924
+ }
24925
+
24926
+ /**
24927
+ * The rarity of a plant in a biome.
24928
+ */
24929
+ export type PlantRarity =
24930
+ | {
24931
+ kind: "Common"
24932
+ }
24933
+ | {
24934
+ kind: "Occasional"
24935
+ }
24936
+ | {
24937
+ kind: "RatherRare"
24938
+ }
24939
+ | {
24940
+ kind: "Rare"
24941
+ }
24942
+ | {
24943
+ kind: "VeryRare"
24944
+ }
24945
+
24946
+ export interface PlantEffect {
24947
+ /**
24948
+ * The effect type of this plant effect.
24949
+ */
24950
+ types?: EffectType[]
24951
+
24952
+ /**
24953
+ * All translations for the entry, identified by IETF language tag (BCP47).
24954
+ */
24955
+ translations: {
24956
+ [localeId: string]: PlantEffectTranslationTranslation
24957
+ }
24958
+ }
24959
+
24960
+ export interface PlantEffectTranslationTranslation {
24961
+ /**
24962
+ * The effect of the plant.
24963
+ */
24964
+ description: string
24965
+ }
24966
+
24967
+ export type PlantPrice =
24968
+ | {
24969
+ kind: "Constant"
24970
+ Constant: {
24971
+ /**
24972
+ * The value of the plant in silver coins.
24973
+ */
24974
+ value: number
24975
+
24976
+ /**
24977
+ * The cost of the plant in silver coins.
24978
+ */
24979
+ cost: number
24980
+ }
24981
+ }
24982
+ | {
24983
+ kind: "Indefinite"
24984
+ Indefinite: IndefinitePlantPrice
24985
+ }
24986
+
24987
+ export interface IndefinitePlantPrice {
24988
+ /**
24989
+ * All translations for the entry, identified by IETF language tag (BCP47).
24990
+ */
24991
+ translations: {
24992
+ [localeId: string]: IndefinitePlantPriceTranslation
24993
+ }
24994
+ }
24995
+
24996
+ export interface IndefinitePlantPriceTranslation {
24997
+ /**
24998
+ * A description of the price.
24999
+ */
25000
+ description: string
25001
+ }
25002
+
25003
+ export type PlantRecipe =
25004
+ | {
25005
+ kind: "HerbalAid"
25006
+ HerbalAid: HerbalAidRecipe
25007
+ }
25008
+ | {
25009
+ kind: "Elixir"
25010
+ Elixir: ElixirRecipe
25011
+ }
25012
+ | {
25013
+ kind: "Poison"
25014
+ Poison: PoisonRecipe
25015
+ }
25016
+ | {
25017
+ kind: "Indefinite"
25018
+ Indefinite: IndefiniteRecipe
25019
+ }
25020
+
25021
+ export interface HerbalAidRecipe {
25022
+ /**
25023
+ * The herbal aid this recipe results in.
25024
+ */
25025
+ herbal_aid: HerbalAid_ID
25026
+
25027
+ /**
25028
+ * All translations for the entry, identified by IETF language tag (BCP47).
25029
+ */
25030
+ translation?: {
25031
+ [localeId: string]: HerbalAidRecipeTranslation
25032
+ }
25033
+ }
25034
+
25035
+ export interface HerbalAidRecipeTranslation {
25036
+ /**
25037
+ * A note, appended to the generated string in parenthesis. If the generated is modified using `replacement`, the note is appended to the modifier string.
25038
+ */
25039
+ note?: ResponsiveTextOptional
25040
+
25041
+ /**
25042
+ * A replacement string. If `note` is provided, it is appended to the replaced string.
25043
+ */
25044
+ replacement?: ResponsiveTextReplace
25045
+ }
25046
+
25047
+ export interface ElixirRecipe {
25048
+ /**
25049
+ * The elixir this recipe results in.
25050
+ */
25051
+ elixir: Elixir_ID
25052
+
25053
+ /**
25054
+ * All translations for the entry, identified by IETF language tag (BCP47).
25055
+ */
25056
+ translation?: {
25057
+ [localeId: string]: ElixirRecipeTranslation
25058
+ }
25059
+ }
25060
+
25061
+ export interface ElixirRecipeTranslation {
25062
+ /**
25063
+ * A note, appended to the generated string in parenthesis. If the generated is modified using `replacement`, the note is appended to the modifier string.
25064
+ */
25065
+ note?: ResponsiveTextOptional
25066
+
25067
+ /**
25068
+ * A replacement string. If `note` is provided, it is appended to the replaced string.
25069
+ */
25070
+ replacement?: ResponsiveTextReplace
25071
+ }
25072
+
25073
+ export interface PoisonRecipe {
25074
+ /**
25075
+ * The poison this recipe results in.
25076
+ */
25077
+ poison: Poison_ID
25078
+
25079
+ /**
25080
+ * All translations for the entry, identified by IETF language tag (BCP47).
25081
+ */
25082
+ translation?: {
25083
+ [localeId: string]: PoisonRecipeTranslation
25084
+ }
25085
+ }
25086
+
25087
+ export interface PoisonRecipeTranslation {
25088
+ /**
25089
+ * A note, appended to the generated string in parenthesis. If the generated is modified using `replacement`, the note is appended to the modifier string.
25090
+ */
25091
+ note?: ResponsiveTextOptional
25092
+
25093
+ /**
25094
+ * A replacement string. If `note` is provided, it is appended to the replaced string.
25095
+ */
25096
+ replacement?: ResponsiveTextReplace
25097
+ }
25098
+
25099
+ export interface IndefiniteRecipe {
25100
+ /**
25101
+ * All translations for the entry, identified by IETF language tag (BCP47).
25102
+ */
25103
+ translations: {
25104
+ [localeId: string]: IndefiniteRecipeTranslation
25105
+ }
25106
+ }
25107
+
25108
+ export interface IndefiniteRecipeTranslation {
25109
+ /**
25110
+ * A description of the recipe.
25111
+ */
25112
+ description: string
25113
+ }
25114
+
24676
25115
  export interface Region {
24677
25116
  /**
24678
25117
  * All translations for the entry, identified by IETF language tag (BCP47).