optolith-database-schema 0.22.0 → 0.23.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 (43) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/gen/types.d.ts +1303 -1180
  3. package/lib/types/Locale.d.ts +97 -133
  4. package/lib/types/Locale.js +147 -134
  5. package/lib/types/equipment/item/Animal.d.ts +1 -1
  6. package/lib/types/equipment/item/AnimalCare.d.ts +1 -1
  7. package/lib/types/equipment/item/Armor.d.ts +44 -0
  8. package/lib/types/equipment/item/Armor.js +9 -1
  9. package/lib/types/equipment/item/BandageOrRemedy.d.ts +45 -9
  10. package/lib/types/equipment/item/CeremonialItem.d.ts +45 -9
  11. package/lib/types/equipment/item/Clothes.d.ts +45 -9
  12. package/lib/types/equipment/item/Container.d.ts +45 -9
  13. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +77 -20
  14. package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +5 -6
  15. package/lib/types/equipment/item/IlluminationLightSource.d.ts +45 -9
  16. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +45 -9
  17. package/lib/types/equipment/item/Jewelry.d.ts +1 -1
  18. package/lib/types/equipment/item/Laboratory.d.ts +1 -1
  19. package/lib/types/equipment/item/Liebesspielzeug.d.ts +45 -9
  20. package/lib/types/equipment/item/LuxuryGood.d.ts +45 -9
  21. package/lib/types/equipment/item/MagicalArtifact.d.ts +63 -21
  22. package/lib/types/equipment/item/MagicalArtifact.js +41 -3
  23. package/lib/types/equipment/item/MusicalInstrument.d.ts +48 -9
  24. package/lib/types/equipment/item/MusicalInstrument.js +5 -1
  25. package/lib/types/equipment/item/OrienteeringAid.d.ts +45 -9
  26. package/lib/types/equipment/item/Poison.d.ts +41 -5
  27. package/lib/types/equipment/item/Poison.js +33 -1
  28. package/lib/types/equipment/item/RopeOrChain.d.ts +45 -9
  29. package/lib/types/equipment/item/Stationery.d.ts +45 -9
  30. package/lib/types/equipment/item/ThievesTool.d.ts +45 -9
  31. package/lib/types/equipment/item/ToolOfTheTrade.d.ts +1 -1
  32. package/lib/types/equipment/item/TravelGearOrTool.d.ts +45 -9
  33. package/lib/types/equipment/item/Vehicle.d.ts +1 -1
  34. package/lib/types/equipment/item/Weapon.d.ts +105 -78
  35. package/lib/types/equipment/item/Weapon.js +8 -46
  36. package/lib/types/equipment/item/WeaponAccessory.d.ts +45 -9
  37. package/lib/types/equipment/item/_Item.d.ts +148 -29
  38. package/lib/types/equipment/item/_Item.js +94 -2
  39. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +52 -0
  40. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +2 -1
  41. package/lib/types/specialAbility/MagicalSign.d.ts +75 -40
  42. package/lib/types/specialAbility/MagicalSign.js +23 -2
  43. package/package.json +2 -2
@@ -88,14 +88,28 @@ export declare const ThievesTool: import("tsondb/schema/def").EntityDecl<string,
88
88
  length: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"Length", import("tsondb/schema/def").IntegerType, []>>, false>;
89
89
  is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
90
90
  }>, false>;
91
- sanctified_by: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"SanctifiedBy", import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, []>>, false>;
92
- restricted_to_cultures: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").EnumDecl<"RestrictedToCultures", {
93
- CulturesOfRace: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
94
- Cultures: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToSpecificCultures", import("tsondb/schema/def").ObjectType<{
95
- list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
96
- }>, []>>>;
97
- }, []>>, false>;
98
- restricted_to_traditions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, false>;
91
+ restrictedTo: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedTo", import("tsondb/schema/def").ObjectType<{
92
+ races: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToRaces", import("tsondb/schema/def").ObjectType<{
93
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
94
+ }>, []>>, false>;
95
+ cultures: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToCultures", import("tsondb/schema/def").ObjectType<{
96
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
97
+ }>, []>>, false>;
98
+ professions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToProfessions", import("tsondb/schema/def").ObjectType<{
99
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
100
+ }>, []>>, false>;
101
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToMagicalTraditions", import("tsondb/schema/def").ObjectType<{
102
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
103
+ }>, []>>, false>;
104
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToBlessedTraditions", import("tsondb/schema/def").ObjectType<{
105
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
106
+ Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
107
+ Church: import("tsondb/schema/def").EnumCaseDecl<null>;
108
+ Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
109
+ }, []>>, true>;
110
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
111
+ }>, []>>, false>;
112
+ }>, []>>, false>;
99
113
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ImprovisedWeaponTranslation", {
100
114
  advantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
101
115
  disadvantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -117,6 +131,28 @@ export declare const ThievesTool: import("tsondb/schema/def").EntityDecl<string,
117
131
  Arms: import("tsondb/schema/def").EnumCaseDecl<null>;
118
132
  Legs: import("tsondb/schema/def").EnumCaseDecl<null>;
119
133
  }, []>>, false>;
134
+ restrictedTo: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedTo", import("tsondb/schema/def").ObjectType<{
135
+ races: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToRaces", import("tsondb/schema/def").ObjectType<{
136
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
137
+ }>, []>>, false>;
138
+ cultures: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToCultures", import("tsondb/schema/def").ObjectType<{
139
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
140
+ }>, []>>, false>;
141
+ professions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToProfessions", import("tsondb/schema/def").ObjectType<{
142
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
143
+ }>, []>>, false>;
144
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToMagicalTraditions", import("tsondb/schema/def").ObjectType<{
145
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
146
+ }>, []>>, false>;
147
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToBlessedTraditions", import("tsondb/schema/def").ObjectType<{
148
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
149
+ Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
150
+ Church: import("tsondb/schema/def").EnumCaseDecl<null>;
151
+ Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
152
+ }, []>>, true>;
153
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
154
+ }>, []>>, false>;
155
+ }>, []>>, false>;
120
156
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SecondaryArmorTranslation", {
121
157
  advantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
122
158
  disadvantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -163,7 +199,7 @@ export declare const ThievesTool: import("tsondb/schema/def").EntityDecl<string,
163
199
  }, []>>>, false>;
164
200
  }>, true>;
165
201
  }>, []>>>, []>>, true>;
166
- translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}TranslationTranslation`, {
202
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
167
203
  name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, true>;
168
204
  secondary_name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
169
205
  note: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -69,7 +69,7 @@ export declare const ToolOfTheTrade: Entity<"ToolOfTheTrade", {
69
69
  }, []>>>, false>;
70
70
  }>, true>;
71
71
  }>, []>>>, []>>, true>;
72
- translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}TranslationTranslation`, {
72
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
73
73
  name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, true>;
74
74
  secondary_name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
75
75
  note: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -89,14 +89,28 @@ export declare const TravelGearOrTool: Entity<"TravelGearOrTool", {
89
89
  length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"Length", import("tsondb/schema/def").IntegerType, []>>, false>;
90
90
  is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
91
91
  }>, false>;
92
- sanctified_by: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"SanctifiedBy", import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, []>>, false>;
93
- restricted_to_cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToCultures", {
94
- CulturesOfRace: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ReferenceIdentifierType>;
95
- Cultures: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToSpecificCultures", Object<{
96
- list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
97
- }>, []>>>;
98
- }, []>>, false>;
99
- restricted_to_traditions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, false>;
92
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedTo", Object<{
93
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToRaces", Object<{
94
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
95
+ }>, []>>, false>;
96
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToCultures", Object<{
97
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
98
+ }>, []>>, false>;
99
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToProfessions", Object<{
100
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
101
+ }>, []>>, false>;
102
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToMagicalTraditions", Object<{
103
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
104
+ }>, []>>, false>;
105
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToBlessedTraditions", Object<{
106
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
107
+ Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
108
+ Church: import("tsondb/schema/def").EnumCaseDecl<null>;
109
+ Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
110
+ }, []>>, true>;
111
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
112
+ }>, []>>, false>;
113
+ }>, []>>, false>;
100
114
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ImprovisedWeaponTranslation", {
101
115
  advantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
102
116
  disadvantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -118,6 +132,28 @@ export declare const TravelGearOrTool: Entity<"TravelGearOrTool", {
118
132
  Arms: import("tsondb/schema/def").EnumCaseDecl<null>;
119
133
  Legs: import("tsondb/schema/def").EnumCaseDecl<null>;
120
134
  }, []>>, false>;
135
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedTo", Object<{
136
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToRaces", Object<{
137
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
138
+ }>, []>>, false>;
139
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToCultures", Object<{
140
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
141
+ }>, []>>, false>;
142
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToProfessions", Object<{
143
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
144
+ }>, []>>, false>;
145
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToMagicalTraditions", Object<{
146
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
147
+ }>, []>>, false>;
148
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"RestrictedToBlessedTraditions", Object<{
149
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
150
+ Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
151
+ Church: import("tsondb/schema/def").EnumCaseDecl<null>;
152
+ Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
153
+ }, []>>, true>;
154
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
155
+ }>, []>>, false>;
156
+ }>, []>>, false>;
121
157
  translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SecondaryArmorTranslation", {
122
158
  advantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
123
159
  disadvantage: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -164,7 +200,7 @@ export declare const TravelGearOrTool: Entity<"TravelGearOrTool", {
164
200
  }, []>>>, false>;
165
201
  }>, true>;
166
202
  }>, []>>>, []>>, true>;
167
- translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}TranslationTranslation`, {
203
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
168
204
  name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, true>;
169
205
  secondary_name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
170
206
  note: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -66,7 +66,7 @@ export declare const Vehicle: Entity<"Vehicle", {
66
66
  }, []>>>, false>;
67
67
  }>, true>;
68
68
  }>, []>>>, []>>, true>;
69
- translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}TranslationTranslation`, {
69
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<`${string}Translation`, {
70
70
  name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, true>;
71
71
  secondary_name: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
72
72
  note: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").StringType, false>;
@@ -1,16 +1,16 @@
1
- import { Array, Entity, Enum, EnumCase, IncludeIdentifier, NestedEntityMap, Object, String, TypeAlias } from "tsondb/schema/def";
1
+ import { Entity, IncludeIdentifier, NestedEntityMap, Object, String, TypeAlias } from "tsondb/schema/def";
2
2
  export declare const Weapon: Entity<"Weapon", {
3
- cost: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"Cost", {
4
- Free: EnumCase<null>;
5
- Various: EnumCase<null>;
6
- Invaluable: EnumCase<null>;
7
- Fixed: EnumCase<IncludeIdentifier<[], TypeAlias<"FixedCost", Object<{
3
+ cost: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Cost", {
4
+ Free: import("tsondb/schema/def").EnumCaseDecl<null>;
5
+ Various: import("tsondb/schema/def").EnumCaseDecl<null>;
6
+ Invaluable: import("tsondb/schema/def").EnumCaseDecl<null>;
7
+ Fixed: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"FixedCost", Object<{
8
8
  value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").FloatType, true>;
9
9
  translations: import("tsondb/schema/def").MemberDecl<NestedEntityMap<"FixedCostTranslation", {
10
10
  wrap_in_text: import("tsondb/schema/def").MemberDecl<String, true>;
11
11
  }>, false>;
12
12
  }>, []>>>;
13
- Range: EnumCase<IncludeIdentifier<[], TypeAlias<"CostRange", Object<{
13
+ Range: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"CostRange", Object<{
14
14
  from: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").FloatType, true>;
15
15
  to: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").FloatType, true>;
16
16
  translations: import("tsondb/schema/def").MemberDecl<NestedEntityMap<"CostRangeTranslation", {
@@ -19,14 +19,14 @@ export declare const Weapon: Entity<"Weapon", {
19
19
  }>, []>>>;
20
20
  }, []>>, true>;
21
21
  weight: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Weight", import("tsondb/schema/def").FloatType, []>>, true>;
22
- complexity: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"Complexity", {
23
- Primitive: EnumCase<null>;
24
- Simple: EnumCase<null>;
25
- Complex: EnumCase<IncludeIdentifier<[], TypeAlias<"ComplexComplexity", Object<{
22
+ complexity: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Complexity", {
23
+ Primitive: import("tsondb/schema/def").EnumCaseDecl<null>;
24
+ Simple: import("tsondb/schema/def").EnumCaseDecl<null>;
25
+ Complex: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"ComplexComplexity", Object<{
26
26
  ap_value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
27
27
  }>, []>>>;
28
28
  }, []>>, false>;
29
- structure_points: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"StructurePoints", Array<IncludeIdentifier<[], TypeAlias<"StructurePointsComponent", Object<{
29
+ structure_points: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"StructurePoints", import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"StructurePointsComponent", Object<{
30
30
  points: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
31
31
  }>, []>>>, []>>, false>;
32
32
  melee_uses: import("tsondb/schema/def").MemberDecl<NestedEntityMap<string, {
@@ -37,12 +37,12 @@ export declare const Weapon: Entity<"Weapon", {
37
37
  }>, []>>, true>;
38
38
  flat: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
39
39
  }>, []>>, true>;
40
- damage_threshold: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"PrimaryAttributeDamageThreshold", {
41
- Default: EnumCase<IncludeIdentifier<[], TypeAlias<"DefaultPrimaryAttributeDamageThreshold", Object<{
40
+ damage_threshold: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"PrimaryAttributeDamageThreshold", {
41
+ Default: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"DefaultPrimaryAttributeDamageThreshold", Object<{
42
42
  threshold: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
43
43
  }>, []>>>;
44
- List: EnumCase<IncludeIdentifier<[], TypeAlias<"PrimaryAttributeDamageThresholdList", Object<{
45
- list: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"SinglePrimaryAttributeDamageThreshold", Object<{
44
+ List: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"PrimaryAttributeDamageThresholdList", Object<{
45
+ list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"SinglePrimaryAttributeDamageThreshold", Object<{
46
46
  attribute: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
47
47
  threshold: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
48
48
  }>, []>>>, true>;
@@ -52,10 +52,10 @@ export declare const Weapon: Entity<"Weapon", {
52
52
  parryModifier: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"ParryModifier", import("tsondb/schema/def").IntegerType, []>>, false>;
53
53
  reach: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, false>;
54
54
  length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Length", import("tsondb/schema/def").IntegerType, []>>, false>;
55
- size: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"ShieldSize", {
56
- Small: EnumCase<null>;
57
- Medium: EnumCase<null>;
58
- Large: EnumCase<IncludeIdentifier<[], TypeAlias<"LargeShieldSize", Object<{
55
+ size: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"ShieldSize", {
56
+ Small: import("tsondb/schema/def").EnumCaseDecl<null>;
57
+ Medium: import("tsondb/schema/def").EnumCaseDecl<null>;
58
+ Large: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"LargeShieldSize", Object<{
59
59
  attack_penalty: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
60
60
  }>, []>>>;
61
61
  }, []>>, false>;
@@ -64,18 +64,18 @@ export declare const Weapon: Entity<"Weapon", {
64
64
  is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
65
65
  }>, false>;
66
66
  ranged_uses: import("tsondb/schema/def").MemberDecl<NestedEntityMap<string, {
67
- damage: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RangedDamage", {
68
- Default: EnumCase<IncludeIdentifier<[], TypeAlias<"DefaultRangedDamage", Object<{
67
+ damage: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RangedDamage", {
68
+ Default: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"DefaultRangedDamage", Object<{
69
69
  dice: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Dice", Object<{
70
70
  number: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
71
71
  sides: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"DieType", import("tsondb/schema/def").IntegerType, []>>, true>;
72
72
  }>, []>>, true>;
73
73
  flat: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
74
74
  }>, []>>>;
75
- NotApplicable: EnumCase<null>;
76
- Special: EnumCase<null>;
75
+ NotApplicable: import("tsondb/schema/def").EnumCaseDecl<null>;
76
+ Special: import("tsondb/schema/def").EnumCaseDecl<null>;
77
77
  }, []>>, true>;
78
- reload_time: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"ReloadTime", Object<{
78
+ reload_time: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"ReloadTime", Object<{
79
79
  value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
80
80
  }>, []>>>, true>;
81
81
  range: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RangeBrackets", Object<{
@@ -87,49 +87,63 @@ export declare const Weapon: Entity<"Weapon", {
87
87
  length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Length", import("tsondb/schema/def").IntegerType, []>>, false>;
88
88
  is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
89
89
  }>, false>;
90
- sanctified_by: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"SanctifiedBy", Array<import("tsondb/schema/def").ReferenceIdentifierType>, []>>, false>;
91
- restricted_to_cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToCultures", {
92
- CulturesOfRace: EnumCase<import("tsondb/schema/def").ReferenceIdentifierType>;
93
- Cultures: EnumCase<IncludeIdentifier<[], TypeAlias<"RestrictedToSpecificCultures", Object<{
94
- list: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
95
- }>, []>>>;
96
- }, []>>, false>;
97
- restricted_to_traditions: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, false>;
98
- src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", Array<IncludeIdentifier<[], TypeAlias<"PublicationRef", Object<{
90
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
91
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
92
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
93
+ }>, []>>, false>;
94
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
95
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
96
+ }>, []>>, false>;
97
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
98
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
99
+ }>, []>>, false>;
100
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
101
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
102
+ }>, []>>, false>;
103
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
104
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
105
+ Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
106
+ Church: import("tsondb/schema/def").EnumCaseDecl<null>;
107
+ Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
108
+ }, []>>, true>;
109
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
110
+ }>, []>>, false>;
111
+ }>, []>>, false>;
112
+ src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"PublicationRef", Object<{
99
113
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
100
114
  occurrences: import("tsondb/schema/def").MemberDecl<NestedEntityMap<string, {
101
115
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"InitialOccurrence", Object<{
102
116
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
103
- pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
104
- first_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"Page", {
105
- InsideCoverFront: EnumCase<null>;
106
- InsideCoverBack: EnumCase<null>;
107
- Numbered: EnumCase<import("tsondb/schema/def").IntegerType>;
117
+ pages: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
118
+ first_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Page", {
119
+ InsideCoverFront: import("tsondb/schema/def").EnumCaseDecl<null>;
120
+ InsideCoverBack: import("tsondb/schema/def").EnumCaseDecl<null>;
121
+ Numbered: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").IntegerType>;
108
122
  }, []>>, true>;
109
- last_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"Page", {
110
- InsideCoverFront: EnumCase<null>;
111
- InsideCoverBack: EnumCase<null>;
112
- Numbered: EnumCase<import("tsondb/schema/def").IntegerType>;
123
+ last_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Page", {
124
+ InsideCoverFront: import("tsondb/schema/def").EnumCaseDecl<null>;
125
+ InsideCoverBack: import("tsondb/schema/def").EnumCaseDecl<null>;
126
+ Numbered: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").IntegerType>;
113
127
  }, []>>, false>;
114
128
  }>, []>>>, true>;
115
129
  }>, []>>, true>;
116
- revisions: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], Enum<"Revision", {
117
- Since: EnumCase<IncludeIdentifier<[], TypeAlias<"Since", Object<{
130
+ revisions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Revision", {
131
+ Since: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"Since", Object<{
118
132
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
119
- pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
120
- first_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"Page", {
121
- InsideCoverFront: EnumCase<null>;
122
- InsideCoverBack: EnumCase<null>;
123
- Numbered: EnumCase<import("tsondb/schema/def").IntegerType>;
133
+ pages: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
134
+ first_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Page", {
135
+ InsideCoverFront: import("tsondb/schema/def").EnumCaseDecl<null>;
136
+ InsideCoverBack: import("tsondb/schema/def").EnumCaseDecl<null>;
137
+ Numbered: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").IntegerType>;
124
138
  }, []>>, true>;
125
- last_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"Page", {
126
- InsideCoverFront: EnumCase<null>;
127
- InsideCoverBack: EnumCase<null>;
128
- Numbered: EnumCase<import("tsondb/schema/def").IntegerType>;
139
+ last_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Page", {
140
+ InsideCoverFront: import("tsondb/schema/def").EnumCaseDecl<null>;
141
+ InsideCoverBack: import("tsondb/schema/def").EnumCaseDecl<null>;
142
+ Numbered: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").IntegerType>;
129
143
  }, []>>, false>;
130
144
  }>, []>>>, true>;
131
145
  }>, []>>>;
132
- Deprecated: EnumCase<IncludeIdentifier<[], TypeAlias<"Deprecation", Object<{
146
+ Deprecated: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"Deprecation", Object<{
133
147
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
134
148
  }>, []>>>;
135
149
  }, []>>>, false>;
@@ -142,7 +156,7 @@ export declare const Weapon: Entity<"Weapon", {
142
156
  rules: import("tsondb/schema/def").MemberDecl<String, false>;
143
157
  advantage: import("tsondb/schema/def").MemberDecl<String, false>;
144
158
  disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
145
- errata: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Errata", Array<IncludeIdentifier<[], TypeAlias<"Erratum", Object<{
159
+ errata: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Errata", import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"Erratum", Object<{
146
160
  date: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").DateType, true>;
147
161
  description: import("tsondb/schema/def").MemberDecl<String, true>;
148
162
  }>, []>>>, []>>, false>;
@@ -157,12 +171,12 @@ export declare const ImprovisedWeapon: TypeAlias<"ImprovisedWeapon", Object<{
157
171
  }>, []>>, true>;
158
172
  flat: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
159
173
  }>, []>>, true>;
160
- damage_threshold: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"PrimaryAttributeDamageThreshold", {
161
- Default: EnumCase<IncludeIdentifier<[], TypeAlias<"DefaultPrimaryAttributeDamageThreshold", Object<{
174
+ damage_threshold: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"PrimaryAttributeDamageThreshold", {
175
+ Default: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"DefaultPrimaryAttributeDamageThreshold", Object<{
162
176
  threshold: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
163
177
  }>, []>>>;
164
- List: EnumCase<IncludeIdentifier<[], TypeAlias<"PrimaryAttributeDamageThresholdList", Object<{
165
- list: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"SinglePrimaryAttributeDamageThreshold", Object<{
178
+ List: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"PrimaryAttributeDamageThresholdList", Object<{
179
+ list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"SinglePrimaryAttributeDamageThreshold", Object<{
166
180
  attribute: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
167
181
  threshold: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
168
182
  }>, []>>>, true>;
@@ -172,10 +186,10 @@ export declare const ImprovisedWeapon: TypeAlias<"ImprovisedWeapon", Object<{
172
186
  parryModifier: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"ParryModifier", import("tsondb/schema/def").IntegerType, []>>, false>;
173
187
  reach: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, false>;
174
188
  length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Length", import("tsondb/schema/def").IntegerType, []>>, false>;
175
- size: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"ShieldSize", {
176
- Small: EnumCase<null>;
177
- Medium: EnumCase<null>;
178
- Large: EnumCase<IncludeIdentifier<[], TypeAlias<"LargeShieldSize", Object<{
189
+ size: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"ShieldSize", {
190
+ Small: import("tsondb/schema/def").EnumCaseDecl<null>;
191
+ Medium: import("tsondb/schema/def").EnumCaseDecl<null>;
192
+ Large: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"LargeShieldSize", Object<{
179
193
  attack_penalty: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
180
194
  }>, []>>>;
181
195
  }, []>>, false>;
@@ -184,18 +198,18 @@ export declare const ImprovisedWeapon: TypeAlias<"ImprovisedWeapon", Object<{
184
198
  is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
185
199
  }>, false>;
186
200
  ranged_uses: import("tsondb/schema/def").MemberDecl<NestedEntityMap<string, {
187
- damage: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RangedDamage", {
188
- Default: EnumCase<IncludeIdentifier<[], TypeAlias<"DefaultRangedDamage", Object<{
201
+ damage: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RangedDamage", {
202
+ Default: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"DefaultRangedDamage", Object<{
189
203
  dice: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Dice", Object<{
190
204
  number: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
191
205
  sides: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"DieType", import("tsondb/schema/def").IntegerType, []>>, true>;
192
206
  }>, []>>, true>;
193
207
  flat: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
194
208
  }>, []>>>;
195
- NotApplicable: EnumCase<null>;
196
- Special: EnumCase<null>;
209
+ NotApplicable: import("tsondb/schema/def").EnumCaseDecl<null>;
210
+ Special: import("tsondb/schema/def").EnumCaseDecl<null>;
197
211
  }, []>>, true>;
198
- reload_time: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"ReloadTime", Object<{
212
+ reload_time: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"ReloadTime", Object<{
199
213
  value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
200
214
  }>, []>>>, true>;
201
215
  range: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RangeBrackets", Object<{
@@ -207,17 +221,30 @@ export declare const ImprovisedWeapon: TypeAlias<"ImprovisedWeapon", Object<{
207
221
  length: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"Length", import("tsondb/schema/def").IntegerType, []>>, false>;
208
222
  is_improvised_weapon: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
209
223
  }>, false>;
210
- sanctified_by: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"SanctifiedBy", Array<import("tsondb/schema/def").ReferenceIdentifierType>, []>>, false>;
211
- restricted_to_cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], Enum<"RestrictedToCultures", {
212
- CulturesOfRace: EnumCase<import("tsondb/schema/def").ReferenceIdentifierType>;
213
- Cultures: EnumCase<IncludeIdentifier<[], TypeAlias<"RestrictedToSpecificCultures", Object<{
214
- list: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
215
- }>, []>>>;
216
- }, []>>, false>;
217
- restricted_to_traditions: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, false>;
224
+ restrictedTo: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedTo", Object<{
225
+ races: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToRaces", Object<{
226
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
227
+ }>, []>>, false>;
228
+ cultures: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToCultures", Object<{
229
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
230
+ }>, []>>, false>;
231
+ professions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToProfessions", Object<{
232
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
233
+ }>, []>>, false>;
234
+ magicalTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToMagicalTraditions", Object<{
235
+ scope: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>, true>;
236
+ }>, []>>, false>;
237
+ blessedTraditions: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"RestrictedToBlessedTraditions", Object<{
238
+ scope: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RestrictedToBlessedTraditionsScope", {
239
+ Specific: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").ReferenceIdentifierType>>;
240
+ Church: import("tsondb/schema/def").EnumCaseDecl<null>;
241
+ Shamanistic: import("tsondb/schema/def").EnumCaseDecl<null>;
242
+ }, []>>, true>;
243
+ isSanctifiedBy: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").BooleanType, true>;
244
+ }>, []>>, false>;
245
+ }>, []>>, false>;
218
246
  translations: import("tsondb/schema/def").MemberDecl<NestedEntityMap<"ImprovisedWeaponTranslation", {
219
247
  advantage: import("tsondb/schema/def").MemberDecl<String, false>;
220
248
  disadvantage: import("tsondb/schema/def").MemberDecl<String, false>;
221
249
  }>, false>;
222
250
  }>, []>;
223
- export declare const SanctifiedBy: TypeAlias<"SanctifiedBy", Array<import("tsondb/schema/def").ReferenceIdentifierType>, []>;
@@ -1,10 +1,9 @@
1
- import { Array, Entity, Enum, EnumCase, IncludeIdentifier, NestedEntityMap, Object, Optional, Required, String, TypeAlias, } from "tsondb/schema/def";
2
- import { BlessedTraditionIdentifier, CultureIdentifier, MagicalTraditionIdentifier, RaceIdentifier, } from "../../_Identifier.js";
1
+ import { Entity, IncludeIdentifier, NestedEntityMap, Object, Optional, Required, String, TypeAlias, } from "tsondb/schema/def";
3
2
  import { CloseCombatTechnique, RangedCombatTechnique } from "../../CombatTechnique.js";
4
3
  import { NestedTranslationMap } from "../../Locale.js";
5
4
  import { Errata } from "../../source/_Erratum.js";
6
5
  import { src } from "../../source/_PublicationRef.js";
7
- import { Complexity, Cost, StructurePoints, Weight } from "./_Item.js";
6
+ import { Complexity, Cost, RestrictedTo, StructurePoints, Weight } from "./_Item.js";
8
7
  import { MeleeWeapon } from "./_MeleeWeapon.js";
9
8
  import { RangedWeapon } from "./_RangedWeapon.js";
10
9
  export const Weapon = Entity(import.meta.url, {
@@ -45,17 +44,9 @@ export const Weapon = Entity(import.meta.url, {
45
44
  type: IncludeIdentifier(RangedWeapon),
46
45
  }),
47
46
  }),
48
- sanctified_by: Optional({
49
- comment: "If the weapon is sanctified by a god and thus restricted to it's Blessed Ones.",
50
- type: IncludeIdentifier(SanctifiedBy),
51
- }),
52
- restricted_to_cultures: Optional({
53
- comment: "Define if during character creation this weapon can only be bought by characters of a specific race or culture.",
54
- type: IncludeIdentifier(RestrictedToCultures),
55
- }),
56
- restricted_to_traditions: Optional({
57
- comment: "Define if during character creation this weapon can only be bought by characters of specific magical or blessed traditions.",
58
- type: Array(MagicalTraditionIdentifier(), { minItems: 1 }),
47
+ restrictedTo: Optional({
48
+ comment: "Define if during character creation this weapon can only be bought by a specific subset of characters.",
49
+ type: IncludeIdentifier(RestrictedTo),
59
50
  }),
60
51
  src,
61
52
  translations: NestedTranslationMap(Required, "Weapon", Object({
@@ -111,17 +102,9 @@ export const ImprovisedWeapon = TypeAlias(import.meta.url, {
111
102
  type: IncludeIdentifier(RangedWeapon),
112
103
  }),
113
104
  }),
114
- sanctified_by: Optional({
115
- comment: "If the weapon is sanctified by a god and thus restricted to it's Blessed Ones.",
116
- type: IncludeIdentifier(SanctifiedBy),
117
- }),
118
- restricted_to_cultures: Optional({
119
- comment: "Define if during character creation this weapon can only be bought by characters of a specific race or culture.",
120
- type: IncludeIdentifier(RestrictedToCultures),
121
- }),
122
- restricted_to_traditions: Optional({
123
- comment: "Define if during character creation this weapon can only be bought by characters of specific magical or blessed traditions.",
124
- type: Array(MagicalTraditionIdentifier(), { minItems: 1 }),
105
+ restrictedTo: Optional({
106
+ comment: "Define if during character creation this weapon can only be bought by a specific subset of characters.",
107
+ type: IncludeIdentifier(RestrictedTo),
125
108
  }),
126
109
  translations: NestedTranslationMap(Optional, "ImprovisedWeapon", Object({
127
110
  advantage: Optional({
@@ -135,24 +118,3 @@ export const ImprovisedWeapon = TypeAlias(import.meta.url, {
135
118
  }, { minProperties: 1 })),
136
119
  }),
137
120
  });
138
- export const SanctifiedBy = TypeAlias(import.meta.url, {
139
- name: "SanctifiedBy",
140
- comment: "If the weapon is sanctified by a god and thus restricted to it's Blessed Ones.",
141
- type: () => Array(BlessedTraditionIdentifier(), { minItems: 1 }),
142
- });
143
- const RestrictedToCultures = Enum(import.meta.url, {
144
- name: "RestrictedToCultures",
145
- comment: "Define if during character creation this weapon can only be bought by characters of a specific race or culture.",
146
- values: () => ({
147
- CulturesOfRace: EnumCase({ type: RaceIdentifier() }),
148
- Cultures: EnumCase({ type: IncludeIdentifier(RestrictedToSpecificCultures) }),
149
- }),
150
- });
151
- const RestrictedToSpecificCultures = TypeAlias(import.meta.url, {
152
- name: "RestrictedToSpecificCultures",
153
- type: () => Object({
154
- list: Required({
155
- type: Array(CultureIdentifier(), { minItems: 1 }),
156
- }),
157
- }),
158
- });