optolith-database-schema 0.31.3 → 0.32.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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,27 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [0.32.0](https://github.com/elyukai/optolith-database-schema/compare/v0.31.4...v0.32.0) (2026-02-21)
6
+
7
+
8
+ ### ⚠ BREAKING CHANGES
9
+
10
+ * streamline types
11
+
12
+ * streamline types ([9fd01ec](https://github.com/elyukai/optolith-database-schema/commit/9fd01ec1f287b881548f91d562eea7efcfc2e50f))
13
+
14
+
15
+ ### Features
16
+
17
+ * add translations for magical actions ([db431e2](https://github.com/elyukai/optolith-database-schema/commit/db431e25cf45b732ea5ed4be9faca7b6e98617ca))
18
+
19
+ ## [0.31.4](https://github.com/elyukai/optolith-database-schema/compare/v0.31.3...v0.31.4) (2026-02-16)
20
+
21
+
22
+ ### Bug Fixes
23
+
24
+ * optional withdrawal prevention and disease link ([a9211ec](https://github.com/elyukai/optolith-database-schema/commit/a9211ec6b784538cc303cde312b59d8f72079775))
25
+
5
26
  ## [0.31.3](https://github.com/elyukai/optolith-database-schema/compare/v0.31.2...v0.31.3) (2026-02-16)
6
27
 
7
28
 
package/gen/types.d.ts CHANGED
@@ -316,7 +316,6 @@ export type EnumMap = {
316
316
  MagicalRuneCheckPenalty: MagicalRuneCheckPenalty
317
317
  MagicalRuneCost: MagicalRuneCost
318
318
  MagicalRuneImprovementCost: MagicalRuneImprovementCost
319
- MagicalRuneOptionCost: MagicalRuneOptionCost
320
319
  MagicalRuneSuboption: MagicalRuneSuboption
321
320
  MagicalSignCost: MagicalSignCost
322
321
  MagicalTraditionPrerequisiteRestriction: MagicalTraditionPrerequisiteRestriction
@@ -566,7 +565,6 @@ export type TypeAliasMap = {
566
565
  FavoredSkillsSelection: FavoredSkillsSelection
567
566
  FirstPersonMagicalMelodyCost: FirstPersonMagicalMelodyCost
568
567
  FixedAdventurePointsValue: FixedAdventurePointsValue
569
- FixedAnimistPowerCost: FixedAnimistPowerCost
570
568
  FixedArcaneEnergyCost: FixedArcaneEnergyCost
571
569
  FixedAttributeAdjustment: FixedAttributeAdjustment
572
570
  FixedAutomaticEntryTarget: FixedAutomaticEntryTarget
@@ -584,8 +582,10 @@ export type TypeAliasMap = {
584
582
  FixedLifePointsCost: FixedLifePointsCost
585
583
  FixedMagicalDanceCost: FixedMagicalDanceCost
586
584
  FixedMagicalMelodyCost: FixedMagicalMelodyCost
585
+ FixedOneTimeAnimistPowerCost: FixedOneTimeAnimistPowerCost
587
586
  FixedPactGiftPermanentDemonicConsumption: FixedPactGiftPermanentDemonicConsumption
588
587
  FixedRange: FixedRange
588
+ FixedSustainedAnimistPowerCost: FixedSustainedAnimistPowerCost
589
589
  FixedVolume: FixedVolume
590
590
  GeneralAnimalCare: GeneralAnimalCare
591
591
  GeneralPrerequisites: GeneralPrerequisites
@@ -648,6 +648,7 @@ export type TypeAliasMap = {
648
648
  MagicalRuneCombatTechniqueCheckPenaltyRest: MagicalRuneCombatTechniqueCheckPenaltyRest
649
649
  MagicalRuneCostDisjunction: MagicalRuneCostDisjunction
650
650
  MagicalRuneCraftingTime: MagicalRuneCraftingTime
651
+ MagicalRuneCraftingTimePerCountable: MagicalRuneCraftingTimePerCountable
651
652
  MagicalRuneDuration: MagicalRuneDuration
652
653
  MagicalRunePerformanceParameters: MagicalRunePerformanceParameters
653
654
  MagicalSkillRating: MagicalSkillRating
@@ -1926,11 +1927,12 @@ export interface Locale {
1926
1927
  "at least {$value}": string & { __params: { "value": StringableTranslationParameter } }
1927
1928
  "/{$value}": string & { __params: { "value": StringableTranslationParameter } }
1928
1929
  " per {$value}": string & { __params: { "value": StringableTranslationParameter } }
1929
- ", minimum of {$value}": string & { __params: { "value": StringableTranslationParameter } }
1930
+ "{$baseCost}, minimum of {$value}": string & { __params: { "baseCost": StringableTranslationParameter; "value": StringableTranslationParameter } }
1930
1931
  " ({$value} perm.)": string & { __params: { "value": StringableTranslationParameter } }
1931
1932
  ".input {$value :number} {{, {$value} of which are permanent}}": string & { __params: { "value": number } }
1932
1933
  ", {$value} of which are permanent": string & { __params: { "value": StringableTranslationParameter } }
1933
1934
  "half of the activation cost": string
1935
+ "50%": string
1934
1936
  " and ": string
1935
1937
  " + ": string
1936
1938
  " or ": string
@@ -1963,6 +1965,7 @@ export interface Locale {
1963
1965
  "Touch": string
1964
1966
  "Radius": string
1965
1967
  " (casting)": string
1968
+ "activation": string
1966
1969
  "Zone": string
1967
1970
  "Liturgical Chants and Ceremonies": string
1968
1971
  "Spellworks": string
@@ -2263,13 +2266,15 @@ export interface Locale {
2263
2266
  "{$points} points for levels {$levels}": string & { __params: { "points": StringableTranslationParameter; "levels": StringableTranslationParameter } }
2264
2267
  "{$value} LP": string & { __params: { "value": StringableTranslationParameter } }
2265
2268
  ".input {$value :number} {{{$value} permanent AE}}": string & { __params: { "value": number } }
2269
+ "{$value} permanent AE": string & { __params: { "value": StringableTranslationParameter } }
2270
+ "{$value} pAE": string & { __params: { "value": StringableTranslationParameter } }
2266
2271
  "{$cost} per {$interval}": string & { __params: { "cost": StringableTranslationParameter; "interval": StringableTranslationParameter } }
2272
+ "{$cost}/{$interval}": string & { __params: { "cost": StringableTranslationParameter; "interval": StringableTranslationParameter } }
2267
2273
  "{$cost} per {$countable}": string & { __params: { "cost": StringableTranslationParameter; "countable": StringableTranslationParameter } }
2274
+ "{$cost}/{$countable}": string & { __params: { "cost": StringableTranslationParameter; "countable": StringableTranslationParameter } }
2268
2275
  "{$cost} per level": string & { __params: { "cost": StringableTranslationParameter } }
2269
2276
  "{$cost} for level {$level}": string & { __params: { "cost": StringableTranslationParameter; "level": StringableTranslationParameter } }
2270
- "{$cost} (activation) + {$halvedCost} per {$interval}": string & { __params: { "cost": StringableTranslationParameter; "halvedCost": StringableTranslationParameter; "interval": StringableTranslationParameter } }
2271
2277
  "Variable": string
2272
- "{$value} permanent AE": string & { __params: { "value": StringableTranslationParameter } }
2273
2278
  "Guideline": string
2274
2279
  "Elective Spellworks Package": string
2275
2280
  "Restricted Spellworks": string
@@ -2374,6 +2379,7 @@ export interface Locale {
2374
2379
  ".input {$hiddenCount :number} {{Alternative Names}}": string & { __params: { "hiddenCount": number } }
2375
2380
  ".input {$count :number} {{check required every {$count}. application}}": string & { __params: { "count": number } }
2376
2381
  ".input {$count :number} {{check required every {$count}. application in the same month}}": string & { __params: { "count": number } }
2382
+ "see {$link}": string & { __params: { "link": StringableTranslationParameter } }
2377
2383
  "Failed": string
2378
2384
  "Progress": string
2379
2385
  "Incubation Time": string
@@ -2385,6 +2391,24 @@ export interface Locale {
2385
2391
  "Animal Types": string
2386
2392
  "Communicability to Intelligent Creatures": string
2387
2393
  "Can be combined with": string
2394
+ "Skill": string
2395
+ "{$defaultDuration}, but no more than {$maximumDuration}": string & { __params: { "defaultDuration": StringableTranslationParameter; "maximumDuration": StringableTranslationParameter } }
2396
+ "Music Tradition": string
2397
+ "long": string
2398
+ "short": string
2399
+ "one-time": string
2400
+ "sustainable": string
2401
+ "{$firstPersonValue} for the first person; {$additionalPersonValue} for each additional person": string & { __params: { "firstPersonValue": StringableTranslationParameter; "additionalPersonValue": StringableTranslationParameter } }
2402
+ "Tribe Tradition": string
2403
+ "Depends on animal type": string
2404
+ "Crafting Time (slow / fast)": string
2405
+ "Duration (slow / fast)": string
2406
+ "Combat Technique": string
2407
+ "CT": string
2408
+ "All familiars know this trick by default.": string
2409
+ "All AE": string
2410
+ "All AE, at least {$value} AE": string & { __params: { "value": StringableTranslationParameter } }
2411
+ "depends on spent AE": string
2388
2412
  }
2389
2413
  }
2390
2414
 
@@ -5526,7 +5550,7 @@ export interface NonModifiableOneTimeCostPerCountable {
5526
5550
  /**
5527
5551
  * All translations for the entry, identified by IETF language tag (BCP47).
5528
5552
  */
5529
- translations?: {
5553
+ translations: {
5530
5554
  [localeId: string]: NonModifiableOneTimeCostPerCountableTranslation
5531
5555
  }
5532
5556
  }
@@ -7447,7 +7471,7 @@ export interface InfluenceEffect {
7447
7471
  /**
7448
7472
  * An optional label that is displayed and placed before the actual text.
7449
7473
  */
7450
- label?: string
7474
+ label: string
7451
7475
 
7452
7476
  /**
7453
7477
  * The effect text.
@@ -16497,18 +16521,9 @@ export interface ElvenMagicalSongCost {
16497
16521
  permanent?: ElvenMagicalSongPermanentCost
16498
16522
 
16499
16523
  /**
16500
- * All translations for the entry, identified by IETF language tag (BCP47).
16501
- */
16502
- translations?: {
16503
- [localeId: string]: ElvenMagicalSongCostTranslation
16504
- }
16505
- }
16506
-
16507
- export interface ElvenMagicalSongCostTranslation {
16508
- /**
16509
- * The cost have to be per a specific countable entity, e.g. `8 AE per person`.
16524
+ * The cost have to be per a specific countable entity, e.g. `8 KP per person`.
16510
16525
  */
16511
- per: ResponsiveText
16526
+ per?: NonModifiableOneTimeCostPerCountable
16512
16527
  }
16513
16528
 
16514
16529
  export interface ElvenMagicalSongPermanentCost {
@@ -16931,26 +16946,17 @@ export interface FixedMagicalDanceCost {
16931
16946
  */
16932
16947
  value: number
16933
16948
 
16934
- /**
16935
- * All translations for the entry, identified by IETF language tag (BCP47).
16936
- */
16937
- translations?: {
16938
- [localeId: string]: FixedMagicalDanceCostTranslation
16939
- }
16940
- }
16941
-
16942
- export interface FixedMagicalDanceCostTranslation {
16943
16949
  /**
16944
16950
  * The cost have to be per a specific countable entity, e.g. `8 KP per person`.
16945
16951
  */
16946
- per?: ResponsiveTextOptional
16952
+ per?: NonModifiableOneTimeCostPerCountable
16947
16953
  }
16948
16954
 
16949
16955
  export interface IndefiniteMagicalDanceCost {
16950
16956
  /**
16951
16957
  * Specified if the indefinite description's result value is to be modified by a certain number.
16952
16958
  */
16953
- maximum?: CheckResultBasedModifier
16959
+ modifier?: CheckResultBasedModifier
16954
16960
 
16955
16961
  /**
16956
16962
  * All translations for the entry, identified by IETF language tag (BCP47).
@@ -17256,21 +17262,21 @@ export interface OneTimeAnimistPowerPerformanceParameters {
17256
17262
  export type OneTimeAnimistPowerCost =
17257
17263
  | {
17258
17264
  kind: "Fixed"
17259
- Fixed: FixedAnimistPowerCost
17265
+ Fixed: FixedOneTimeAnimistPowerCost
17260
17266
  }
17261
17267
  | {
17262
17268
  kind: "ByPrimaryPatron"
17263
17269
  ByPrimaryPatron: AnimistPowerCostByPrimaryPatron
17264
17270
  }
17265
17271
 
17266
- export interface FixedAnimistPowerCost {
17272
+ export interface FixedOneTimeAnimistPowerCost {
17267
17273
  /**
17268
17274
  * The (temporary) AE cost value.
17269
17275
  */
17270
17276
  value: number
17271
17277
 
17272
17278
  /**
17273
- * If defined, half of the AE cost `value` has to be paid each interval.
17279
+ * If defined, the AE cost has to be paid each interval.
17274
17280
  */
17275
17281
  interval?: DurationUnitValue
17276
17282
  }
@@ -17319,13 +17325,25 @@ export interface SustainedAnimistPowerPerformanceParameters {
17319
17325
  export type SustainedAnimistPowerCost =
17320
17326
  | {
17321
17327
  kind: "Fixed"
17322
- Fixed: FixedAnimistPowerCost
17328
+ Fixed: FixedSustainedAnimistPowerCost
17323
17329
  }
17324
17330
  | {
17325
17331
  kind: "ByPrimaryPatron"
17326
17332
  ByPrimaryPatron: AnimistPowerCostByPrimaryPatron
17327
17333
  }
17328
17334
 
17335
+ export interface FixedSustainedAnimistPowerCost {
17336
+ /**
17337
+ * The (temporary) AE cost value.
17338
+ */
17339
+ value: number
17340
+
17341
+ /**
17342
+ * Half of the AE cost `value` has to be paid each interval.
17343
+ */
17344
+ interval: DurationUnitValue
17345
+ }
17346
+
17329
17347
  export type AnimistPowerImprovementCost =
17330
17348
  | {
17331
17349
  kind: "Fixed"
@@ -17698,7 +17716,7 @@ export interface MagicalRuneOption {
17698
17716
  /**
17699
17717
  * The option-specific AE cost.
17700
17718
  */
17701
- cost?: MagicalRuneOptionCost
17719
+ cost?: SingleMagicalRuneCost
17702
17720
 
17703
17721
  /**
17704
17722
  * The option-specific improvement cost.
@@ -17734,16 +17752,6 @@ export interface MagicalRuneOptionTranslation {
17734
17752
  native_name: string
17735
17753
  }
17736
17754
 
17737
- export type MagicalRuneOptionCost =
17738
- | {
17739
- kind: "Single"
17740
- Single: SingleMagicalRuneCost
17741
- }
17742
- | {
17743
- kind: "Disjunction"
17744
- Disjunction: MagicalRuneCostDisjunction
17745
- }
17746
-
17747
17755
  export interface SingleMagicalRuneCost {
17748
17756
  /**
17749
17757
  * The AE cost value.
@@ -17765,13 +17773,6 @@ export interface SingleMagicalRuneCostTranslation {
17765
17773
  note: ResponsiveTextOptional
17766
17774
  }
17767
17775
 
17768
- export interface MagicalRuneCostDisjunction {
17769
- /**
17770
- * A set of possible AE cost values.
17771
- */
17772
- list: SingleMagicalRuneCost[]
17773
- }
17774
-
17775
17776
  export type MagicalRuneSuboption =
17776
17777
  | {
17777
17778
  kind: "Custom"
@@ -17861,25 +17862,39 @@ export type MagicalRuneCost =
17861
17862
  kind: "DerivedFromOption"
17862
17863
  }
17863
17864
 
17865
+ export interface MagicalRuneCostDisjunction {
17866
+ /**
17867
+ * A set of possible AE cost values.
17868
+ */
17869
+ list: SingleMagicalRuneCost[]
17870
+ }
17871
+
17864
17872
  export interface MagicalRuneCraftingTime {
17865
17873
  /**
17866
17874
  * The crafting time in actions.
17867
17875
  */
17868
17876
  value: number
17869
17877
 
17878
+ /**
17879
+ * The crafting time has to be per a specific countable entity, e.g. `8 Actions per person`.
17880
+ */
17881
+ per?: MagicalRuneCraftingTimePerCountable
17882
+ }
17883
+
17884
+ export interface MagicalRuneCraftingTimePerCountable {
17870
17885
  /**
17871
17886
  * All translations for the entry, identified by IETF language tag (BCP47).
17872
17887
  */
17873
- translations?: {
17874
- [localeId: string]: MagicalRuneCraftingTimeTranslation
17888
+ translations: {
17889
+ [localeId: string]: MagicalRuneCraftingTimePerCountableTranslation
17875
17890
  }
17876
17891
  }
17877
17892
 
17878
- export interface MagicalRuneCraftingTimeTranslation {
17893
+ export interface MagicalRuneCraftingTimePerCountableTranslation {
17879
17894
  /**
17880
- * The crafting time has to be per a specific countable entity, e.g. `8 actions per person`.
17895
+ * The countable entity name.
17881
17896
  */
17882
- per: ResponsiveText
17897
+ countable: ResponsiveText
17883
17898
  }
17884
17899
 
17885
17900
  export interface MagicalRuneDuration {
@@ -18651,6 +18666,9 @@ export type AdvantageDisadvantagePrerequisiteGroup =
18651
18666
  | {
18652
18667
  kind: "CommonSuggestedByRCP"
18653
18668
  }
18669
+ | {
18670
+ kind: "NoOtherAncestorBloodAdvantage"
18671
+ }
18654
18672
  | {
18655
18673
  kind: "Sex"
18656
18674
  Sex: SexPrerequisite
@@ -18715,9 +18733,6 @@ export type AdvantageDisadvantagePrerequisiteGroup =
18715
18733
  kind: "Text"
18716
18734
  Text: TextPrerequisite
18717
18735
  }
18718
- | {
18719
- kind: "NoOtherAncestorBloodAdvantage"
18720
- }
18721
18736
  | {
18722
18737
  kind: "SexualCharacteristic"
18723
18738
  SexualCharacteristic: SexualCharacteristicPrerequisite
@@ -21993,7 +22008,12 @@ export interface IntoxicantAddiction {
21993
22008
  /**
21994
22009
  * The maximum interval at which it, while addicted, must be ingested to not suffer from withdrawal symptoms.
21995
22010
  */
21996
- withdrawalPrevention: IntoxicantAddictionWithdrawalPrevention
22011
+ withdrawalPrevention?: IntoxicantAddictionWithdrawalPrevention
22012
+
22013
+ /**
22014
+ * The disease that represents the addiction.
22015
+ */
22016
+ disease?: Disease_ID
21997
22017
 
21998
22018
  /**
21999
22019
  * All translations for the entry, identified by IETF language tag (BCP47).
@@ -22842,7 +22862,7 @@ export interface FamiliarsTrickFixedOneTimeCost {
22842
22862
  /**
22843
22863
  * The AE cost value.
22844
22864
  */
22845
- ae_value: number
22865
+ value: number
22846
22866
 
22847
22867
  /**
22848
22868
  * The LP cost value.
@@ -22854,19 +22874,10 @@ export interface FamiliarsTrickFixedOneTimeCost {
22854
22874
  */
22855
22875
  interval?: DurationUnitValue
22856
22876
 
22857
- /**
22858
- * All translations for the entry, identified by IETF language tag (BCP47).
22859
- */
22860
- translations?: {
22861
- [localeId: string]: FamiliarsTrickFixedOneTimeCostTranslation
22862
- }
22863
- }
22864
-
22865
- export interface FamiliarsTrickFixedOneTimeCostTranslation {
22866
22877
  /**
22867
22878
  * The cost have to be per a specific countable entity, e.g. `8 KP per person`.
22868
22879
  */
22869
- per?: ResponsiveTextOptional
22880
+ per?: NonModifiableOneTimeCostPerCountable
22870
22881
  }
22871
22882
 
22872
22883
  export interface FamiliarsTrickAllOneTimeCost {
@@ -22897,12 +22908,7 @@ export interface FamiliarsTrickOneTimeIntervalCost {
22897
22908
  /**
22898
22909
  * The AE cost value.
22899
22910
  */
22900
- ae_value: number
22901
-
22902
- /**
22903
- * The LP cost value.
22904
- */
22905
- lp_value?: number
22911
+ value: number
22906
22912
 
22907
22913
  /**
22908
22914
  * The duration granted/added by paying the given AE cost.
@@ -22918,12 +22924,7 @@ export interface FamiliarsTrickSustainedCost {
22918
22924
  /**
22919
22925
  * The AE cost value.
22920
22926
  */
22921
- ae_value: number
22922
-
22923
- /**
22924
- * The LP cost value.
22925
- */
22926
- lp_value?: number
22927
+ value: number
22927
22928
 
22928
22929
  /**
22929
22930
  * The interval in which you have to pay the AE cost again.
@@ -23105,7 +23106,7 @@ export interface PersonalityTraitEffect {
23105
23106
  /**
23106
23107
  * A label that is displayed and placed before the actual text.
23107
23108
  */
23108
- label?: string
23109
+ label: string
23109
23110
 
23110
23111
  /**
23111
23112
  * The effect text.
@@ -36,7 +36,7 @@ export declare const Ceremony: DB.Entity<"Ceremony", {
36
36
  full: DB.MemberDecl<DB.String, true>;
37
37
  compressed: DB.MemberDecl<DB.String, true>;
38
38
  }>, []>>, true>;
39
- }>, false>;
39
+ }>, true>;
40
40
  }>, []>>, false>;
41
41
  translations: DB.MemberDecl<DB.NestedEntityMap<"NonModifiableOneTimeCostTranslation", {
42
42
  note: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
@@ -76,7 +76,7 @@ export declare const Ceremony: DB.Entity<"Ceremony", {
76
76
  full: DB.MemberDecl<DB.String, true>;
77
77
  compressed: DB.MemberDecl<DB.String, true>;
78
78
  }>, []>>, true>;
79
- }>, false>;
79
+ }>, true>;
80
80
  }>, []>>, false>;
81
81
  translations: DB.MemberDecl<DB.NestedEntityMap<"NonModifiableOneTimeCostTranslation", {
82
82
  note: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
@@ -116,7 +116,7 @@ export declare const Ceremony: DB.Entity<"Ceremony", {
116
116
  full: DB.MemberDecl<DB.String, true>;
117
117
  compressed: DB.MemberDecl<DB.String, true>;
118
118
  }>, []>>, true>;
119
- }>, false>;
119
+ }>, true>;
120
120
  }>, []>>, false>;
121
121
  translations: DB.MemberDecl<DB.NestedEntityMap<"NonModifiableOneTimeCostTranslation", {
122
122
  note: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
@@ -5,7 +5,7 @@ export declare const FamiliarsTrick: DB.Entity<"FamiliarsTrick", {
5
5
  OneTime: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FamiliarsTrickOneTimePerformanceParameters", DB.Object<{
6
6
  cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"FamiliarsTrickOneTimeCost", {
7
7
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FamiliarsTrickFixedOneTimeCost", DB.Object<{
8
- ae_value: DB.MemberDecl<DB.Integer, true>;
8
+ value: DB.MemberDecl<DB.Integer, true>;
9
9
  lp_value: DB.MemberDecl<DB.Integer, false>;
10
10
  interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DurationUnitValue", DB.Object<{
11
11
  value: DB.MemberDecl<DB.Integer, true>;
@@ -22,12 +22,15 @@ export declare const FamiliarsTrick: DB.Entity<"FamiliarsTrick", {
22
22
  CombatRounds: DB.EnumCase<null>;
23
23
  }, []>>, true>;
24
24
  }>, []>>, false>;
25
- translations: DB.MemberDecl<DB.NestedEntityMap<"FamiliarsTrickFixedOneTimeCostTranslation", {
26
- per: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
27
- full: DB.MemberDecl<DB.String, true>;
28
- compressed: DB.MemberDecl<DB.String, false>;
29
- }>, []>>, false>;
30
- }>, false>;
25
+ per: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"NonModifiableOneTimeCostPerCountable", DB.Object<{
26
+ minimum_total: DB.MemberDecl<DB.Integer, false>;
27
+ translations: DB.MemberDecl<DB.NestedEntityMap<"NonModifiableOneTimeCostPerCountableTranslation", {
28
+ countable: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveText", DB.Object<{
29
+ full: DB.MemberDecl<DB.String, true>;
30
+ compressed: DB.MemberDecl<DB.String, true>;
31
+ }>, []>>, true>;
32
+ }>, true>;
33
+ }>, []>>, false>;
31
34
  }>, []>>>;
32
35
  All: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FamiliarsTrickAllOneTimeCost", DB.Object<{
33
36
  minimum: DB.MemberDecl<DB.Integer, false>;
@@ -77,8 +80,7 @@ export declare const FamiliarsTrick: DB.Entity<"FamiliarsTrick", {
77
80
  }>, []>>>;
78
81
  OneTimeInterval: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FamiliarsTrickOneTimeIntervalPerformanceParameters", DB.Object<{
79
82
  cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"FamiliarsTrickOneTimeIntervalCost", DB.Object<{
80
- ae_value: DB.MemberDecl<DB.Integer, true>;
81
- lp_value: DB.MemberDecl<DB.Integer, false>;
83
+ value: DB.MemberDecl<DB.Integer, true>;
82
84
  interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DurationUnitValue", DB.Object<{
83
85
  value: DB.MemberDecl<DB.Integer, true>;
84
86
  unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DurationUnit", {
@@ -98,8 +100,7 @@ export declare const FamiliarsTrick: DB.Entity<"FamiliarsTrick", {
98
100
  }>, []>>>;
99
101
  Sustained: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FamiliarsTrickSustainedPerformanceParameters", DB.Object<{
100
102
  cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"FamiliarsTrickSustainedCost", DB.Object<{
101
- ae_value: DB.MemberDecl<DB.Integer, true>;
102
- lp_value: DB.MemberDecl<DB.Integer, false>;
103
+ value: DB.MemberDecl<DB.Integer, true>;
103
104
  interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DurationUnitValue", DB.Object<{
104
105
  value: DB.MemberDecl<DB.Integer, true>;
105
106
  unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DurationUnit", {
@@ -1,9 +1,9 @@
1
1
  import * as DB from "tsondb/schema/dsl";
2
2
  import { OldParameter } from "./_ActivatableSkill.js";
3
- import { IndefiniteOneTimeCost } from "./_ActivatableSkillCost.js";
3
+ import { IndefiniteOneTimeCost, NonModifiableOneTimeCostPerCountable, } from "./_ActivatableSkillCost.js";
4
4
  import { DurationUnitValue, FixedDuration, IndefiniteDuration, } from "./_ActivatableSkillDuration.js";
5
5
  import { AnimalTypeIdentifier, PropertyIdentifier } from "./_Identifier.js";
6
- import { ResponsiveText, ResponsiveTextOptional } from "./_ResponsiveText.js";
6
+ import { ResponsiveText } from "./_ResponsiveText.js";
7
7
  import { NestedTranslationMap } from "./Locale.js";
8
8
  import { Errata } from "./source/_Erratum.js";
9
9
  import { src } from "./source/_PublicationRef.js";
@@ -117,7 +117,7 @@ const FamiliarsTrickOneTimeCost = DB.Enum(import.meta.url, {
117
117
  const FamiliarsTrickFixedOneTimeCost = DB.TypeAlias(import.meta.url, {
118
118
  name: "FamiliarsTrickFixedOneTimeCost",
119
119
  type: () => DB.Object({
120
- ae_value: DB.Required({
120
+ value: DB.Required({
121
121
  comment: "The AE cost value.",
122
122
  type: DB.Integer({ minimum: 1 }),
123
123
  }),
@@ -129,12 +129,10 @@ const FamiliarsTrickFixedOneTimeCost = DB.TypeAlias(import.meta.url, {
129
129
  comment: "The interval in which you have to pay the AE cost again.",
130
130
  type: DB.IncludeIdentifier(DurationUnitValue),
131
131
  }),
132
- translations: NestedTranslationMap(DB.Optional, "FamiliarsTrickFixedOneTimeCost", DB.Object({
133
- per: DB.Optional({
134
- comment: "The cost have to be per a specific countable entity, e.g. `8 KP per person`.",
135
- type: DB.IncludeIdentifier(ResponsiveTextOptional),
136
- }),
137
- }, { minProperties: 1 })),
132
+ per: DB.Optional({
133
+ comment: "The cost have to be per a specific countable entity, e.g. `8 KP per person`.",
134
+ type: DB.IncludeIdentifier(NonModifiableOneTimeCostPerCountable),
135
+ }),
138
136
  }),
139
137
  });
140
138
  const FamiliarsTrickAllOneTimeCost = DB.TypeAlias(import.meta.url, {
@@ -165,14 +163,10 @@ const FamiliarsTrickOneTimeIntervalPerformanceParameters = DB.TypeAlias(import.m
165
163
  const FamiliarsTrickOneTimeIntervalCost = DB.TypeAlias(import.meta.url, {
166
164
  name: "FamiliarsTrickOneTimeIntervalCost",
167
165
  type: () => DB.Object({
168
- ae_value: DB.Required({
166
+ value: DB.Required({
169
167
  comment: "The AE cost value.",
170
168
  type: DB.Integer({ minimum: 1 }),
171
169
  }),
172
- lp_value: DB.Optional({
173
- comment: "The LP cost value.",
174
- type: DB.Integer({ minimum: 1 }),
175
- }),
176
170
  interval: DB.Required({
177
171
  comment: "The duration granted/added by paying the given AE cost.",
178
172
  type: DB.IncludeIdentifier(DurationUnitValue),
@@ -190,14 +184,10 @@ const FamiliarsTrickSustainedPerformanceParameters = DB.TypeAlias(import.meta.ur
190
184
  const FamiliarsTrickSustainedCost = DB.TypeAlias(import.meta.url, {
191
185
  name: "FamiliarsTrickSustainedCost",
192
186
  type: () => DB.Object({
193
- ae_value: DB.Required({
187
+ value: DB.Required({
194
188
  comment: "The AE cost value.",
195
189
  type: DB.Integer({ minimum: 1 }),
196
190
  }),
197
- lp_value: DB.Optional({
198
- comment: "The LP cost value.",
199
- type: DB.Integer({ minimum: 1 }),
200
- }),
201
191
  interval: DB.Optional({
202
192
  comment: "The interval in which you have to pay the AE cost again.",
203
193
  type: DB.IncludeIdentifier(DurationUnitValue),
@@ -36,7 +36,7 @@ export declare const LiturgicalChant: DB.Entity<"LiturgicalChant", {
36
36
  full: DB.MemberDecl<DB.String, true>;
37
37
  compressed: DB.MemberDecl<DB.String, true>;
38
38
  }>, []>>, true>;
39
- }>, false>;
39
+ }>, true>;
40
40
  }>, []>>, false>;
41
41
  translations: DB.MemberDecl<DB.NestedEntityMap<"NonModifiableOneTimeCostTranslation", {
42
42
  note: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
@@ -76,7 +76,7 @@ export declare const LiturgicalChant: DB.Entity<"LiturgicalChant", {
76
76
  full: DB.MemberDecl<DB.String, true>;
77
77
  compressed: DB.MemberDecl<DB.String, true>;
78
78
  }>, []>>, true>;
79
- }>, false>;
79
+ }>, true>;
80
80
  }>, []>>, false>;
81
81
  translations: DB.MemberDecl<DB.NestedEntityMap<"NonModifiableOneTimeCostTranslation", {
82
82
  note: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
@@ -116,7 +116,7 @@ export declare const LiturgicalChant: DB.Entity<"LiturgicalChant", {
116
116
  full: DB.MemberDecl<DB.String, true>;
117
117
  compressed: DB.MemberDecl<DB.String, true>;
118
118
  }>, []>>, true>;
119
- }>, false>;
119
+ }>, true>;
120
120
  }>, []>>, false>;
121
121
  translations: DB.MemberDecl<DB.NestedEntityMap<"NonModifiableOneTimeCostTranslation", {
122
122
  note: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{