optolith-database-schema 0.29.1 → 0.30.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 (42) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/gen/types.d.ts +157 -45
  3. package/lib/types/DerivedCharacteristic.d.ts +1 -0
  4. package/lib/types/DerivedCharacteristic.js +4 -0
  5. package/lib/types/Locale.d.ts +92 -2
  6. package/lib/types/Locale.js +99 -2
  7. package/lib/types/_ActivatableCombat.d.ts +9 -11
  8. package/lib/types/_ActivatableCombat.js +12 -28
  9. package/lib/types/_ActivatableNonMundane.d.ts +18 -38
  10. package/lib/types/_ActivatableNonMundane.js +55 -23
  11. package/lib/types/_IdentifierGroup.d.ts +4 -0
  12. package/lib/types/_IdentifierGroup.js +7 -0
  13. package/lib/types/rule/FocusRule.d.ts +1 -1
  14. package/lib/types/rule/FocusRule.js +1 -1
  15. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +9 -11
  16. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +9 -11
  17. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +9 -11
  18. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +9 -11
  19. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +9 -11
  20. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +2 -2
  21. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +9 -19
  22. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +9 -19
  23. package/lib/types/traditionArtifacts/Beutelzauber.d.ts +9 -19
  24. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +9 -19
  25. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +9 -19
  26. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +9 -19
  27. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +9 -19
  28. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +9 -19
  29. package/lib/types/traditionArtifacts/Haubenzauber.d.ts +9 -19
  30. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +9 -19
  31. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +9 -19
  32. package/lib/types/traditionArtifacts/Kristallkugelzauber.d.ts +9 -19
  33. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +9 -19
  34. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +9 -19
  35. package/lib/types/traditionArtifacts/SickleRitual.d.ts +9 -19
  36. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +9 -19
  37. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +9 -19
  38. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +9 -19
  39. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +9 -19
  40. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +9 -19
  41. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +9 -19
  42. package/package.json +4 -2
@@ -65,7 +65,7 @@ export declare const combat_techniques: DB.MemberDecl<DB.IncludeIdentifier<[], D
65
65
  None: DB.EnumCase<null>;
66
66
  DependingOnCombatStyle: DB.EnumCase<null>;
67
67
  All: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableCombatTechniques", DB.Object<{
68
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableAllCombatTechniquesRestriction", {
68
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableAllCombatTechniquesRestriction", {
69
69
  Improvised: DB.EnumCase<null>;
70
70
  PointedBlade: DB.EnumCase<null>;
71
71
  Mount: DB.EnumCase<null>;
@@ -73,10 +73,10 @@ export declare const combat_techniques: DB.MemberDecl<DB.IncludeIdentifier<[], D
73
73
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
74
74
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
75
75
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
76
- }, []>>>, false>;
76
+ }, []>>, false>;
77
77
  }>, []>>>;
78
78
  AllClose: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableCloseCombatTechniques", DB.Object<{
79
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableCloseCombatTechniquesRestriction", {
79
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableCloseCombatTechniquesRestriction", {
80
80
  Improvised: DB.EnumCase<null>;
81
81
  PointedBlade: DB.EnumCase<null>;
82
82
  Mount: DB.EnumCase<null>;
@@ -88,10 +88,10 @@ export declare const combat_techniques: DB.MemberDecl<DB.IncludeIdentifier<[], D
88
88
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
89
89
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
90
90
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
91
- }, []>>>, false>;
91
+ }, []>>, false>;
92
92
  }>, []>>>;
93
93
  AllRanged: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableRangedCombatTechniques", DB.Object<{
94
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableRangedCombatTechniquesRestriction", {
94
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableRangedCombatTechniquesRestriction", {
95
95
  Improvised: DB.EnumCase<null>;
96
96
  PointedBlade: DB.EnumCase<null>;
97
97
  Mount: DB.EnumCase<null>;
@@ -99,7 +99,7 @@ export declare const combat_techniques: DB.MemberDecl<DB.IncludeIdentifier<[], D
99
99
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
100
100
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
101
101
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
102
- }, []>>>, false>;
102
+ }, []>>, false>;
103
103
  }>, []>>>;
104
104
  Specific: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"SpecificApplicableCombatTechniques", DB.Object<{
105
105
  list: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"SpecificApplicableCombatTechnique", DB.Object<{
@@ -107,7 +107,7 @@ export declare const combat_techniques: DB.MemberDecl<DB.IncludeIdentifier<[], D
107
107
  CloseCombatTechnique: DB.EnumCase<DB.ReferenceIdentifier>;
108
108
  RangedCombatTechnique: DB.EnumCase<DB.ReferenceIdentifier>;
109
109
  }, []>>, true>;
110
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableSpecificCombatTechniquesRestriction", {
110
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableSpecificCombatTechniquesRestriction", {
111
111
  Improvised: DB.EnumCase<null>;
112
112
  PointedBlade: DB.EnumCase<null>;
113
113
  Mount: DB.EnumCase<null>;
@@ -115,11 +115,9 @@ export declare const combat_techniques: DB.MemberDecl<DB.IncludeIdentifier<[], D
115
115
  Level: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ApplicableCombatTechniquesLevelRestriction", DB.Object<{
116
116
  level: DB.MemberDecl<DB.Integer, true>;
117
117
  }>, []>>>;
118
- Weapons: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ApplicableCombatTechniquesWeaponRestriction", DB.Object<{
119
- list: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, true>;
120
- }>, []>>>;
121
118
  OneBluntSide: DB.EnumCase<null>;
122
- }, []>>>, false>;
119
+ }, []>>, false>;
120
+ weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
123
121
  }>, []>>>, true>;
124
122
  }>, []>>>;
125
123
  }, []>>, true>;
@@ -224,30 +224,24 @@ export const combat_techniques = DB.Required({
224
224
  const AllApplicableCombatTechniques = DB.TypeAlias(import.meta.url, {
225
225
  name: "AllApplicableCombatTechniques",
226
226
  type: () => DB.Object({
227
- restrictions: DB.Optional({
228
- type: DB.Array(DB.IncludeIdentifier(ApplicableAllCombatTechniquesRestriction), {
229
- minItems: 1,
230
- }),
227
+ restriction: DB.Optional({
228
+ type: DB.IncludeIdentifier(ApplicableAllCombatTechniquesRestriction),
231
229
  }),
232
230
  }),
233
231
  });
234
232
  const AllApplicableCloseCombatTechniques = DB.TypeAlias(import.meta.url, {
235
233
  name: "AllApplicableCloseCombatTechniques",
236
234
  type: () => DB.Object({
237
- restrictions: DB.Optional({
238
- type: DB.Array(DB.IncludeIdentifier(ApplicableCloseCombatTechniquesRestriction), {
239
- minItems: 1,
240
- }),
235
+ restriction: DB.Optional({
236
+ type: DB.IncludeIdentifier(ApplicableCloseCombatTechniquesRestriction),
241
237
  }),
242
238
  }),
243
239
  });
244
240
  const AllApplicableRangedCombatTechniques = DB.TypeAlias(import.meta.url, {
245
241
  name: "AllApplicableRangedCombatTechniques",
246
242
  type: () => DB.Object({
247
- restrictions: DB.Optional({
248
- type: DB.Array(DB.IncludeIdentifier(ApplicableRangedCombatTechniquesRestriction), {
249
- minItems: 1,
250
- }),
243
+ restriction: DB.Optional({
244
+ type: DB.IncludeIdentifier(ApplicableRangedCombatTechniquesRestriction),
251
245
  }),
252
246
  }),
253
247
  });
@@ -265,10 +259,12 @@ const SpecificApplicableCombatTechnique = DB.TypeAlias(import.meta.url, {
265
259
  id: DB.Required({
266
260
  type: DB.IncludeIdentifier(CombatTechniqueIdentifier),
267
261
  }),
268
- restrictions: DB.Optional({
269
- type: DB.Array(DB.IncludeIdentifier(ApplicableSpecificCombatTechniquesRestriction), {
270
- minItems: 1,
271
- }),
262
+ restriction: DB.Optional({
263
+ type: DB.IncludeIdentifier(ApplicableSpecificCombatTechniquesRestriction),
264
+ }),
265
+ weapons: DB.Optional({
266
+ comment: "The specific weapons this combat special ability is only applicable to.",
267
+ type: DB.Array(WeaponIdentifier(), { minItems: 1 }),
272
268
  }),
273
269
  }),
274
270
  });
@@ -326,9 +322,6 @@ const ApplicableSpecificCombatTechniquesRestriction = DB.Enum(import.meta.url, {
326
322
  Mount: DB.EnumCase({ type: null }),
327
323
  Race: DB.EnumCase({ type: DB.IncludeIdentifier(ApplicableCombatTechniquesRaceRestriction) }),
328
324
  Level: DB.EnumCase({ type: DB.IncludeIdentifier(ApplicableCombatTechniquesLevelRestriction) }),
329
- Weapons: DB.EnumCase({
330
- type: DB.IncludeIdentifier(ApplicableCombatTechniquesWeaponRestriction),
331
- }),
332
325
  OneBluntSide: DB.EnumCase({ type: null }),
333
326
  }),
334
327
  });
@@ -355,12 +348,3 @@ const ApplicableCombatTechniquesLevelRestriction = DB.TypeAlias(import.meta.url,
355
348
  }),
356
349
  }),
357
350
  });
358
- const ApplicableCombatTechniquesWeaponRestriction = DB.TypeAlias(import.meta.url, {
359
- name: "ApplicableCombatTechniquesWeaponRestriction",
360
- type: () => DB.Object({
361
- list: DB.Required({
362
- comment: "The specific weapons this combat special ability is only applicable to.",
363
- type: DB.Array(WeaponIdentifier(), { minItems: 1 }),
364
- }),
365
- }),
366
- });
@@ -95,25 +95,6 @@ export declare const cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Encha
95
95
  }>, true>;
96
96
  }>, []>>>;
97
97
  Disjunction: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostDisjunction", DB.Object<{
98
- interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostDisjunctionInterval", DB.Object<{
99
- value: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DurationUnitValue", DB.Object<{
100
- value: DB.MemberDecl<DB.Integer, true>;
101
- unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DurationUnit", {
102
- Seconds: DB.EnumCase<null>;
103
- Minutes: DB.EnumCase<null>;
104
- Hours: DB.EnumCase<null>;
105
- Days: DB.EnumCase<null>;
106
- Weeks: DB.EnumCase<null>;
107
- Months: DB.EnumCase<null>;
108
- Years: DB.EnumCase<null>;
109
- Centuries: DB.EnumCase<null>;
110
- Actions: DB.EnumCase<null>;
111
- CombatRounds: DB.EnumCase<null>;
112
- }, []>>, true>;
113
- }>, []>>, true>;
114
- activation_value: DB.MemberDecl<DB.Integer, true>;
115
- after_activation: DB.MemberDecl<DB.Boolean, true>;
116
- }>, []>>, false>;
117
98
  options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostDisjunctionOption", DB.Object<{
118
99
  value: DB.MemberDecl<DB.Integer, true>;
119
100
  translations: DB.MemberDecl<DB.NestedEntityMap<"ArcaneEnergyCostDisjunctionOptionTranslation", {
@@ -125,6 +106,15 @@ export declare const cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Encha
125
106
  }>, []>>>, true>;
126
107
  }>, []>>>;
127
108
  Variable: DB.EnumCase<null>;
109
+ ByLevel: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostByLevel", DB.Object<{
110
+ levels: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostByLevelLevel", DB.Object<{
111
+ value: DB.MemberDecl<DB.Integer, true>;
112
+ }>, []>>>, true>;
113
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ArcaneEnergyCostByLevelStyle", {
114
+ Compressed: DB.EnumCase<null>;
115
+ Verbose: DB.EnumCase<null>;
116
+ }, []>>, true>;
117
+ }>, []>>>;
128
118
  }, []>>>;
129
119
  BindingCost: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"BindingCost", {
130
120
  Fixed: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"FixedBindingCost", DB.Object<{
@@ -266,25 +256,6 @@ export declare const ArcaneEnergyCost: DB.Enum<"ArcaneEnergyCost", {
266
256
  }>, true>;
267
257
  }>, []>>>;
268
258
  Disjunction: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostDisjunction", DB.Object<{
269
- interval: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostDisjunctionInterval", DB.Object<{
270
- value: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DurationUnitValue", DB.Object<{
271
- value: DB.MemberDecl<DB.Integer, true>;
272
- unit: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"DurationUnit", {
273
- Seconds: DB.EnumCase<null>;
274
- Minutes: DB.EnumCase<null>;
275
- Hours: DB.EnumCase<null>;
276
- Days: DB.EnumCase<null>;
277
- Weeks: DB.EnumCase<null>;
278
- Months: DB.EnumCase<null>;
279
- Years: DB.EnumCase<null>;
280
- Centuries: DB.EnumCase<null>;
281
- Actions: DB.EnumCase<null>;
282
- CombatRounds: DB.EnumCase<null>;
283
- }, []>>, true>;
284
- }>, []>>, true>;
285
- activation_value: DB.MemberDecl<DB.Integer, true>;
286
- after_activation: DB.MemberDecl<DB.Boolean, true>;
287
- }>, []>>, false>;
288
259
  options: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostDisjunctionOption", DB.Object<{
289
260
  value: DB.MemberDecl<DB.Integer, true>;
290
261
  translations: DB.MemberDecl<DB.NestedEntityMap<"ArcaneEnergyCostDisjunctionOptionTranslation", {
@@ -296,6 +267,15 @@ export declare const ArcaneEnergyCost: DB.Enum<"ArcaneEnergyCost", {
296
267
  }>, []>>>, true>;
297
268
  }>, []>>>;
298
269
  Variable: DB.EnumCase<null>;
270
+ ByLevel: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostByLevel", DB.Object<{
271
+ levels: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"ArcaneEnergyCostByLevelLevel", DB.Object<{
272
+ value: DB.MemberDecl<DB.Integer, true>;
273
+ }>, []>>>, true>;
274
+ style: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ArcaneEnergyCostByLevelStyle", {
275
+ Compressed: DB.EnumCase<null>;
276
+ Verbose: DB.EnumCase<null>;
277
+ }, []>>, true>;
278
+ }>, []>>>;
299
279
  }, []>;
300
280
  export declare const aeCost: DB.MemberDecl<DB.String, false>;
301
281
  export declare const volume: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Volume", {
@@ -28,6 +28,7 @@ export const ArcaneEnergyCost = DB.Enum(import.meta.url, {
28
28
  Indefinite: DB.EnumCase({ type: DB.IncludeIdentifier(IndefiniteArcaneEnergyCost) }),
29
29
  Disjunction: DB.EnumCase({ type: DB.IncludeIdentifier(ArcaneEnergyCostDisjunction) }),
30
30
  Variable: DB.EnumCase({ type: null }),
31
+ ByLevel: DB.EnumCase({ type: DB.IncludeIdentifier(ArcaneEnergyCostByLevel) }),
31
32
  }),
32
33
  });
33
34
  export const aeCost = DB.Optional({
@@ -156,35 +157,36 @@ const IndefiniteArcaneEnergyCostModifierArithmetic = DB.Enum(import.meta.url, {
156
157
  const ArcaneEnergyCostDisjunction = DB.TypeAlias(import.meta.url, {
157
158
  name: "ArcaneEnergyCostDisjunction",
158
159
  type: () => DB.Object({
159
- interval: DB.Optional({
160
- comment: "Specified if the selected AE cost option has to be paid for each time interval.",
161
- type: DB.IncludeIdentifier(ArcaneEnergyCostDisjunctionInterval),
162
- }),
160
+ // interval: DB.Optional({
161
+ // comment: "Specified if the selected AE cost option has to be paid for each time interval.",
162
+ // type: DB.IncludeIdentifier(ArcaneEnergyCostDisjunctionInterval),
163
+ // }),
163
164
  options: DB.Required({
164
165
  comment: "The possible AE cost values.",
165
166
  type: DB.Array(DB.IncludeIdentifier(ArcaneEnergyCostDisjunctionOption), { minItems: 1 }),
166
167
  }),
167
168
  }),
168
169
  });
169
- const ArcaneEnergyCostDisjunctionInterval = DB.TypeAlias(import.meta.url, {
170
- name: "ArcaneEnergyCostDisjunctionInterval",
171
- type: () => DB.Object({
172
- value: DB.Required({
173
- comment: "The interval itself.",
174
- type: DB.IncludeIdentifier(DurationUnitValue),
175
- }),
176
- activation_value: DB.Required({
177
- comment: "The AE cost value for activation.",
178
- type: DB.Integer({ minimum: 1 }),
179
- }),
180
- after_activation: DB.Required({
181
- comment: `Set to \`true\` if the action where the enchantment is casted does not as a part of the first interval that has to be payed, so that the first interval payment needs to be done after the activation.
182
-
183
- This works different than other sustained spells, since for them the end of the cast usually already counts as part of the first interval.`,
184
- type: DB.Boolean(),
185
- }),
186
- }),
187
- });
170
+ // Unclear what the following was for, but I will keep it in here for now just in case I forgot about something
171
+ // const ArcaneEnergyCostDisjunctionInterval = DB.TypeAlias(import.meta.url, {
172
+ // name: "ArcaneEnergyCostDisjunctionInterval",
173
+ // type: () =>
174
+ // DB.Object({
175
+ // value: DB.Required({
176
+ // comment: "The interval itself.",
177
+ // type: DB.IncludeIdentifier(DurationUnitValue),
178
+ // }),
179
+ // activation_value: DB.Required({
180
+ // comment: "The AE cost value for activation.",
181
+ // type: DB.Integer({ minimum: 1 }),
182
+ // }),
183
+ // after_activation: DB.Required({
184
+ // comment: `Set to \`true\` if the action where the enchantment is casted does not as a part of the first interval that has to be payed, so that the first interval payment needs to be done after the activation.
185
+ // This works different than other sustained spells, since for them the end of the cast usually already counts as part of the first interval.`,
186
+ // type: DB.Boolean(),
187
+ // }),
188
+ // }),
189
+ // })
188
190
  const ArcaneEnergyCostDisjunctionOption = DB.TypeAlias(import.meta.url, {
189
191
  name: "ArcaneEnergyCostDisjunctionOption",
190
192
  type: () => DB.Object({
@@ -200,6 +202,36 @@ const ArcaneEnergyCostDisjunctionOption = DB.TypeAlias(import.meta.url, {
200
202
  }, { minProperties: 1 })),
201
203
  }),
202
204
  });
205
+ const ArcaneEnergyCostByLevel = DB.TypeAlias(import.meta.url, {
206
+ name: "ArcaneEnergyCostByLevel",
207
+ type: () => DB.Object({
208
+ levels: DB.Required({
209
+ comment: "A continuous range of arcane energy cost for each level. The first element is the AE cost for the first level, the second element is the AE cost for the second level, and so on.",
210
+ type: DB.Array(DB.IncludeIdentifier(ArcaneEnergyCostByLevelLevel), { minItems: 2 }),
211
+ }),
212
+ style: DB.Required({
213
+ comment: "How to display the AE cost by level.",
214
+ type: DB.IncludeIdentifier(ArcaneEnergyCostByLevelStyle),
215
+ }),
216
+ }),
217
+ });
218
+ const ArcaneEnergyCostByLevelLevel = DB.TypeAlias(import.meta.url, {
219
+ name: "ArcaneEnergyCostByLevelLevel",
220
+ type: () => DB.Object({
221
+ value: DB.Required({
222
+ comment: "The arcane energy cost for this level.",
223
+ type: DB.Integer({ minimum: 0 }),
224
+ }),
225
+ }),
226
+ });
227
+ const ArcaneEnergyCostByLevelStyle = DB.Enum(import.meta.url, {
228
+ name: "ArcaneEnergyCostByLevelStyle",
229
+ comment: "The AE cost are defined by level of the enchantment. It may either be displayed in a compressed way (e.g. `1/2 AE for level I/II`) or in a verbose way (e.g. `1 AE for level I; 2 AE for level II`).",
230
+ values: () => ({
231
+ Compressed: DB.EnumCase({ type: null }),
232
+ Verbose: DB.EnumCase({ type: null }),
233
+ }),
234
+ });
203
235
  const Volume = DB.Enum(import.meta.url, {
204
236
  name: "Volume",
205
237
  comment: "The volume points the enchantment needs.",
@@ -346,3 +346,7 @@ export declare const EquipmentIdentifier: DB.Enum<"EquipmentIdentifier", {
346
346
  Weapon: DB.EnumCase<DB.ReferenceIdentifier>;
347
347
  WeaponAccessory: DB.EnumCase<DB.ReferenceIdentifier>;
348
348
  }, []>;
349
+ export declare const AdvancedSkillStyleSpecialAbilityIdentifier: DB.Enum<"AdvancedSkillStyleSpecialAbilityIdentifier", {
350
+ AdvancedCombatSpecialAbility: DB.EnumCase<DB.ReferenceIdentifier>;
351
+ AdvancedSkillSpecialAbility: DB.EnumCase<DB.ReferenceIdentifier>;
352
+ }, []>;
@@ -307,3 +307,10 @@ export const EquipmentIdentifier = DB.Enum(import.meta.url, {
307
307
  WeaponAccessory: DB.EnumCase({ type: WeaponAccessoryIdentifier() }),
308
308
  }),
309
309
  });
310
+ export const AdvancedSkillStyleSpecialAbilityIdentifier = DB.Enum(import.meta.url, {
311
+ name: "AdvancedSkillStyleSpecialAbilityIdentifier",
312
+ values: () => ({
313
+ AdvancedCombatSpecialAbility: DB.EnumCase({ type: AdvancedCombatSpecialAbilityIdentifier() }),
314
+ AdvancedSkillSpecialAbility: DB.EnumCase({ type: AdvancedSkillSpecialAbilityIdentifier() }),
315
+ }),
316
+ });
@@ -1,6 +1,6 @@
1
1
  import * as DB from "tsondb/schema/dsl";
2
2
  export declare const FocusRule: DB.Entity<"FocusRule", {
3
- subject: DB.MemberDecl<DB.ReferenceIdentifier, false>;
3
+ subject: DB.MemberDecl<DB.ReferenceIdentifier, true>;
4
4
  level: DB.MemberDecl<DB.Integer, true>;
5
5
  isMissingImplementation: DB.MemberDecl<DB.Boolean, true>;
6
6
  prerequisites: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"RulePrerequisites", DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"PlainPrerequisites", DB.Array<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.Enum<"PrerequisitesElement", {
@@ -8,7 +8,7 @@ export const FocusRule = DB.Entity(import.meta.url, {
8
8
  name: "FocusRule",
9
9
  namePlural: "FocusRules",
10
10
  type: () => DB.Object({
11
- subject: DB.Optional({
11
+ subject: DB.Required({
12
12
  comment: "The associated subject.",
13
13
  type: SubjectIdentifier(),
14
14
  }),
@@ -1028,7 +1028,7 @@ export declare const AdvancedCombatSpecialAbility: DB.Entity<"AdvancedCombatSpec
1028
1028
  None: DB.EnumCase<null>;
1029
1029
  DependingOnCombatStyle: DB.EnumCase<null>;
1030
1030
  All: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableCombatTechniques", DB.Object<{
1031
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableAllCombatTechniquesRestriction", {
1031
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableAllCombatTechniquesRestriction", {
1032
1032
  Improvised: DB.EnumCase<null>;
1033
1033
  PointedBlade: DB.EnumCase<null>;
1034
1034
  Mount: DB.EnumCase<null>;
@@ -1036,10 +1036,10 @@ export declare const AdvancedCombatSpecialAbility: DB.Entity<"AdvancedCombatSpec
1036
1036
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
1037
1037
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
1038
1038
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
1039
- }, []>>>, false>;
1039
+ }, []>>, false>;
1040
1040
  }>, []>>>;
1041
1041
  AllClose: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableCloseCombatTechniques", DB.Object<{
1042
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableCloseCombatTechniquesRestriction", {
1042
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableCloseCombatTechniquesRestriction", {
1043
1043
  Improvised: DB.EnumCase<null>;
1044
1044
  PointedBlade: DB.EnumCase<null>;
1045
1045
  Mount: DB.EnumCase<null>;
@@ -1051,10 +1051,10 @@ export declare const AdvancedCombatSpecialAbility: DB.Entity<"AdvancedCombatSpec
1051
1051
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
1052
1052
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
1053
1053
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
1054
- }, []>>>, false>;
1054
+ }, []>>, false>;
1055
1055
  }>, []>>>;
1056
1056
  AllRanged: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableRangedCombatTechniques", DB.Object<{
1057
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableRangedCombatTechniquesRestriction", {
1057
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableRangedCombatTechniquesRestriction", {
1058
1058
  Improvised: DB.EnumCase<null>;
1059
1059
  PointedBlade: DB.EnumCase<null>;
1060
1060
  Mount: DB.EnumCase<null>;
@@ -1062,7 +1062,7 @@ export declare const AdvancedCombatSpecialAbility: DB.Entity<"AdvancedCombatSpec
1062
1062
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
1063
1063
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
1064
1064
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
1065
- }, []>>>, false>;
1065
+ }, []>>, false>;
1066
1066
  }>, []>>>;
1067
1067
  Specific: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"SpecificApplicableCombatTechniques", DB.Object<{
1068
1068
  list: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"SpecificApplicableCombatTechnique", DB.Object<{
@@ -1070,7 +1070,7 @@ export declare const AdvancedCombatSpecialAbility: DB.Entity<"AdvancedCombatSpec
1070
1070
  CloseCombatTechnique: DB.EnumCase<DB.ReferenceIdentifier>;
1071
1071
  RangedCombatTechnique: DB.EnumCase<DB.ReferenceIdentifier>;
1072
1072
  }, []>>, true>;
1073
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableSpecificCombatTechniquesRestriction", {
1073
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableSpecificCombatTechniquesRestriction", {
1074
1074
  Improvised: DB.EnumCase<null>;
1075
1075
  PointedBlade: DB.EnumCase<null>;
1076
1076
  Mount: DB.EnumCase<null>;
@@ -1078,11 +1078,9 @@ export declare const AdvancedCombatSpecialAbility: DB.Entity<"AdvancedCombatSpec
1078
1078
  Level: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ApplicableCombatTechniquesLevelRestriction", DB.Object<{
1079
1079
  level: DB.MemberDecl<DB.Integer, true>;
1080
1080
  }>, []>>>;
1081
- Weapons: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ApplicableCombatTechniquesWeaponRestriction", DB.Object<{
1082
- list: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, true>;
1083
- }>, []>>>;
1084
1081
  OneBluntSide: DB.EnumCase<null>;
1085
- }, []>>>, false>;
1082
+ }, []>>, false>;
1083
+ weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
1086
1084
  }>, []>>>, true>;
1087
1085
  }>, []>>>;
1088
1086
  }, []>>, true>;
@@ -922,7 +922,7 @@ export declare const BrawlingSpecialAbility: DB.Entity<"BrawlingSpecialAbility",
922
922
  None: DB.EnumCase<null>;
923
923
  DependingOnCombatStyle: DB.EnumCase<null>;
924
924
  All: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableCombatTechniques", DB.Object<{
925
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableAllCombatTechniquesRestriction", {
925
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableAllCombatTechniquesRestriction", {
926
926
  Improvised: DB.EnumCase<null>;
927
927
  PointedBlade: DB.EnumCase<null>;
928
928
  Mount: DB.EnumCase<null>;
@@ -930,10 +930,10 @@ export declare const BrawlingSpecialAbility: DB.Entity<"BrawlingSpecialAbility",
930
930
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
931
931
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
932
932
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
933
- }, []>>>, false>;
933
+ }, []>>, false>;
934
934
  }>, []>>>;
935
935
  AllClose: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableCloseCombatTechniques", DB.Object<{
936
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableCloseCombatTechniquesRestriction", {
936
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableCloseCombatTechniquesRestriction", {
937
937
  Improvised: DB.EnumCase<null>;
938
938
  PointedBlade: DB.EnumCase<null>;
939
939
  Mount: DB.EnumCase<null>;
@@ -945,10 +945,10 @@ export declare const BrawlingSpecialAbility: DB.Entity<"BrawlingSpecialAbility",
945
945
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
946
946
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
947
947
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
948
- }, []>>>, false>;
948
+ }, []>>, false>;
949
949
  }>, []>>>;
950
950
  AllRanged: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableRangedCombatTechniques", DB.Object<{
951
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableRangedCombatTechniquesRestriction", {
951
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableRangedCombatTechniquesRestriction", {
952
952
  Improvised: DB.EnumCase<null>;
953
953
  PointedBlade: DB.EnumCase<null>;
954
954
  Mount: DB.EnumCase<null>;
@@ -956,7 +956,7 @@ export declare const BrawlingSpecialAbility: DB.Entity<"BrawlingSpecialAbility",
956
956
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
957
957
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
958
958
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
959
- }, []>>>, false>;
959
+ }, []>>, false>;
960
960
  }>, []>>>;
961
961
  Specific: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"SpecificApplicableCombatTechniques", DB.Object<{
962
962
  list: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"SpecificApplicableCombatTechnique", DB.Object<{
@@ -964,7 +964,7 @@ export declare const BrawlingSpecialAbility: DB.Entity<"BrawlingSpecialAbility",
964
964
  CloseCombatTechnique: DB.EnumCase<DB.ReferenceIdentifier>;
965
965
  RangedCombatTechnique: DB.EnumCase<DB.ReferenceIdentifier>;
966
966
  }, []>>, true>;
967
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableSpecificCombatTechniquesRestriction", {
967
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableSpecificCombatTechniquesRestriction", {
968
968
  Improvised: DB.EnumCase<null>;
969
969
  PointedBlade: DB.EnumCase<null>;
970
970
  Mount: DB.EnumCase<null>;
@@ -972,11 +972,9 @@ export declare const BrawlingSpecialAbility: DB.Entity<"BrawlingSpecialAbility",
972
972
  Level: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ApplicableCombatTechniquesLevelRestriction", DB.Object<{
973
973
  level: DB.MemberDecl<DB.Integer, true>;
974
974
  }>, []>>>;
975
- Weapons: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ApplicableCombatTechniquesWeaponRestriction", DB.Object<{
976
- list: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, true>;
977
- }>, []>>>;
978
975
  OneBluntSide: DB.EnumCase<null>;
979
- }, []>>>, false>;
976
+ }, []>>, false>;
977
+ weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
980
978
  }>, []>>>, true>;
981
979
  }>, []>>>;
982
980
  }, []>>, true>;
@@ -1028,7 +1028,7 @@ export declare const CombatSpecialAbility: DB.Entity<"CombatSpecialAbility", {
1028
1028
  None: DB.EnumCase<null>;
1029
1029
  DependingOnCombatStyle: DB.EnumCase<null>;
1030
1030
  All: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableCombatTechniques", DB.Object<{
1031
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableAllCombatTechniquesRestriction", {
1031
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableAllCombatTechniquesRestriction", {
1032
1032
  Improvised: DB.EnumCase<null>;
1033
1033
  PointedBlade: DB.EnumCase<null>;
1034
1034
  Mount: DB.EnumCase<null>;
@@ -1036,10 +1036,10 @@ export declare const CombatSpecialAbility: DB.Entity<"CombatSpecialAbility", {
1036
1036
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
1037
1037
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
1038
1038
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
1039
- }, []>>>, false>;
1039
+ }, []>>, false>;
1040
1040
  }>, []>>>;
1041
1041
  AllClose: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableCloseCombatTechniques", DB.Object<{
1042
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableCloseCombatTechniquesRestriction", {
1042
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableCloseCombatTechniquesRestriction", {
1043
1043
  Improvised: DB.EnumCase<null>;
1044
1044
  PointedBlade: DB.EnumCase<null>;
1045
1045
  Mount: DB.EnumCase<null>;
@@ -1051,10 +1051,10 @@ export declare const CombatSpecialAbility: DB.Entity<"CombatSpecialAbility", {
1051
1051
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
1052
1052
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
1053
1053
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
1054
- }, []>>>, false>;
1054
+ }, []>>, false>;
1055
1055
  }>, []>>>;
1056
1056
  AllRanged: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AllApplicableRangedCombatTechniques", DB.Object<{
1057
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableRangedCombatTechniquesRestriction", {
1057
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableRangedCombatTechniquesRestriction", {
1058
1058
  Improvised: DB.EnumCase<null>;
1059
1059
  PointedBlade: DB.EnumCase<null>;
1060
1060
  Mount: DB.EnumCase<null>;
@@ -1062,7 +1062,7 @@ export declare const CombatSpecialAbility: DB.Entity<"CombatSpecialAbility", {
1062
1062
  ExcludeCombatTechniques: DB.EnumCase<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"ApplicableCombatTechniquesNegativeCombatTechniquesRestriction", DB.Object<{
1063
1063
  list: DB.MemberDecl<DB.Array<DB.TypeArgument<DB.Param<"Ref", DB.Type>>>, true>;
1064
1064
  }>, [Ref: DB.Param<"Ref", DB.Type>]>>>;
1065
- }, []>>>, false>;
1065
+ }, []>>, false>;
1066
1066
  }>, []>>>;
1067
1067
  Specific: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"SpecificApplicableCombatTechniques", DB.Object<{
1068
1068
  list: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"SpecificApplicableCombatTechnique", DB.Object<{
@@ -1070,7 +1070,7 @@ export declare const CombatSpecialAbility: DB.Entity<"CombatSpecialAbility", {
1070
1070
  CloseCombatTechnique: DB.EnumCase<DB.ReferenceIdentifier>;
1071
1071
  RangedCombatTechnique: DB.EnumCase<DB.ReferenceIdentifier>;
1072
1072
  }, []>>, true>;
1073
- restrictions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"ApplicableSpecificCombatTechniquesRestriction", {
1073
+ restriction: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ApplicableSpecificCombatTechniquesRestriction", {
1074
1074
  Improvised: DB.EnumCase<null>;
1075
1075
  PointedBlade: DB.EnumCase<null>;
1076
1076
  Mount: DB.EnumCase<null>;
@@ -1078,11 +1078,9 @@ export declare const CombatSpecialAbility: DB.Entity<"CombatSpecialAbility", {
1078
1078
  Level: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ApplicableCombatTechniquesLevelRestriction", DB.Object<{
1079
1079
  level: DB.MemberDecl<DB.Integer, true>;
1080
1080
  }>, []>>>;
1081
- Weapons: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ApplicableCombatTechniquesWeaponRestriction", DB.Object<{
1082
- list: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, true>;
1083
- }>, []>>>;
1084
1081
  OneBluntSide: DB.EnumCase<null>;
1085
- }, []>>>, false>;
1082
+ }, []>>, false>;
1083
+ weapons: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
1086
1084
  }>, []>>>, true>;
1087
1085
  }>, []>>>;
1088
1086
  }, []>>, true>;