@optolith/database-schema 0.47.3 → 0.48.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 (34) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/gen/types.d.ts +114 -202
  3. package/lib/types/Ceremony.d.ts +7 -80
  4. package/lib/types/Culture.d.ts +4 -0
  5. package/lib/types/Culture.js +10 -0
  6. package/lib/types/FamiliarsTrick.d.ts +3 -3
  7. package/lib/types/FamiliarsTrick.js +2 -2
  8. package/lib/types/LiturgicalChant.d.ts +7 -80
  9. package/lib/types/Ritual.d.ts +7 -80
  10. package/lib/types/Spell.d.ts +7 -80
  11. package/lib/types/_ActivatableSkill.d.ts +21 -218
  12. package/lib/types/_ActivatableSkill.js +15 -0
  13. package/lib/types/_ActivatableSkillDuration.d.ts +6 -50
  14. package/lib/types/_ActivatableSkillDuration.js +8 -13
  15. package/lib/types/_ActivatableSkillRange.d.ts +11 -22
  16. package/lib/types/_ActivatableSkillRange.js +7 -12
  17. package/lib/types/magicalActions/AnimistPower.d.ts +3 -29
  18. package/lib/types/magicalActions/AnimistPower.js +2 -3
  19. package/lib/types/magicalActions/Bannzeichen.d.ts +6 -28
  20. package/lib/types/magicalActions/Bannzeichen.js +4 -4
  21. package/lib/types/magicalActions/Curse.d.ts +6 -58
  22. package/lib/types/magicalActions/Curse.js +3 -5
  23. package/lib/types/magicalActions/DominationRitual.d.ts +6 -58
  24. package/lib/types/magicalActions/DominationRitual.js +3 -18
  25. package/lib/types/magicalActions/GeodeRitual.d.ts +3 -29
  26. package/lib/types/magicalActions/GeodeRitual.js +2 -3
  27. package/lib/types/magicalActions/GoblinRitual.d.ts +7 -33
  28. package/lib/types/magicalActions/GoblinRitual.js +7 -8
  29. package/lib/types/magicalActions/JesterTrick.d.ts +9 -87
  30. package/lib/types/magicalActions/JesterTrick.js +2 -16
  31. package/lib/types/magicalActions/MagicalRune.d.ts +6 -28
  32. package/lib/types/magicalActions/MagicalRune.js +3 -3
  33. package/lib/types/magicalActions/ZibiljaRitual.d.ts +5 -58
  34. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,24 @@
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.48.0](https://github.com/Optolith/database-schema/compare/v0.47.4...v0.48.0) (2026-06-13)
6
+
7
+
8
+ ### ⚠ BREAKING CHANGES
9
+
10
+ * unify some skill durations and ranges with expressions
11
+
12
+ ### Features
13
+
14
+ * unify some skill durations and ranges with expressions ([31798ca](https://github.com/Optolith/database-schema/commit/31798ca33fab12b1d1c0c6edec0c543173c8f4ac))
15
+
16
+ ## [0.47.4](https://github.com/Optolith/database-schema/compare/v0.47.3...v0.47.4) (2026-06-13)
17
+
18
+
19
+ ### Features
20
+
21
+ * culture language translations ([b5ece95](https://github.com/Optolith/database-schema/commit/b5ece951032138b19cb02dfc8172177bd337b37f))
22
+
5
23
  ## [0.47.3](https://github.com/Optolith/database-schema/compare/v0.47.2...v0.47.3) (2026-06-13)
6
24
 
7
25
 
package/gen/types.d.ts CHANGED
@@ -260,7 +260,6 @@ export type EnumMap = {
260
260
  CastingTime: CastingTime<unknown>
261
261
  CastingTimeDuringLovemakingUnit: CastingTimeDuringLovemakingUnit
262
262
  CheckResultArithmetic: CheckResultArithmetic
263
- CheckResultValue: CheckResultValue
264
263
  CollectorsValue: CollectorsValue
265
264
  CombatAnimalPowerType: CombatAnimalPowerType
266
265
  CombatRelatedSpecialAbilityIdentifier: CombatRelatedSpecialAbilityIdentifier
@@ -301,6 +300,7 @@ export type EnumMap = {
301
300
  EncumbranceInfluence: EncumbranceInfluence
302
301
  EnhancementPrerequisiteGroup: EnhancementPrerequisiteGroup
303
302
  EquipmentIdentifier: EquipmentIdentifier
303
+ ExpressionBasedParameterExpressionValue: ExpressionBasedParameterExpressionValue
304
304
  ExpressionBasedPoisonTimeExpressionValue: ExpressionBasedPoisonTimeExpressionValue
305
305
  ExtensionRuleIdentifier: ExtensionRuleIdentifier
306
306
  FamiliarsTrickOneTimeCost: FamiliarsTrickOneTimeCost
@@ -527,9 +527,7 @@ export type TypeAliasMap = {
527
527
  CastingTimeDuringLovemaking: CastingTimeDuringLovemaking
528
528
  CastingTimeIncludingLovemaking: CastingTimeIncludingLovemaking<unknown>
529
529
  Cause: Cause
530
- CheckResultBasedDuration: CheckResultBasedDuration
531
530
  CheckResultBasedModifier: CheckResultBasedModifier
532
- CheckResultBasedRange: CheckResultBasedRange
533
531
  ChildNode: ChildNode
534
532
  CloseCombatTechniqueSpecialRules: CloseCombatTechniqueSpecialRules
535
533
  CombatAnimalPower: CombatAnimalPower
@@ -597,8 +595,11 @@ export type TypeAliasMap = {
597
595
  Errata: Errata
598
596
  Erratum: Erratum
599
597
  ExclusiveCantripNote: ExclusiveCantripNote
598
+ ExpressionBasedDuration: ExpressionBasedDuration
599
+ ExpressionBasedParameterValue: ExpressionBasedParameterValue
600
600
  ExpressionBasedPoisonTime: ExpressionBasedPoisonTime
601
601
  ExpressionBasedPoisonTimeValue: ExpressionBasedPoisonTimeValue
602
+ ExpressionBasedRange: ExpressionBasedRange
602
603
  FamiliarsTrickAllOneTimeCost: FamiliarsTrickAllOneTimeCost
603
604
  FamiliarsTrickFixedOneTimeCost: FamiliarsTrickFixedOneTimeCost
604
605
  FamiliarsTrickOneTimeIntervalCost: FamiliarsTrickOneTimeIntervalCost
@@ -622,11 +623,8 @@ export type TypeAliasMap = {
622
623
  FixedCantripDuration: FixedCantripDuration
623
624
  FixedCost: FixedCost
624
625
  FixedCurseCost: FixedCurseCost
625
- FixedDominationRitualDuration: FixedDominationRitualDuration
626
- FixedDuration: FixedDuration
627
626
  FixedGeodeRitualCost: FixedGeodeRitualCost
628
627
  FixedGeodeRitualRange: FixedGeodeRitualRange
629
- FixedJesterTrickDuration: FixedJesterTrickDuration
630
628
  FixedJesterTrickRange: FixedJesterTrickRange
631
629
  FixedLifePointsCost: FixedLifePointsCost
632
630
  FixedMagicalDanceCost: FixedMagicalDanceCost
@@ -6862,12 +6860,8 @@ export type RangeValue =
6862
6860
  kind: "Touch"
6863
6861
  }
6864
6862
  | {
6865
- kind: "Fixed"
6866
- Fixed: FixedRange
6867
- }
6868
- | {
6869
- kind: "CheckResultBased"
6870
- CheckResultBased: CheckResultBasedRange
6863
+ kind: "Expression"
6864
+ Expression: ExpressionBasedRange
6871
6865
  }
6872
6866
 
6873
6867
  export interface ModifiableRange {
@@ -6887,51 +6881,16 @@ export interface ModifiableRange {
6887
6881
  is_radius?: boolean
6888
6882
  }
6889
6883
 
6890
- export interface FixedRange {
6891
- /**
6892
- * If `true`, the range is a maximum range.
6893
- */
6894
- is_maximum?: boolean
6895
-
6896
- /**
6897
- * The (unitless) range value.
6898
- */
6899
- value: number
6900
-
6901
- /**
6902
- * The unit of the `value`.
6903
- */
6904
- unit: RangeUnit
6905
-
6906
- /**
6907
- * If `true`, the range is a radius.
6908
- */
6909
- is_radius?: boolean
6910
- }
6911
-
6912
- export type RangeUnit =
6913
- | {
6914
- kind: "Steps"
6915
- }
6916
- | {
6917
- kind: "Miles"
6918
- }
6919
-
6920
- export interface CheckResultBasedRange {
6884
+ export interface ExpressionBasedRange {
6921
6885
  /**
6922
6886
  * If the range is the maximum range.
6923
6887
  */
6924
6888
  is_maximum?: boolean
6925
6889
 
6926
6890
  /**
6927
- * The base value that is derived from the check result.
6891
+ * An expression that evaluates to the range.
6928
6892
  */
6929
- base: CheckResultValue
6930
-
6931
- /**
6932
- * If defined, it modifies the base value.
6933
- */
6934
- modifier?: CheckResultBasedModifier
6893
+ value: ExpressionBasedParameterValue
6935
6894
 
6936
6895
  /**
6937
6896
  * The duration unit.
@@ -6944,41 +6903,26 @@ export interface CheckResultBasedRange {
6944
6903
  is_radius?: boolean
6945
6904
  }
6946
6905
 
6947
- /**
6948
- * Defines the derived (unitless) value.
6949
- */
6950
- export type CheckResultValue =
6906
+ export type ExpressionBasedParameterValue = MathOperation<ExpressionBasedParameterExpressionValue>
6907
+
6908
+ export type ExpressionBasedParameterExpressionValue =
6951
6909
  | {
6952
- kind: "QualityLevels"
6910
+ kind: "Constant"
6911
+ Constant: number
6953
6912
  }
6954
6913
  | {
6955
- kind: "SkillPoints"
6914
+ kind: "QualityLevels"
6956
6915
  }
6957
6916
  | {
6958
- kind: "SkillRating"
6917
+ kind: "SkillPoints"
6959
6918
  }
6960
6919
 
6961
- export interface CheckResultBasedModifier {
6962
- /**
6963
- * The arithmetic how to apply the `value` to the `base`.
6964
- */
6965
- arithmetic: CheckResultArithmetic
6966
-
6967
- /**
6968
- * The value that is applied to the `base` using the defined `arithmetic`.
6969
- */
6970
- value: number
6971
- }
6972
-
6973
- /**
6974
- * Defines how the the `value` is set off against the check result.
6975
- */
6976
- export type CheckResultArithmetic =
6920
+ export type RangeUnit =
6977
6921
  | {
6978
- kind: "Multiply"
6922
+ kind: "Steps"
6979
6923
  }
6980
6924
  | {
6981
- kind: "Divide"
6925
+ kind: "Miles"
6982
6926
  }
6983
6927
 
6984
6928
  export type DurationForOneTime =
@@ -6991,12 +6935,8 @@ export type DurationForOneTime =
6991
6935
  Permanent: PermanentDuration
6992
6936
  }
6993
6937
  | {
6994
- kind: "Fixed"
6995
- Fixed: FixedDuration
6996
- }
6997
- | {
6998
- kind: "CheckResultBased"
6999
- CheckResultBased: CheckResultBasedDuration
6938
+ kind: "Expression"
6939
+ Expression: ExpressionBasedDuration
7000
6940
  }
7001
6941
  | {
7002
6942
  kind: "Indefinite"
@@ -7084,16 +7024,16 @@ export interface PermanentDurationTranslation {
7084
7024
  replacement?: ResponsiveTextReplace
7085
7025
  }
7086
7026
 
7087
- export interface FixedDuration {
7027
+ export interface ExpressionBasedDuration {
7088
7028
  /**
7089
7029
  * If the duration is the maximum duration, so it may end earlier.
7090
7030
  */
7091
7031
  is_maximum?: boolean
7092
7032
 
7093
7033
  /**
7094
- * The (unitless) duration.
7034
+ * An expression that evaluates to the duration.
7095
7035
  */
7096
- value: number
7036
+ value: ExpressionBasedParameterValue
7097
7037
 
7098
7038
  /**
7099
7039
  * The duration unit.
@@ -7104,47 +7044,11 @@ export interface FixedDuration {
7104
7044
  * All translations for the entry, identified by IETF language tag (BCP47).
7105
7045
  */
7106
7046
  translations?: {
7107
- [localeId: string]: FixedDurationTranslation
7047
+ [localeId: string]: ExpressionBasedDurationTranslation
7108
7048
  }
7109
7049
  }
7110
7050
 
7111
- export interface FixedDurationTranslation {
7112
- /**
7113
- * A replacement string.
7114
- */
7115
- replacement?: ResponsiveTextReplace
7116
- }
7117
-
7118
- export interface CheckResultBasedDuration {
7119
- /**
7120
- * If the duration is the maximum duration, so it may end earlier.
7121
- */
7122
- is_maximum?: boolean
7123
-
7124
- /**
7125
- * The base value that is derived from the check result.
7126
- */
7127
- base: CheckResultValue
7128
-
7129
- /**
7130
- * If defined, it modifies the base value.
7131
- */
7132
- modifier?: CheckResultBasedModifier
7133
-
7134
- /**
7135
- * The duration unit.
7136
- */
7137
- unit: DurationUnit
7138
-
7139
- /**
7140
- * All translations for the entry, identified by IETF language tag (BCP47).
7141
- */
7142
- translations?: {
7143
- [localeId: string]: CheckResultBasedDurationTranslation
7144
- }
7145
- }
7146
-
7147
- export interface CheckResultBasedDurationTranslation {
7051
+ export interface ExpressionBasedDurationTranslation {
7148
7052
  /**
7149
7053
  * A replacement string.
7150
7054
  */
@@ -7672,6 +7576,28 @@ export type BlessingRange =
7672
7576
  Fixed: FixedRange
7673
7577
  }
7674
7578
 
7579
+ export interface FixedRange {
7580
+ /**
7581
+ * If `true`, the range is a maximum range.
7582
+ */
7583
+ is_maximum?: boolean
7584
+
7585
+ /**
7586
+ * The (unitless) range value.
7587
+ */
7588
+ value: number
7589
+
7590
+ /**
7591
+ * The unit of the `value`.
7592
+ */
7593
+ unit: RangeUnit
7594
+
7595
+ /**
7596
+ * If `true`, the range is a radius.
7597
+ */
7598
+ is_radius?: boolean
7599
+ }
7600
+
7675
7601
  export type BlessingDuration =
7676
7602
  | {
7677
7603
  kind: "Immediate"
@@ -9410,6 +9336,25 @@ export interface CultureLanguage {
9410
9336
  * The language specializations, if any.
9411
9337
  */
9412
9338
  specializations?: LanguageSpecialization_ID[]
9339
+
9340
+ /**
9341
+ * All translations for the entry, identified by IETF language tag (BCP47).
9342
+ */
9343
+ translations?: {
9344
+ [localeId: string]: CultureLanguageTranslation
9345
+ }
9346
+ }
9347
+
9348
+ export interface CultureLanguageTranslation {
9349
+ /**
9350
+ * The concrete language specialization, if the language allows to specify arbitrary text.
9351
+ */
9352
+ specialization?: string
9353
+
9354
+ /**
9355
+ * A different promt fro the language specialization, if the language allows to specify arbitrary text.
9356
+ */
9357
+ specializationPrompt?: string
9413
9358
  }
9414
9359
 
9415
9360
  export interface Script {
@@ -17791,12 +17736,12 @@ export interface BannzeichenDuration {
17791
17736
  /**
17792
17737
  * The duration on slow Bannzeichen application.
17793
17738
  */
17794
- slow: CheckResultBasedDuration
17739
+ slow: ExpressionBasedDuration
17795
17740
 
17796
17741
  /**
17797
17742
  * The duration on fast Bannzeichen application.
17798
17743
  */
17799
- fast: CheckResultBasedDuration
17744
+ fast: ExpressionBasedDuration
17800
17745
  }
17801
17746
 
17802
17747
  export type BannzeichenImprovementCost =
@@ -17921,12 +17866,8 @@ export type CurseDuration =
17921
17866
  kind: "Immediate"
17922
17867
  }
17923
17868
  | {
17924
- kind: "Fixed"
17925
- Fixed: DurationUnitValue
17926
- }
17927
- | {
17928
- kind: "CheckResultBased"
17929
- CheckResultBased: CheckResultBasedDuration
17869
+ kind: "Expression"
17870
+ Expression: ExpressionBasedDuration
17930
17871
  }
17931
17872
  | {
17932
17873
  kind: "Indefinite"
@@ -17956,12 +17897,8 @@ export interface IndefiniteCurseDurationTranslation {
17956
17897
 
17957
17898
  export type MaximumIndefiniteCurseDuration =
17958
17899
  | {
17959
- kind: "Fixed"
17960
- Fixed: DurationUnitValue
17961
- }
17962
- | {
17963
- kind: "CheckResultBased"
17964
- CheckResultBased: CheckResultBasedDuration
17900
+ kind: "Expression"
17901
+ Expression: ExpressionBasedDuration
17965
17902
  }
17966
17903
 
17967
17904
  export interface ElvenMagicalSong {
@@ -18177,30 +18114,14 @@ export interface DominationRitualCostTranslation {
18177
18114
 
18178
18115
  export type DominationRitualDuration =
18179
18116
  | {
18180
- kind: "Fixed"
18181
- Fixed: FixedDominationRitualDuration
18182
- }
18183
- | {
18184
- kind: "CheckResultBased"
18185
- CheckResultBased: CheckResultBasedDuration
18117
+ kind: "Expression"
18118
+ Expression: ExpressionBasedDuration
18186
18119
  }
18187
18120
  | {
18188
18121
  kind: "Indefinite"
18189
18122
  Indefinite: IndefiniteDominationRitualDuration
18190
18123
  }
18191
18124
 
18192
- export interface FixedDominationRitualDuration {
18193
- /**
18194
- * The (unitless) duration.
18195
- */
18196
- value: number
18197
-
18198
- /**
18199
- * The duration unit.
18200
- */
18201
- unit: DurationUnit
18202
- }
18203
-
18204
18125
  export interface IndefiniteDominationRitualDuration {
18205
18126
  /**
18206
18127
  * Specified if the duration has a maximum time span.
@@ -18224,12 +18145,8 @@ export interface IndefiniteDominationRitualDurationTranslation {
18224
18145
 
18225
18146
  export type MaximumIndefiniteDominationRitualDuration =
18226
18147
  | {
18227
- kind: "Fixed"
18228
- Fixed: FixedDominationRitualDuration
18229
- }
18230
- | {
18231
- kind: "CheckResultBased"
18232
- CheckResultBased: CheckResultBasedDuration
18148
+ kind: "Expression"
18149
+ Expression: ExpressionBasedDuration
18233
18150
  }
18234
18151
 
18235
18152
  export interface MagicalMelody {
@@ -18548,6 +18465,29 @@ export interface IndefiniteMagicalDanceCostTranslation {
18548
18465
  description: ResponsiveText
18549
18466
  }
18550
18467
 
18468
+ export interface CheckResultBasedModifier {
18469
+ /**
18470
+ * The arithmetic how to apply the `value` to the `base`.
18471
+ */
18472
+ arithmetic: CheckResultArithmetic
18473
+
18474
+ /**
18475
+ * The value that is applied to the `base` using the defined `arithmetic`.
18476
+ */
18477
+ value: number
18478
+ }
18479
+
18480
+ /**
18481
+ * Defines how the the `value` is set off against the check result.
18482
+ */
18483
+ export type CheckResultArithmetic =
18484
+ | {
18485
+ kind: "Multiply"
18486
+ }
18487
+ | {
18488
+ kind: "Divide"
18489
+ }
18490
+
18551
18491
  /**
18552
18492
  * A reference to a music tradition with the music-tradition-specific name of the entry.
18553
18493
  */
@@ -18731,26 +18671,10 @@ export type JesterTrickDuration =
18731
18671
  kind: "Immediate"
18732
18672
  }
18733
18673
  | {
18734
- kind: "Fixed"
18735
- Fixed: FixedJesterTrickDuration
18736
- }
18737
- | {
18738
- kind: "CheckResultBased"
18739
- CheckResultBased: CheckResultBasedDuration
18674
+ kind: "Expression"
18675
+ Expression: ExpressionBasedDuration
18740
18676
  }
18741
18677
 
18742
- export interface FixedJesterTrickDuration {
18743
- /**
18744
- * The (unitless) duration.
18745
- */
18746
- value: number
18747
-
18748
- /**
18749
- * The duration unit.
18750
- */
18751
- unit: DurationUnit
18752
- }
18753
-
18754
18678
  export interface AnimistPower {
18755
18679
  /**
18756
18680
  * Lists the linked three attributes used to make a skill check.
@@ -18915,12 +18839,8 @@ export type OneTimeAnimistPowerDuration =
18915
18839
  kind: "Immediate"
18916
18840
  }
18917
18841
  | {
18918
- kind: "Fixed"
18919
- Fixed: DurationUnitValue
18920
- }
18921
- | {
18922
- kind: "CheckResultBased"
18923
- CheckResultBased: CheckResultBasedDuration
18842
+ kind: "Expression"
18843
+ Expression: ExpressionBasedDuration
18924
18844
  }
18925
18845
 
18926
18846
  export interface SustainedAnimistPowerPerformanceParameters {
@@ -19148,12 +19068,8 @@ export type GeodeRitualDuration =
19148
19068
  kind: "Immediate"
19149
19069
  }
19150
19070
  | {
19151
- kind: "Fixed"
19152
- Fixed: DurationUnitValue
19153
- }
19154
- | {
19155
- kind: "CheckResultBased"
19156
- CheckResultBased: CheckResultBasedDuration
19071
+ kind: "Expression"
19072
+ Expression: ExpressionBasedDuration
19157
19073
  }
19158
19074
 
19159
19075
  export type GeodeRitualPrerequisites = PlainPrerequisites<GeodeRitualPrerequisiteGroup>
@@ -19331,8 +19247,8 @@ export type GoblinRitualRangeValue =
19331
19247
  kind: "Touch"
19332
19248
  }
19333
19249
  | {
19334
- kind: "Fixed"
19335
- Fixed: FixedRange
19250
+ kind: "Expression"
19251
+ Expression: ExpressionBasedRange
19336
19252
  }
19337
19253
 
19338
19254
  export type GoblinRitualDuration =
@@ -19340,12 +19256,8 @@ export type GoblinRitualDuration =
19340
19256
  kind: "Immediate"
19341
19257
  }
19342
19258
  | {
19343
- kind: "Fixed"
19344
- Fixed: DurationUnitValue
19345
- }
19346
- | {
19347
- kind: "CheckResultBased"
19348
- CheckResultBased: CheckResultBasedDuration
19259
+ kind: "Expression"
19260
+ Expression: ExpressionBasedDuration
19349
19261
  }
19350
19262
 
19351
19263
  export interface GoblinRitualSustainedPerformanceParameters {
@@ -19712,12 +19624,12 @@ export interface MagicalRuneDuration {
19712
19624
  /**
19713
19625
  * The duration on slow rune application.
19714
19626
  */
19715
- slow: CheckResultBasedDuration
19627
+ slow: ExpressionBasedDuration
19716
19628
 
19717
19629
  /**
19718
19630
  * The duration on fast rune application.
19719
19631
  */
19720
- fast: CheckResultBasedDuration
19632
+ fast: ExpressionBasedDuration
19721
19633
  }
19722
19634
 
19723
19635
  export type MagicalRuneImprovementCost =
@@ -24739,8 +24651,8 @@ export type FamiliarsTrickOneTimeDuration =
24739
24651
  kind: "Immediate"
24740
24652
  }
24741
24653
  | {
24742
- kind: "Fixed"
24743
- Fixed: FixedDuration
24654
+ kind: "Expression"
24655
+ Expression: ExpressionBasedDuration
24744
24656
  }
24745
24657
  | {
24746
24658
  kind: "Indefinite"
@@ -180,29 +180,9 @@ export declare const Ceremony: DB.Entity<"Ceremony", {
180
180
  Self: DB.EnumCase<null>;
181
181
  Global: DB.EnumCase<null>;
182
182
  Touch: DB.EnumCase<null>;
183
- Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedRange", DB.Object<{
183
+ Expression: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ExpressionBasedRange", DB.Object<{
184
184
  is_maximum: DB.MemberDecl<DB.Boolean, false>;
185
- value: DB.MemberDecl<DB.Integer, true>;
186
- unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"RangeUnit", {
187
- Steps: DB.EnumCase<null>;
188
- Miles: DB.EnumCase<null>;
189
- }, []>>, true>;
190
- is_radius: DB.MemberDecl<DB.Boolean, false>;
191
- }>, []>>>;
192
- CheckResultBased: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"CheckResultBasedRange", DB.Object<{
193
- is_maximum: DB.MemberDecl<DB.Boolean, false>;
194
- base: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"CheckResultValue", {
195
- QualityLevels: DB.EnumCase<null>;
196
- SkillPoints: DB.EnumCase<null>;
197
- SkillRating: DB.EnumCase<null>;
198
- }, []>>, true>;
199
- modifier: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"CheckResultBasedModifier", DB.Object<{
200
- arithmetic: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"CheckResultArithmetic", {
201
- Multiply: DB.EnumCase<null>;
202
- Divide: DB.EnumCase<null>;
203
- }, []>>, true>;
204
- value: DB.MemberDecl<DB.Integer, true>;
205
- }>, []>>, false>;
185
+ value: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ExpressionBasedParameterValue", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], import("./_MathExpression.ts").MathOperation>, []>>, true>;
206
186
  unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"RangeUnit", {
207
187
  Steps: DB.EnumCase<null>;
208
188
  Miles: DB.EnumCase<null>;
@@ -253,42 +233,9 @@ export declare const Ceremony: DB.Entity<"Ceremony", {
253
233
  }>, []>>, false>;
254
234
  }>, false>;
255
235
  }>, []>>>;
256
- Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedDuration", DB.Object<{
257
- is_maximum: DB.MemberDecl<DB.Boolean, false>;
258
- value: DB.MemberDecl<DB.Integer, true>;
259
- unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DurationUnit", {
260
- Seconds: DB.EnumCase<null>;
261
- Minutes: DB.EnumCase<null>;
262
- Hours: DB.EnumCase<null>;
263
- Days: DB.EnumCase<null>;
264
- Weeks: DB.EnumCase<null>;
265
- Months: DB.EnumCase<null>;
266
- Years: DB.EnumCase<null>;
267
- Centuries: DB.EnumCase<null>;
268
- Actions: DB.EnumCase<null>;
269
- CombatRounds: DB.EnumCase<null>;
270
- }, []>>, true>;
271
- translations: DB.MemberDecl<DB.NestedEntityMap<"FixedDurationTranslation", {
272
- replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextReplace", DB.Object<{
273
- full: DB.MemberDecl<DB.String, true>;
274
- compressed: DB.MemberDecl<DB.String, true>;
275
- }>, []>>, false>;
276
- }>, false>;
277
- }>, []>>>;
278
- CheckResultBased: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"CheckResultBasedDuration", DB.Object<{
236
+ Expression: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ExpressionBasedDuration", DB.Object<{
279
237
  is_maximum: DB.MemberDecl<DB.Boolean, false>;
280
- base: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"CheckResultValue", {
281
- QualityLevels: DB.EnumCase<null>;
282
- SkillPoints: DB.EnumCase<null>;
283
- SkillRating: DB.EnumCase<null>;
284
- }, []>>, true>;
285
- modifier: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"CheckResultBasedModifier", DB.Object<{
286
- arithmetic: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"CheckResultArithmetic", {
287
- Multiply: DB.EnumCase<null>;
288
- Divide: DB.EnumCase<null>;
289
- }, []>>, true>;
290
- value: DB.MemberDecl<DB.Integer, true>;
291
- }>, []>>, false>;
238
+ value: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ExpressionBasedParameterValue", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], import("./_MathExpression.ts").MathOperation>, []>>, true>;
292
239
  unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DurationUnit", {
293
240
  Seconds: DB.EnumCase<null>;
294
241
  Minutes: DB.EnumCase<null>;
@@ -301,7 +248,7 @@ export declare const Ceremony: DB.Entity<"Ceremony", {
301
248
  Actions: DB.EnumCase<null>;
302
249
  CombatRounds: DB.EnumCase<null>;
303
250
  }, []>>, true>;
304
- translations: DB.MemberDecl<DB.NestedEntityMap<"CheckResultBasedDurationTranslation", {
251
+ translations: DB.MemberDecl<DB.NestedEntityMap<"ExpressionBasedDurationTranslation", {
305
252
  replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextReplace", DB.Object<{
306
253
  full: DB.MemberDecl<DB.String, true>;
307
254
  compressed: DB.MemberDecl<DB.String, true>;
@@ -423,29 +370,9 @@ export declare const Ceremony: DB.Entity<"Ceremony", {
423
370
  Self: DB.EnumCase<null>;
424
371
  Global: DB.EnumCase<null>;
425
372
  Touch: DB.EnumCase<null>;
426
- Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedRange", DB.Object<{
373
+ Expression: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ExpressionBasedRange", DB.Object<{
427
374
  is_maximum: DB.MemberDecl<DB.Boolean, false>;
428
- value: DB.MemberDecl<DB.Integer, true>;
429
- unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"RangeUnit", {
430
- Steps: DB.EnumCase<null>;
431
- Miles: DB.EnumCase<null>;
432
- }, []>>, true>;
433
- is_radius: DB.MemberDecl<DB.Boolean, false>;
434
- }>, []>>>;
435
- CheckResultBased: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"CheckResultBasedRange", DB.Object<{
436
- is_maximum: DB.MemberDecl<DB.Boolean, false>;
437
- base: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"CheckResultValue", {
438
- QualityLevels: DB.EnumCase<null>;
439
- SkillPoints: DB.EnumCase<null>;
440
- SkillRating: DB.EnumCase<null>;
441
- }, []>>, true>;
442
- modifier: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"CheckResultBasedModifier", DB.Object<{
443
- arithmetic: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"CheckResultArithmetic", {
444
- Multiply: DB.EnumCase<null>;
445
- Divide: DB.EnumCase<null>;
446
- }, []>>, true>;
447
- value: DB.MemberDecl<DB.Integer, true>;
448
- }>, []>>, false>;
375
+ value: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ExpressionBasedParameterValue", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], import("./_MathExpression.ts").MathOperation>, []>>, true>;
449
376
  unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"RangeUnit", {
450
377
  Steps: DB.EnumCase<null>;
451
378
  Miles: DB.EnumCase<null>;
@@ -3,6 +3,10 @@ export declare const Culture: DB.Entity<"Culture", {
3
3
  language: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"CultureLanguage", DB.Object<{
4
4
  id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
5
5
  specializations: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
6
+ translations: DB.MemberDecl<DB.NestedEntityMap<"CultureLanguageTranslation", {
7
+ specialization: DB.MemberDecl<DB.String, false>;
8
+ specializationPrompt: DB.MemberDecl<DB.String, false>;
9
+ }>, false>;
6
10
  }>, []>>>, true>;
7
11
  script: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
8
12
  area_knowledge: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"AreaKnowledge", DB.Object<{