@optolith/database-schema 0.51.0 → 0.52.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/gen/types.d.ts +18 -0
  3. package/lib/types/_ActivatableCombat.d.ts +3 -0
  4. package/lib/types/_ActivatableCombat.js +7 -0
  5. package/lib/types/_ActivatableNonMundane.d.ts +68 -0
  6. package/lib/types/_ActivatableNonMundane.js +2 -0
  7. package/lib/types/equipment/item/sub/BotanicRegion.js +3 -0
  8. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +3 -0
  9. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +3 -0
  10. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +3 -0
  11. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +3 -0
  12. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +3 -0
  13. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +34 -0
  14. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +34 -0
  15. package/lib/types/traditionArtifacts/Beutelzauber.d.ts +34 -0
  16. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +34 -0
  17. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +34 -0
  18. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +34 -0
  19. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +34 -0
  20. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +34 -0
  21. package/lib/types/traditionArtifacts/Haubenzauber.d.ts +34 -0
  22. package/lib/types/traditionArtifacts/Hauerkettenzauber.d.ts +34 -0
  23. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +34 -0
  24. package/lib/types/traditionArtifacts/Keulenzauber.d.ts +34 -0
  25. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +34 -0
  26. package/lib/types/traditionArtifacts/Kristallkugelzauber.d.ts +34 -0
  27. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +34 -0
  28. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +34 -0
  29. package/lib/types/traditionArtifacts/Schweinetrommelzauber.d.ts +34 -0
  30. package/lib/types/traditionArtifacts/SickleRitual.d.ts +34 -0
  31. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +34 -0
  32. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +34 -0
  33. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +34 -0
  34. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +34 -0
  35. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +34 -0
  36. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +34 -0
  37. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,25 @@
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.52.1](https://github.com/Optolith/database-schema/compare/v0.52.0...v0.52.1) (2026-06-20)
6
+
7
+
8
+ ### Features
9
+
10
+ * optional translation for combat technique restrictions ([1e30f55](https://github.com/Optolith/database-schema/commit/1e30f55407cae829aae2d1a1097c30eff4c68f3a)), closes [#169](https://github.com/Optolith/database-schema/issues/169) [#168](https://github.com/Optolith/database-schema/issues/168)
11
+
12
+ ## [0.52.0](https://github.com/Optolith/database-schema/compare/v0.51.0...v0.52.0) (2026-06-19)
13
+
14
+
15
+ ### ⚠ BREAKING CHANGES
16
+
17
+ * enchantment cost map
18
+
19
+ ### Features
20
+
21
+ * botanic region uniqueness per parent ([3b522aa](https://github.com/Optolith/database-schema/commit/3b522aa9d7a76b1d8dafa3a89b1712ecba4b0c85)), closes [#166](https://github.com/Optolith/database-schema/issues/166) [#165](https://github.com/Optolith/database-schema/issues/165)
22
+ * enchantment cost map ([894fe21](https://github.com/Optolith/database-schema/commit/894fe21536d21c2bbc618ec77279da96f5303f06)), closes [#167](https://github.com/Optolith/database-schema/issues/167) [#164](https://github.com/Optolith/database-schema/issues/164)
23
+
5
24
  ## [0.51.0](https://github.com/Optolith/database-schema/compare/v0.50.1...v0.51.0) (2026-06-18)
6
25
 
7
26
 
package/gen/types.d.ts CHANGED
@@ -10900,6 +10900,10 @@ export type ArcaneEnergyCost =
10900
10900
  kind: "ByLevel"
10901
10901
  ByLevel: ArcaneEnergyCostByLevel
10902
10902
  }
10903
+ | {
10904
+ kind: "Map"
10905
+ Map: OneTimeCostMap
10906
+ }
10903
10907
 
10904
10908
  export interface FixedArcaneEnergyCost {
10905
10909
  /**
@@ -11843,12 +11847,26 @@ export interface SpecificApplicableCombatTechnique {
11843
11847
 
11844
11848
  restriction?: ApplicableSpecificCombatTechniquesRestriction
11845
11849
 
11850
+ /**
11851
+ * All translations for the entry, identified by IETF language tag (BCP47).
11852
+ */
11853
+ translation?: {
11854
+ [localeId: string]: SpecificApplicableCombatTechniqueTranslation
11855
+ }
11856
+
11846
11857
  /**
11847
11858
  * The specific weapons this combat special ability is only applicable to.
11848
11859
  */
11849
11860
  weapons?: Weapon_ID[]
11850
11861
  }
11851
11862
 
11863
+ export interface SpecificApplicableCombatTechniqueTranslation {
11864
+ /**
11865
+ * The additional restriction of the combat technique.
11866
+ */
11867
+ restriction: string
11868
+ }
11869
+
11852
11870
  export type ApplicableSpecificCombatTechniquesRestriction =
11853
11871
  | {
11854
11872
  kind: "Improvised"
@@ -117,6 +117,9 @@ export declare const combat_techniques: DB.MemberDecl<DB.IncludeIdentifier<[], D
117
117
  }>, []>>>;
118
118
  OneBluntSide: DB.EnumCase<null>;
119
119
  }, []>>, false>;
120
+ translation: DB.MemberDecl<DB.NestedEntityMap<"SpecificApplicableCombatTechniqueTranslation", {
121
+ restriction: DB.MemberDecl<DB.String, true>;
122
+ }>, false>;
120
123
  weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
121
124
  }>, []>>>, true>;
122
125
  }>, []>>>;
@@ -1,6 +1,7 @@
1
1
  import * as DB from "tsondb/schema/dsl";
2
2
  import { CloseCombatTechniqueIdentifier, RaceIdentifier, RangedCombatTechniqueIdentifier, WeaponIdentifier, } from "./_Identifier.js";
3
3
  import { CombatRelatedSpecialAbilityIdentifier, CombatTechniqueIdentifier, } from "./_IdentifierGroup.js";
4
+ import { NestedTranslationMap } from "./Locale.js";
4
5
  const CombatSpecialAbilityUsageType = DB.Enum(import.meta.url, {
5
6
  name: "CombatSpecialAbilityUsageType",
6
7
  comment: "The definition of how the combat special ability can be used in combat.",
@@ -262,6 +263,12 @@ const SpecificApplicableCombatTechnique = DB.TypeAlias(import.meta.url, {
262
263
  restriction: DB.Optional({
263
264
  type: DB.IncludeIdentifier(ApplicableSpecificCombatTechniquesRestriction),
264
265
  }),
266
+ translation: NestedTranslationMap(DB.Optional, "SpecificApplicableCombatTechnique", DB.Object({
267
+ restriction: DB.Required({
268
+ comment: "The additional restriction of the combat technique.",
269
+ type: DB.String({ minLength: 1, markdown: "inline" }),
270
+ }),
271
+ })),
265
272
  weapons: DB.Optional({
266
273
  comment: "The specific weapons this combat special ability is only applicable to.",
267
274
  type: DB.Array(WeaponIdentifier(), { minItems: 1 }),
@@ -122,6 +122,40 @@ export declare const cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Encha
122
122
  Verbose: DB.EnumCase<null>;
123
123
  }, []>>, true>;
124
124
  }>, []>>>;
125
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
126
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
127
+ value: DB.MemberDecl<DB.Integer, true>;
128
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
129
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
130
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
131
+ full: DB.MemberDecl<DB.String, true>;
132
+ compressed: DB.MemberDecl<DB.String, false>;
133
+ }>, []>>, true>;
134
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
135
+ full: DB.MemberDecl<DB.String, true>;
136
+ compressed: DB.MemberDecl<DB.String, false>;
137
+ }>, []>>, false>;
138
+ }>, false>;
139
+ }>, []>>>, true>;
140
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
141
+ Compressed: DB.EnumCase<null>;
142
+ Verbose: DB.EnumCase<null>;
143
+ }, []>>, false>;
144
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
145
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
146
+ full: DB.MemberDecl<DB.String, true>;
147
+ compressed: DB.MemberDecl<DB.String, false>;
148
+ }>, []>>, false>;
149
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
150
+ full: DB.MemberDecl<DB.String, true>;
151
+ compressed: DB.MemberDecl<DB.String, false>;
152
+ }>, []>>, false>;
153
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
154
+ full: DB.MemberDecl<DB.String, true>;
155
+ compressed: DB.MemberDecl<DB.String, false>;
156
+ }>, []>>, false>;
157
+ }>, false>;
158
+ }>, []>>>;
125
159
  }, []>>>;
126
160
  BindingCost: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"BindingCost", {
127
161
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedBindingCost", DB.Object<{
@@ -286,6 +320,40 @@ export declare const ArcaneEnergyCost: DB.Enum<"ArcaneEnergyCost", {
286
320
  Verbose: DB.EnumCase<null>;
287
321
  }, []>>, true>;
288
322
  }>, []>>>;
323
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
324
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
325
+ value: DB.MemberDecl<DB.Integer, true>;
326
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
327
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
328
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
329
+ full: DB.MemberDecl<DB.String, true>;
330
+ compressed: DB.MemberDecl<DB.String, false>;
331
+ }>, []>>, true>;
332
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
333
+ full: DB.MemberDecl<DB.String, true>;
334
+ compressed: DB.MemberDecl<DB.String, false>;
335
+ }>, []>>, false>;
336
+ }>, false>;
337
+ }>, []>>>, true>;
338
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
339
+ Compressed: DB.EnumCase<null>;
340
+ Verbose: DB.EnumCase<null>;
341
+ }, []>>, false>;
342
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
343
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
344
+ full: DB.MemberDecl<DB.String, true>;
345
+ compressed: DB.MemberDecl<DB.String, false>;
346
+ }>, []>>, false>;
347
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
348
+ full: DB.MemberDecl<DB.String, true>;
349
+ compressed: DB.MemberDecl<DB.String, false>;
350
+ }>, []>>, false>;
351
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
352
+ full: DB.MemberDecl<DB.String, true>;
353
+ compressed: DB.MemberDecl<DB.String, false>;
354
+ }>, []>>, false>;
355
+ }>, false>;
356
+ }>, []>>>;
289
357
  }, []>;
290
358
  export declare const aeCost: DB.MemberDecl<DB.String, false>;
291
359
  export declare const volume: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Volume", {
@@ -4,6 +4,7 @@ import { DurationUnitValue } from "./_ActivatableSkillDuration.js";
4
4
  import { AspectIdentifier, PropertyIdentifier } from "./_Identifier.js";
5
5
  import { VolumePointsOptionReferenceIdentifier } from "./_IdentifierGroup.js";
6
6
  import { ResponsiveText, ResponsiveTextOptional } from "./_ResponsiveText.js";
7
+ import { OneTimeCostMap } from "./_ActivatableSkillCost.js";
7
8
  const EnchantmentCost = DB.Enum(import.meta.url, {
8
9
  name: "EnchantmentCost",
9
10
  values: () => ({
@@ -33,6 +34,7 @@ export const ArcaneEnergyCost = DB.Enum(import.meta.url, {
33
34
  Disjunction: DB.EnumCase({ type: DB.IncludeIdentifier(ArcaneEnergyCostDisjunction) }),
34
35
  Variable: DB.EnumCase({ type: null }),
35
36
  ByLevel: DB.EnumCase({ type: DB.IncludeIdentifier(ArcaneEnergyCostByLevel) }),
37
+ Map: DB.EnumCase({ type: DB.IncludeIdentifier(OneTimeCostMap) }),
36
38
  }),
37
39
  });
38
40
  export const aeCost = DB.Optional({
@@ -23,5 +23,8 @@ export const BotanicRegion = DB.Entity(import.meta.url, {
23
23
  entityMapKeyPath: "translations",
24
24
  keyPathInEntityMap: "name",
25
25
  },
26
+ {
27
+ keyPath: "parent",
28
+ },
26
29
  ],
27
30
  });
@@ -1114,6 +1114,9 @@ export declare const AdvancedCombatSpecialAbility: DB.Entity<"AdvancedCombatSpec
1114
1114
  }>, []>>>;
1115
1115
  OneBluntSide: DB.EnumCase<null>;
1116
1116
  }, []>>, false>;
1117
+ translation: DB.MemberDecl<DB.NestedEntityMap<"SpecificApplicableCombatTechniqueTranslation", {
1118
+ restriction: DB.MemberDecl<DB.String, true>;
1119
+ }>, false>;
1117
1120
  weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
1118
1121
  }>, []>>>, true>;
1119
1122
  }>, []>>>;
@@ -1008,6 +1008,9 @@ export declare const BrawlingSpecialAbility: DB.Entity<"BrawlingSpecialAbility",
1008
1008
  }>, []>>>;
1009
1009
  OneBluntSide: DB.EnumCase<null>;
1010
1010
  }, []>>, false>;
1011
+ translation: DB.MemberDecl<DB.NestedEntityMap<"SpecificApplicableCombatTechniqueTranslation", {
1012
+ restriction: DB.MemberDecl<DB.String, true>;
1013
+ }>, false>;
1011
1014
  weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
1012
1015
  }>, []>>>, true>;
1013
1016
  }>, []>>>;
@@ -1114,6 +1114,9 @@ export declare const CombatSpecialAbility: DB.Entity<"CombatSpecialAbility", {
1114
1114
  }>, []>>>;
1115
1115
  OneBluntSide: DB.EnumCase<null>;
1116
1116
  }, []>>, false>;
1117
+ translation: DB.MemberDecl<DB.NestedEntityMap<"SpecificApplicableCombatTechniqueTranslation", {
1118
+ restriction: DB.MemberDecl<DB.String, true>;
1119
+ }>, false>;
1117
1120
  weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
1118
1121
  }>, []>>>, true>;
1119
1122
  }>, []>>>;
@@ -1167,6 +1167,9 @@ export declare const CombatStyleSpecialAbility: DB.Entity<"CombatStyleSpecialAbi
1167
1167
  }>, []>>>;
1168
1168
  OneBluntSide: DB.EnumCase<null>;
1169
1169
  }, []>>, false>;
1170
+ translation: DB.MemberDecl<DB.NestedEntityMap<"SpecificApplicableCombatTechniqueTranslation", {
1171
+ restriction: DB.MemberDecl<DB.String, true>;
1172
+ }>, false>;
1170
1173
  weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
1171
1174
  }>, []>>>, true>;
1172
1175
  }>, []>>>;
@@ -1008,6 +1008,9 @@ export declare const CommandSpecialAbility: DB.Entity<"CommandSpecialAbility", {
1008
1008
  }>, []>>>;
1009
1009
  OneBluntSide: DB.EnumCase<null>;
1010
1010
  }, []>>, false>;
1011
+ translation: DB.MemberDecl<DB.NestedEntityMap<"SpecificApplicableCombatTechniqueTranslation", {
1012
+ restriction: DB.MemberDecl<DB.String, true>;
1013
+ }>, false>;
1011
1014
  weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
1012
1015
  }>, []>>>, true>;
1013
1016
  }>, []>>>;
@@ -1117,6 +1117,40 @@ export declare const ArcaneOrbEnchantment: DB.Entity<"ArcaneOrbEnchantment", {
1117
1117
  Verbose: DB.EnumCase<null>;
1118
1118
  }, []>>, true>;
1119
1119
  }>, []>>>;
1120
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
1121
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
1122
+ value: DB.MemberDecl<DB.Integer, true>;
1123
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
1124
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
1125
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1126
+ full: DB.MemberDecl<DB.String, true>;
1127
+ compressed: DB.MemberDecl<DB.String, false>;
1128
+ }>, []>>, true>;
1129
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1130
+ full: DB.MemberDecl<DB.String, true>;
1131
+ compressed: DB.MemberDecl<DB.String, false>;
1132
+ }>, []>>, false>;
1133
+ }>, false>;
1134
+ }>, []>>>, true>;
1135
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
1136
+ Compressed: DB.EnumCase<null>;
1137
+ Verbose: DB.EnumCase<null>;
1138
+ }, []>>, false>;
1139
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
1140
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1141
+ full: DB.MemberDecl<DB.String, true>;
1142
+ compressed: DB.MemberDecl<DB.String, false>;
1143
+ }>, []>>, false>;
1144
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1145
+ full: DB.MemberDecl<DB.String, true>;
1146
+ compressed: DB.MemberDecl<DB.String, false>;
1147
+ }>, []>>, false>;
1148
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1149
+ full: DB.MemberDecl<DB.String, true>;
1150
+ compressed: DB.MemberDecl<DB.String, false>;
1151
+ }>, []>>, false>;
1152
+ }>, false>;
1153
+ }>, []>>>;
1120
1154
  }, []>>>;
1121
1155
  BindingCost: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"BindingCost", {
1122
1156
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedBindingCost", DB.Object<{
@@ -1117,6 +1117,40 @@ export declare const AttireEnchantment: DB.Entity<"AttireEnchantment", {
1117
1117
  Verbose: DB.EnumCase<null>;
1118
1118
  }, []>>, true>;
1119
1119
  }>, []>>>;
1120
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
1121
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
1122
+ value: DB.MemberDecl<DB.Integer, true>;
1123
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
1124
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
1125
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1126
+ full: DB.MemberDecl<DB.String, true>;
1127
+ compressed: DB.MemberDecl<DB.String, false>;
1128
+ }>, []>>, true>;
1129
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1130
+ full: DB.MemberDecl<DB.String, true>;
1131
+ compressed: DB.MemberDecl<DB.String, false>;
1132
+ }>, []>>, false>;
1133
+ }>, false>;
1134
+ }>, []>>>, true>;
1135
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
1136
+ Compressed: DB.EnumCase<null>;
1137
+ Verbose: DB.EnumCase<null>;
1138
+ }, []>>, false>;
1139
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
1140
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1141
+ full: DB.MemberDecl<DB.String, true>;
1142
+ compressed: DB.MemberDecl<DB.String, false>;
1143
+ }>, []>>, false>;
1144
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1145
+ full: DB.MemberDecl<DB.String, true>;
1146
+ compressed: DB.MemberDecl<DB.String, false>;
1147
+ }>, []>>, false>;
1148
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1149
+ full: DB.MemberDecl<DB.String, true>;
1150
+ compressed: DB.MemberDecl<DB.String, false>;
1151
+ }>, []>>, false>;
1152
+ }>, false>;
1153
+ }>, []>>>;
1120
1154
  }, []>>>;
1121
1155
  BindingCost: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"BindingCost", {
1122
1156
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedBindingCost", DB.Object<{
@@ -1117,6 +1117,40 @@ export declare const Beutelzauber: DB.Entity<"Beutelzauber", {
1117
1117
  Verbose: DB.EnumCase<null>;
1118
1118
  }, []>>, true>;
1119
1119
  }>, []>>>;
1120
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
1121
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
1122
+ value: DB.MemberDecl<DB.Integer, true>;
1123
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
1124
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
1125
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1126
+ full: DB.MemberDecl<DB.String, true>;
1127
+ compressed: DB.MemberDecl<DB.String, false>;
1128
+ }>, []>>, true>;
1129
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1130
+ full: DB.MemberDecl<DB.String, true>;
1131
+ compressed: DB.MemberDecl<DB.String, false>;
1132
+ }>, []>>, false>;
1133
+ }>, false>;
1134
+ }>, []>>>, true>;
1135
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
1136
+ Compressed: DB.EnumCase<null>;
1137
+ Verbose: DB.EnumCase<null>;
1138
+ }, []>>, false>;
1139
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
1140
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1141
+ full: DB.MemberDecl<DB.String, true>;
1142
+ compressed: DB.MemberDecl<DB.String, false>;
1143
+ }>, []>>, false>;
1144
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1145
+ full: DB.MemberDecl<DB.String, true>;
1146
+ compressed: DB.MemberDecl<DB.String, false>;
1147
+ }>, []>>, false>;
1148
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1149
+ full: DB.MemberDecl<DB.String, true>;
1150
+ compressed: DB.MemberDecl<DB.String, false>;
1151
+ }>, []>>, false>;
1152
+ }>, false>;
1153
+ }>, []>>>;
1120
1154
  }, []>>>;
1121
1155
  BindingCost: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"BindingCost", {
1122
1156
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedBindingCost", DB.Object<{
@@ -1117,6 +1117,40 @@ export declare const BowlEnchantment: DB.Entity<"BowlEnchantment", {
1117
1117
  Verbose: DB.EnumCase<null>;
1118
1118
  }, []>>, true>;
1119
1119
  }>, []>>>;
1120
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
1121
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
1122
+ value: DB.MemberDecl<DB.Integer, true>;
1123
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
1124
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
1125
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1126
+ full: DB.MemberDecl<DB.String, true>;
1127
+ compressed: DB.MemberDecl<DB.String, false>;
1128
+ }>, []>>, true>;
1129
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1130
+ full: DB.MemberDecl<DB.String, true>;
1131
+ compressed: DB.MemberDecl<DB.String, false>;
1132
+ }>, []>>, false>;
1133
+ }>, false>;
1134
+ }>, []>>>, true>;
1135
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
1136
+ Compressed: DB.EnumCase<null>;
1137
+ Verbose: DB.EnumCase<null>;
1138
+ }, []>>, false>;
1139
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
1140
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1141
+ full: DB.MemberDecl<DB.String, true>;
1142
+ compressed: DB.MemberDecl<DB.String, false>;
1143
+ }>, []>>, false>;
1144
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1145
+ full: DB.MemberDecl<DB.String, true>;
1146
+ compressed: DB.MemberDecl<DB.String, false>;
1147
+ }>, []>>, false>;
1148
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1149
+ full: DB.MemberDecl<DB.String, true>;
1150
+ compressed: DB.MemberDecl<DB.String, false>;
1151
+ }>, []>>, false>;
1152
+ }>, false>;
1153
+ }>, []>>>;
1120
1154
  }, []>>>;
1121
1155
  BindingCost: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"BindingCost", {
1122
1156
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedBindingCost", DB.Object<{
@@ -1118,6 +1118,40 @@ export declare const CauldronEnchantment: DB.Entity<"CauldronEnchantment", {
1118
1118
  Verbose: DB.EnumCase<null>;
1119
1119
  }, []>>, true>;
1120
1120
  }>, []>>>;
1121
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
1122
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
1123
+ value: DB.MemberDecl<DB.Integer, true>;
1124
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
1125
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
1126
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1127
+ full: DB.MemberDecl<DB.String, true>;
1128
+ compressed: DB.MemberDecl<DB.String, false>;
1129
+ }>, []>>, true>;
1130
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1131
+ full: DB.MemberDecl<DB.String, true>;
1132
+ compressed: DB.MemberDecl<DB.String, false>;
1133
+ }>, []>>, false>;
1134
+ }>, false>;
1135
+ }>, []>>>, true>;
1136
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
1137
+ Compressed: DB.EnumCase<null>;
1138
+ Verbose: DB.EnumCase<null>;
1139
+ }, []>>, false>;
1140
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
1141
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1142
+ full: DB.MemberDecl<DB.String, true>;
1143
+ compressed: DB.MemberDecl<DB.String, false>;
1144
+ }>, []>>, false>;
1145
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1146
+ full: DB.MemberDecl<DB.String, true>;
1147
+ compressed: DB.MemberDecl<DB.String, false>;
1148
+ }>, []>>, false>;
1149
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1150
+ full: DB.MemberDecl<DB.String, true>;
1151
+ compressed: DB.MemberDecl<DB.String, false>;
1152
+ }>, []>>, false>;
1153
+ }>, false>;
1154
+ }>, []>>>;
1121
1155
  }, []>>>;
1122
1156
  BindingCost: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"BindingCost", {
1123
1157
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedBindingCost", DB.Object<{
@@ -1117,6 +1117,40 @@ export declare const ChronicleEnchantment: DB.Entity<"ChronicleEnchantment", {
1117
1117
  Verbose: DB.EnumCase<null>;
1118
1118
  }, []>>, true>;
1119
1119
  }>, []>>>;
1120
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
1121
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
1122
+ value: DB.MemberDecl<DB.Integer, true>;
1123
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
1124
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
1125
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1126
+ full: DB.MemberDecl<DB.String, true>;
1127
+ compressed: DB.MemberDecl<DB.String, false>;
1128
+ }>, []>>, true>;
1129
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1130
+ full: DB.MemberDecl<DB.String, true>;
1131
+ compressed: DB.MemberDecl<DB.String, false>;
1132
+ }>, []>>, false>;
1133
+ }>, false>;
1134
+ }>, []>>>, true>;
1135
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
1136
+ Compressed: DB.EnumCase<null>;
1137
+ Verbose: DB.EnumCase<null>;
1138
+ }, []>>, false>;
1139
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
1140
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1141
+ full: DB.MemberDecl<DB.String, true>;
1142
+ compressed: DB.MemberDecl<DB.String, false>;
1143
+ }>, []>>, false>;
1144
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1145
+ full: DB.MemberDecl<DB.String, true>;
1146
+ compressed: DB.MemberDecl<DB.String, false>;
1147
+ }>, []>>, false>;
1148
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1149
+ full: DB.MemberDecl<DB.String, true>;
1150
+ compressed: DB.MemberDecl<DB.String, false>;
1151
+ }>, []>>, false>;
1152
+ }>, false>;
1153
+ }>, []>>>;
1120
1154
  }, []>>>;
1121
1155
  BindingCost: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"BindingCost", {
1122
1156
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedBindingCost", DB.Object<{
@@ -1118,6 +1118,40 @@ export declare const DaggerRitual: DB.Entity<"DaggerRitual", {
1118
1118
  Verbose: DB.EnumCase<null>;
1119
1119
  }, []>>, true>;
1120
1120
  }>, []>>>;
1121
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
1122
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
1123
+ value: DB.MemberDecl<DB.Integer, true>;
1124
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
1125
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
1126
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1127
+ full: DB.MemberDecl<DB.String, true>;
1128
+ compressed: DB.MemberDecl<DB.String, false>;
1129
+ }>, []>>, true>;
1130
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1131
+ full: DB.MemberDecl<DB.String, true>;
1132
+ compressed: DB.MemberDecl<DB.String, false>;
1133
+ }>, []>>, false>;
1134
+ }>, false>;
1135
+ }>, []>>>, true>;
1136
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
1137
+ Compressed: DB.EnumCase<null>;
1138
+ Verbose: DB.EnumCase<null>;
1139
+ }, []>>, false>;
1140
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
1141
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1142
+ full: DB.MemberDecl<DB.String, true>;
1143
+ compressed: DB.MemberDecl<DB.String, false>;
1144
+ }>, []>>, false>;
1145
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1146
+ full: DB.MemberDecl<DB.String, true>;
1147
+ compressed: DB.MemberDecl<DB.String, false>;
1148
+ }>, []>>, false>;
1149
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1150
+ full: DB.MemberDecl<DB.String, true>;
1151
+ compressed: DB.MemberDecl<DB.String, false>;
1152
+ }>, []>>, false>;
1153
+ }>, false>;
1154
+ }>, []>>>;
1121
1155
  }, []>>, true>;
1122
1156
  lp_cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"LifePointsCost", {
1123
1157
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedLifePointsCost", DB.Object<{
@@ -1117,6 +1117,40 @@ export declare const FoolsHatEnchantment: DB.Entity<"FoolsHatEnchantment", {
1117
1117
  Verbose: DB.EnumCase<null>;
1118
1118
  }, []>>, true>;
1119
1119
  }>, []>>>;
1120
+ Map: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMap", DB.Object<{
1121
+ options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"OneTimeCostMapOption", DB.Object<{
1122
+ value: DB.MemberDecl<DB.Integer, true>;
1123
+ permanent_value: DB.MemberDecl<DB.Integer, false>;
1124
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapOptionTranslation", {
1125
+ label: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1126
+ full: DB.MemberDecl<DB.String, true>;
1127
+ compressed: DB.MemberDecl<DB.String, false>;
1128
+ }>, []>>, true>;
1129
+ label_standalone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1130
+ full: DB.MemberDecl<DB.String, true>;
1131
+ compressed: DB.MemberDecl<DB.String, false>;
1132
+ }>, []>>, false>;
1133
+ }>, false>;
1134
+ }>, []>>>, true>;
1135
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"MapStyle", {
1136
+ Compressed: DB.EnumCase<null>;
1137
+ Verbose: DB.EnumCase<null>;
1138
+ }, []>>, false>;
1139
+ translations: DB.MemberDecl<DB.NestedEntityMap<"OneTimeCostMapTranslation", {
1140
+ list_prepend: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1141
+ full: DB.MemberDecl<DB.String, true>;
1142
+ compressed: DB.MemberDecl<DB.String, false>;
1143
+ }>, []>>, false>;
1144
+ list_append: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1145
+ full: DB.MemberDecl<DB.String, true>;
1146
+ compressed: DB.MemberDecl<DB.String, false>;
1147
+ }>, []>>, false>;
1148
+ replacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ResponsiveTextOptional", DB.Object<{
1149
+ full: DB.MemberDecl<DB.String, true>;
1150
+ compressed: DB.MemberDecl<DB.String, false>;
1151
+ }>, []>>, false>;
1152
+ }>, false>;
1153
+ }>, []>>>;
1120
1154
  }, []>>>;
1121
1155
  BindingCost: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"BindingCost", {
1122
1156
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedBindingCost", DB.Object<{