optolith-database-schema 0.8.1 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/lib/config.d.ts +2 -0
  3. package/lib/config.js +2 -0
  4. package/lib/main.js +8 -3
  5. package/lib/types/Advantage.d.ts +13 -2
  6. package/lib/types/Disadvantage.d.ts +12 -2
  7. package/lib/types/Profession.d.ts +12 -2
  8. package/lib/types/Talisman.d.ts +6 -6
  9. package/lib/types/_Activatable.d.ts +113 -4
  10. package/lib/types/_Activatable.js +4 -35
  11. package/lib/types/_ActivatableSelectOptionCategory.d.ts +30 -0
  12. package/lib/types/_Identifier.d.ts +9 -0
  13. package/lib/types/_IdentifierGroup.d.ts +2 -2
  14. package/lib/types/equipment/item/Poison.d.ts +21 -1
  15. package/lib/types/equipment/item/Poison.js +1 -0
  16. package/lib/types/equipment/item/Weapon.d.ts +4 -3
  17. package/lib/types/equipment/item/sub/ArmorType.d.ts +3 -3
  18. package/lib/types/magicalActions/MagicalRune.d.ts +82 -16
  19. package/lib/types/prerequisites/DisplayOption.d.ts +14 -0
  20. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +23 -1
  21. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.d.ts +5 -0
  22. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.js +1 -0
  23. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.d.ts +67 -0
  24. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.js +6 -0
  25. package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +0 -55
  26. package/lib/types/prerequisites/single/RatedSumPrerequisite.d.ts +19 -0
  27. package/lib/types/prerequisites/single/RatedSumPrerequisite.js +1 -0
  28. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.d.ts +11 -0
  29. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.js +5 -0
  30. package/lib/types/prerequisites/single/TextPrerequisite.d.ts +29 -0
  31. package/lib/types/prerequisites/single/TextPrerequisite.js +5 -0
  32. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +11 -0
  33. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +7 -2
  34. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +6 -2
  35. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +5 -0
  36. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +12 -2
  37. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +7 -2
  38. package/lib/types/specialAbility/MagicalSign.d.ts +38 -0
  39. package/lib/types/specialAbility/MagicalSign.js +5 -0
  40. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +11 -2
  41. package/lib/types/specialAbility/MagicalTradition.d.ts +2 -2
  42. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +6 -0
  43. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +5 -0
  44. package/lib/types/specialAbility/VampiricGift.d.ts +7 -2
  45. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +2 -2
  46. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +2 -2
  47. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +2 -2
  48. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +2 -2
  49. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +2 -2
  50. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +3 -3
  51. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +2 -2
  52. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +2 -2
  53. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +2 -2
  54. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +2 -2
  55. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +2 -2
  56. package/lib/types/traditionArtifacts/SickleRitual.d.ts +2 -2
  57. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +7 -2
  58. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +13 -3
  59. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +3 -3
  60. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +2 -2
  61. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +2 -7
  62. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +4 -3
  63. package/lib/validation/schema.js +2 -2
  64. package/package.json +1 -1
  65. package/schema/Advantage.schema.json +11 -0
  66. package/schema/Disadvantage.schema.json +8 -0
  67. package/schema/Profession.schema.json +8 -0
  68. package/schema/Talisman.schema.json +2 -4
  69. package/schema/_Activatable.schema.json +166 -0
  70. package/schema/_ActivatableSelectOptionCategory.schema.json +141 -0
  71. package/schema/_Identifier.schema.json +18 -0
  72. package/schema/_IdentifierGroup.schema.json +6 -0
  73. package/schema/equipment/item/Poison.schema.json +55 -1
  74. package/schema/equipment/item/Weapon.schema.json +5 -1
  75. package/schema/equipment/item/sub/ArmorType.schema.json +1 -2
  76. package/schema/magicalActions/MagicalRune.schema.json +213 -21
  77. package/schema/prerequisites/DisplayOption.schema.json +4 -0
  78. package/schema/prerequisites/PrerequisiteGroups.schema.json +98 -2
  79. package/schema/prerequisites/single/AncestorBloodPrerequisite.schema.json +14 -0
  80. package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +166 -0
  81. package/schema/prerequisites/single/RatedPrerequisite.schema.json +0 -125
  82. package/schema/prerequisites/single/RatedSumPrerequisite.schema.json +33 -0
  83. package/schema/prerequisites/single/SexualCharacteristicPrerequisite.schema.json +26 -0
  84. package/schema/prerequisites/single/TextPrerequisite.schema.json +14 -0
  85. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +8 -0
  86. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +4 -0
  87. package/schema/specialAbility/CombatSpecialAbility.schema.json +4 -0
  88. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +42 -27
  89. package/schema/specialAbility/FatePointSpecialAbility.schema.json +4 -0
  90. package/schema/specialAbility/GeneralSpecialAbility.schema.json +8 -0
  91. package/schema/specialAbility/KarmaSpecialAbility.schema.json +4 -0
  92. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +42 -27
  93. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +42 -27
  94. package/schema/specialAbility/MagicalSign.schema.json +72 -0
  95. package/schema/specialAbility/MagicalSpecialAbility.schema.json +8 -0
  96. package/schema/specialAbility/MagicalTradition.schema.json +0 -2
  97. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +6 -0
  98. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +4 -0
  99. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +42 -27
  100. package/schema/specialAbility/VampiricGift.schema.json +4 -0
  101. package/schema/traditionArtifacts/DaggerRitual.schema.json +0 -1
  102. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +4 -0
  103. package/schema/traditionArtifacts/StaffEnchantment.schema.json +8 -1
  104. package/schema/traditionArtifacts/ToyEnchantment.schema.json +0 -1
  105. package/schema/traditionArtifacts/WandEnchantment.schema.json +1 -9
  106. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +8 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,50 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [0.10.0](https://github.com/elyukai/optolith-database-schema/compare/v0.9.0...v0.10.0) (2023-05-01)
6
+
7
+
8
+ ### ⚠ BREAKING CHANGES
9
+
10
+ * finish schema
11
+
12
+ ### Features
13
+
14
+ * finish schema ([0ea6a83](https://github.com/elyukai/optolith-database-schema/commit/0ea6a838e22651b0e24708dcb10143db3c4300ca))
15
+ * sort errors by file path, with numbers in ascending order ([abc0bb1](https://github.com/elyukai/optolith-database-schema/commit/abc0bb13fd1d8d72237725ea37031c5697adaab9))
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * allow numbers in names ([4f6b2ae](https://github.com/elyukai/optolith-database-schema/commit/4f6b2aea2dba9a92a77b2667ed98617c233bbef1))
21
+ * ignore hidden files ([230326f](https://github.com/elyukai/optolith-database-schema/commit/230326ff25c3faee88f614c3380396070efb1516))
22
+ * the file name id may be 0 for custom entries ([8b1144e](https://github.com/elyukai/optolith-database-schema/commit/8b1144e6f13b46a9ef5aa1824d987ab70cfb8a95))
23
+ * uppercase letters should be allowed after the first letter ([50b2020](https://github.com/elyukai/optolith-database-schema/commit/50b2020bd6ed81c44d944cb8048b966c72b8fb38))
24
+
25
+ ## [0.9.0](https://github.com/elyukai/optolith-database-schema/compare/v0.8.1...v0.9.0) (2023-01-14)
26
+
27
+
28
+ ### ⚠ BREAKING CHANGES
29
+
30
+ * make protective/warding circle cost language-independent
31
+ * change magical rune options to explicit options
32
+
33
+ ### Features
34
+
35
+ * add trinkhornzauber identifier to applying identifier groups ([f6671e3](https://github.com/elyukai/optolith-database-schema/commit/f6671e31bd94a8a6600e17dc448e619be2e30d74))
36
+ * change magical rune options to explicit options ([a8c45d1](https://github.com/elyukai/optolith-database-schema/commit/a8c45d148d8ad5060b3d60536b11c39673fb01ab))
37
+ * magical signs ([4517d64](https://github.com/elyukai/optolith-database-schema/commit/4517d64bdafd1800074bac684053abbdc104518e))
38
+ * make protective/warding circle cost language-independent ([27640a6](https://github.com/elyukai/optolith-database-schema/commit/27640a695050597ba910331ab1e35094a0f827f2))
39
+
40
+
41
+ ### Bug Fixes
42
+
43
+ * advanced special ability OneOf option should allow and required multiple options ([0e5bbd4](https://github.com/elyukai/optolith-database-schema/commit/0e5bbd485da7843f810e092883c03c12dced1e57))
44
+ * make cost optional for all tradition arfifact enchantments ([6025485](https://github.com/elyukai/optolith-database-schema/commit/60254855e2e236f328d1f1480b009f322b0881d9))
45
+ * some tradition properties have to be optional ([687665d](https://github.com/elyukai/optolith-database-schema/commit/687665d0a0699e8ee25d2f378cb3b041384173bb))
46
+ * translation was not embedded in locale map ([a395778](https://github.com/elyukai/optolith-database-schema/commit/a39577830351b36595a06c247234fac3a3d499b1))
47
+ * wand enchantments dont use volume ([1a3f34a](https://github.com/elyukai/optolith-database-schema/commit/1a3f34a3880fb19ab6fbe7cc7a481e2deb7bab9a))
48
+
5
49
  ### [0.8.1](https://github.com/elyukai/optolith-database-schema/compare/v0.8.0...v0.8.1) (2023-01-08)
6
50
 
7
51
 
package/lib/config.d.ts CHANGED
@@ -109,6 +109,7 @@ import * as GeneralSpecialAbility from "./types/specialAbility/GeneralSpecialAbi
109
109
  import * as KarmaSpecialAbility from "./types/specialAbility/KarmaSpecialAbility.js";
110
110
  import * as LiturgicalStyleSpecialAbility from "./types/specialAbility/LiturgicalStyleSpecialAbility.js";
111
111
  import * as LycantropicGift from "./types/specialAbility/LycantropicGift.js";
112
+ import * as MagicalSign from "./types/specialAbility/MagicalSign.js";
112
113
  import * as MagicalSpecialAbility from "./types/specialAbility/MagicalSpecialAbility.js";
113
114
  import * as MagicalTradition from "./types/specialAbility/MagicalTradition.js";
114
115
  import * as MagicStyleSpecialAbility from "./types/specialAbility/MagicStyleSpecialAbility.js";
@@ -245,6 +246,7 @@ export declare type TypeMap = {
245
246
  magicalDances: MagicalDance.MagicalDance;
246
247
  magicalMelodies: MagicalMelody.MagicalMelody;
247
248
  magicalRunes: MagicalRune.MagicalRune;
249
+ magicalSigns: MagicalSign.MagicalSign;
248
250
  magicalSpecialAbilities: MagicalSpecialAbility.MagicalSpecialAbility;
249
251
  magicalTraditions: MagicalTradition.MagicalTradition;
250
252
  magicStyleSpecialAbilities: MagicStyleSpecialAbility.MagicStyleSpecialAbility;
package/lib/config.js CHANGED
@@ -109,6 +109,7 @@ import * as GeneralSpecialAbility from "./types/specialAbility/GeneralSpecialAbi
109
109
  import * as KarmaSpecialAbility from "./types/specialAbility/KarmaSpecialAbility.js";
110
110
  import * as LiturgicalStyleSpecialAbility from "./types/specialAbility/LiturgicalStyleSpecialAbility.js";
111
111
  import * as LycantropicGift from "./types/specialAbility/LycantropicGift.js";
112
+ import * as MagicalSign from "./types/specialAbility/MagicalSign.js";
112
113
  import * as MagicalSpecialAbility from "./types/specialAbility/MagicalSpecialAbility.js";
113
114
  import * as MagicalTradition from "./types/specialAbility/MagicalTradition.js";
114
115
  import * as MagicStyleSpecialAbility from "./types/specialAbility/MagicStyleSpecialAbility.js";
@@ -244,6 +245,7 @@ export const typeValidatorMap = {
244
245
  magicalDances: MagicalDance.validateSchema,
245
246
  magicalMelodies: MagicalMelody.validateSchema,
246
247
  magicalRunes: MagicalRune.validateSchema,
248
+ magicalSigns: MagicalSign.validateSchema,
247
249
  magicalSpecialAbilities: MagicalSpecialAbility.validateSchema,
248
250
  magicalTraditions: MagicalTradition.validateSchema,
249
251
  magicStyleSpecialAbilities: MagicStyleSpecialAbility.validateSchema,
package/lib/main.js CHANGED
@@ -8,10 +8,12 @@ import { jsonSchemaDir } from "../config/directories.js";
8
8
  import { typeValidatorMap } from "./config.js";
9
9
  const readdirRecursive = async (dirPath) => {
10
10
  const directoryEntries = await readdir(dirPath, { withFileTypes: true });
11
- const flattenedRecursivePaths = await Promise.all(directoryEntries.map(async (dirEntry) => {
11
+ const flattenedRecursivePaths = await Promise.all(directoryEntries
12
+ .filter(dirEntry => !dirEntry.name.startsWith("."))
13
+ .map(async (dirEntry) => {
12
14
  const absoluteEntryPath = join(dirPath, dirEntry.name);
13
15
  if (dirEntry.isDirectory()) {
14
- return await readdirRecursive(absoluteEntryPath);
16
+ return (await readdirRecursive(absoluteEntryPath));
15
17
  }
16
18
  else if (dirEntry.isFile()) {
17
19
  return [absoluteEntryPath];
@@ -39,7 +41,9 @@ const collator = Intl.Collator(undefined, { numeric: true });
39
41
  const readDataFileAssocsFromDirectory = async (dirPath) => {
40
42
  const filenames = await readdir(dirPath);
41
43
  filenames.sort(collator.compare);
42
- return await Promise.all(filenames.map(async (fileName) => {
44
+ return await Promise.all(filenames
45
+ .filter(fileName => !fileName.startsWith("."))
46
+ .map(async (fileName) => {
43
47
  const filePath = join(dirPath, fileName);
44
48
  try {
45
49
  const fileContent = YAML.parse(await readFile(join(dirPath, fileName), "utf-8"));
@@ -111,6 +115,7 @@ export const validate = async (entityDirPaths, checkIntegrity) => {
111
115
  export const printErrors = (errorsByFile, printOptions = {}) => {
112
116
  const { verbose = false } = printOptions;
113
117
  return Object.entries(errorsByFile)
118
+ .sort(([filePathA], [filePathB]) => collator.compare(filePathA, filePathB))
114
119
  .flatMap(([filePath, errors]) => {
115
120
  if (verbose) {
116
121
  return filterNullable([
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * @main Advantage
3
3
  */
4
- import { Errata } from "./source/_Erratum.js";
5
- import { PublicationRefs } from "./source/_PublicationRef.js";
6
4
  import * as Activatable from "./_Activatable.js";
7
5
  import { LocaleMap } from "./_LocaleMap.js";
8
6
  import { AdvantageDisadvantagePrerequisites } from "./_Prerequisite.js";
7
+ import { Errata } from "./source/_Erratum.js";
8
+ import { PublicationRefs } from "./source/_PublicationRef.js";
9
9
  /**
10
10
  * @title Advantage
11
11
  */
@@ -39,6 +39,10 @@ export declare type Advantage = {
39
39
  export declare type AdvantageTranslation = {
40
40
  name: Activatable.Name;
41
41
  name_in_library?: Activatable.NameInLibrary;
42
+ /**
43
+ * A string that is used as a label for an input field.
44
+ */
45
+ input?: Activatable.Input;
42
46
  rules: Activatable.Rules;
43
47
  /**
44
48
  * The range.
@@ -46,6 +50,13 @@ export declare type AdvantageTranslation = {
46
50
  * @minLength 1
47
51
  */
48
52
  range?: string;
53
+ ap_value?: Activatable.AdventurePointsValueReplacement;
54
+ /**
55
+ * A string that gets appended to the default AP Value text with a preceding
56
+ * space. This always happens if present, even if the generated AP Value text
57
+ * is replaced.
58
+ */
59
+ ap_value_append?: Activatable.AdventurePointsValueAppend;
49
60
  errata?: Errata;
50
61
  };
51
62
  export declare const validateSchema: import("../validation/schema.js").TypeValidator<Advantage>;
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * @main Disadvantage
3
3
  */
4
- import { Errata } from "./source/_Erratum.js";
5
- import { PublicationRefs } from "./source/_PublicationRef.js";
6
4
  import * as Activatable from "./_Activatable.js";
7
5
  import { LocaleMap } from "./_LocaleMap.js";
8
6
  import { AdvantageDisadvantagePrerequisites } from "./_Prerequisite.js";
7
+ import { Errata } from "./source/_Erratum.js";
8
+ import { PublicationRefs } from "./source/_PublicationRef.js";
9
9
  /**
10
10
  * @title Disadvantage
11
11
  */
@@ -35,6 +35,10 @@ export declare type Disadvantage = {
35
35
  export declare type DisadvantageTranslation = {
36
36
  name: Activatable.Name;
37
37
  name_in_library?: Activatable.NameInLibrary;
38
+ /**
39
+ * A string that is used as a label for an input field.
40
+ */
41
+ input?: Activatable.Input;
38
42
  rules: Activatable.Rules;
39
43
  /**
40
44
  * The range.
@@ -42,6 +46,12 @@ export declare type DisadvantageTranslation = {
42
46
  * @minLength 1
43
47
  */
44
48
  range?: string;
49
+ /**
50
+ * A string that gets appended to the default AP Value text with a preceding
51
+ * space. This always happens if present, even if the generated AP Value text
52
+ * is replaced.
53
+ */
54
+ ap_value_append?: Activatable.AdventurePointsValueAppend;
45
55
  errata?: Errata;
46
56
  };
47
57
  export declare const validateSchema: import("../validation/schema.js").TypeValidator<Disadvantage>;
@@ -1,8 +1,6 @@
1
1
  /**
2
2
  * @main Profession
3
3
  */
4
- import { Errata } from "./source/_Erratum.js";
5
- import { PublicationRefs } from "./source/_PublicationRef.js";
6
4
  import { CommonnessRatedAdvantageDisadvantage } from "./_CommonnessRatedAdvantageDisadvantage.js";
7
5
  import { AdvantageIdentifier, DisadvantageIdentifier, SkillIdentifier } from "./_Identifier.js";
8
6
  import { CombatTechniqueIdentifier, LiturgyIdentifier, MagicalActionIdentifier, RequirableSelectOptionIdentifier, SpecialAbilityIdentifier, SpellworkIdentifier } from "./_IdentifierGroup.js";
@@ -10,6 +8,8 @@ import { LocaleMap } from "./_LocaleMap.js";
10
8
  import { NonEmptyString } from "./_NonEmptyString.js";
11
9
  import { ProfessionPrerequisites } from "./_Prerequisite.js";
12
10
  import { CantripReference, CombatTechniqueReference, CurriculumReference, MagicalTraditionReference, SkillGroupReference, SkillReference } from "./_SimpleReferences.js";
11
+ import { Errata } from "./source/_Erratum.js";
12
+ import { PublicationRefs } from "./source/_PublicationRef.js";
13
13
  /**
14
14
  * @title Profession
15
15
  */
@@ -294,6 +294,16 @@ export declare type ProfessionVariantTranslation = {
294
294
  * Name of the profession variant.
295
295
  */
296
296
  name: ProfessionName;
297
+ /**
298
+ * A text that replaces the generated text for the profession variant.
299
+ */
300
+ full_text?: NonEmptyString;
301
+ /**
302
+ * A text that is appended to the generated text for the profession variant.
303
+ *
304
+ * Has no effect when `full_text` is set.
305
+ */
306
+ concluding_text?: NonEmptyString;
297
307
  };
298
308
  export declare type SpecialAbility = {
299
309
  tag: "Fixed";
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * @main Talisman
3
3
  */
4
- import { Errata } from "./source/_Erratum.js";
5
- import { PublicationRefs } from "./source/_PublicationRef.js";
6
4
  import { LocaleMap } from "./_LocaleMap.js";
7
5
  import { NonEmptyMarkdown, NonEmptyString } from "./_NonEmptyString.js";
8
6
  import { BlessedTraditionReference } from "./_SimpleReferences.js";
7
+ import { Errata } from "./source/_Erratum.js";
8
+ import { PublicationRefs } from "./source/_PublicationRef.js";
9
9
  /**
10
10
  * @title Talisman
11
11
  */
@@ -22,16 +22,16 @@ export declare type Talisman = {
22
22
  */
23
23
  tradition: BlessedTraditionReference[];
24
24
  /**
25
- * The talisman type.
25
+ * The talisman type, if any.
26
26
  */
27
- type: TalismanType;
27
+ type?: TalismanType;
28
28
  /**
29
- * The AP value for the required trade secret.
29
+ * The AP value for the required trade secret, if possible.
30
30
  * @integer
31
31
  * @minimum 5
32
32
  * @multipleOf 5
33
33
  */
34
- ap_value: number;
34
+ ap_value?: number;
35
35
  src: PublicationRefs;
36
36
  /**
37
37
  * All translations for the entry, identified by IETF language tag (BCP47).
@@ -2,9 +2,6 @@
2
2
  * General type specifications used by multiple activatable entries.
3
3
  * @title Activatable
4
4
  */
5
- import { DisplayOption } from "./prerequisites/DisplayOption.js";
6
- import { Errata } from "./source/_Erratum.js";
7
- import { PublicationRefs } from "./source/_PublicationRef.js";
8
5
  import { SelectOptionCategory, SkillApplicationOrUse } from "./_ActivatableSelectOptionCategory.js";
9
6
  import { DurationUnitValue } from "./_ActivatableSkillDuration.js";
10
7
  import { MagicalTraditionIdentifier, PatronIdentifier, SkillIdentifier } from "./_Identifier.js";
@@ -14,6 +11,9 @@ import { NonEmptyMarkdown, NonEmptyString } from "./_NonEmptyString.js";
14
11
  import { GeneralPrerequisites } from "./_Prerequisite.js";
15
12
  import { ResponsiveText, ResponsiveTextOptional } from "./_ResponsiveText.js";
16
13
  import { AdvancedSpecialAbilityReference, AspectReference, CloseCombatTechniqueReference, CombatTechniqueReference, PropertyReference, RaceReference, RangedCombatTechniqueReference, SkillReference, WeaponReference } from "./_SimpleReferences.js";
14
+ import { DisplayOption } from "./prerequisites/DisplayOption.js";
15
+ import { Errata } from "./source/_Erratum.js";
16
+ import { PublicationRefs } from "./source/_PublicationRef.js";
17
17
  /**
18
18
  * The activatable entry's identifier. An unique, increasing integer.
19
19
  * @integer
@@ -124,6 +124,13 @@ export declare type ExplicitGeneralSelectOption = {
124
124
  */
125
125
  skill_uses?: SkillUses;
126
126
  prerequisites?: GeneralPrerequisites;
127
+ /**
128
+ * Specific binding cost for the select option. Only has an effect if the
129
+ * associated entry supports binding costs.
130
+ * @integer
131
+ * @minimum 0
132
+ */
133
+ binding_cost?: number;
127
134
  /**
128
135
  * Specific AP cost for the select option.
129
136
  * @integer
@@ -181,6 +188,13 @@ export declare type ExplicitSkillSelectOption = {
181
188
  */
182
189
  skill_uses?: SkillApplicationOrUse[];
183
190
  prerequisites?: GeneralPrerequisites;
191
+ /**
192
+ * Specific binding cost for the select option. Only has an effect if the
193
+ * associated entry supports binding costs.
194
+ * @integer
195
+ * @minimum 0
196
+ */
197
+ binding_cost?: number;
184
198
  /**
185
199
  * Specific AP cost for the select option.
186
200
  * @integer
@@ -205,6 +219,13 @@ export declare type ExplicitCombatTechniqueSelectOption = {
205
219
  */
206
220
  id: CombatTechniqueIdentifier;
207
221
  prerequisites?: GeneralPrerequisites;
222
+ /**
223
+ * Specific binding cost for the select option. Only has an effect if the
224
+ * associated entry supports binding costs.
225
+ * @integer
226
+ * @minimum 0
227
+ */
228
+ binding_cost?: number;
208
229
  /**
209
230
  * Specific AP cost for the select option.
210
231
  * @integer
@@ -649,11 +670,31 @@ export declare type ActivationAndHalfIntervalArcaneEnergyCost = {
649
670
  interval: DurationUnitValue;
650
671
  };
651
672
  export declare type IndefiniteArcaneEnergyCost = {
673
+ /**
674
+ * Specified if the indefinite AP cost description needs to be modified by a
675
+ * certain value.
676
+ */
677
+ modifier?: IndefiniteArcaneEnergyCostModifier;
652
678
  /**
653
679
  * All translations for the entry, identified by IETF language tag (BCP47).
654
680
  */
655
681
  translations: LocaleMap<IndefiniteArcaneEnergyCostTranslation>;
656
682
  };
683
+ export declare type IndefiniteArcaneEnergyCostModifier = {
684
+ /**
685
+ * The arithmetic how to apply the `value` to the `base`.
686
+ */
687
+ arithmetic: IndefiniteArcaneEnergyCostModifierArithmetic;
688
+ /**
689
+ * The value that is applied to the `base` using the defined `arithmetic`.
690
+ * @integer
691
+ * @minimum 1
692
+ */
693
+ value: number;
694
+ };
695
+ export declare enum IndefiniteArcaneEnergyCostModifierArithmetic {
696
+ Add = "Add"
697
+ }
657
698
  export declare type IndefiniteArcaneEnergyCostTranslation = {
658
699
  /**
659
700
  * A description of where the cost come from.
@@ -744,6 +785,9 @@ export declare type Volume = {
744
785
  } | {
745
786
  tag: "Map";
746
787
  map: VolumeMap;
788
+ } | {
789
+ tag: "DerivedFromSelection";
790
+ derived_from_selection: VolumeDerivedFromSelection;
747
791
  };
748
792
  export declare type FixedVolume = {
749
793
  /**
@@ -885,6 +929,14 @@ export declare type VolumeMapOptionTranslation = {
885
929
  */
886
930
  label_standalone?: NonEmptyString;
887
931
  };
932
+ export declare type VolumeDerivedFromSelection = {
933
+ /**
934
+ * The volume for the selection if it does not define a specific one.
935
+ * @integer
936
+ * @minimum 0
937
+ */
938
+ fallback: number;
939
+ };
888
940
  /**
889
941
  * The binding cost for an enchantment.
890
942
  */
@@ -897,6 +949,9 @@ export declare type BindingCost = {
897
949
  } | {
898
950
  tag: "Map";
899
951
  map: BindingCostMap;
952
+ } | {
953
+ tag: "DerivedFromSelection";
954
+ derived_from_selection: BindingCostDerivedFromSelection;
900
955
  };
901
956
  export declare type FixedBindingCost = {
902
957
  /**
@@ -998,6 +1053,14 @@ export declare type BindingCostMapOptionTranslation = {
998
1053
  */
999
1054
  label_standalone?: NonEmptyString;
1000
1055
  };
1056
+ export declare type BindingCostDerivedFromSelection = {
1057
+ /**
1058
+ * The binding cost for the selection if it does not define a specific one.
1059
+ * @integer
1060
+ * @minimum 0
1061
+ */
1062
+ fallback: number;
1063
+ };
1001
1064
  /**
1002
1065
  * The magic property's identifier. `DependingOnProperty` can only be used if
1003
1066
  * the special ability has an option to select a property.
@@ -1044,8 +1107,9 @@ export declare type RestrictAdvancedSpecialAbilityOptions<Identifier> = {
1044
1107
  export declare type OneOfAdvancedSpecialAbilityOptions<Identifier> = {
1045
1108
  /**
1046
1109
  * The possible advanced special abilities.
1110
+ * @minItems 2
1047
1111
  */
1048
- options: AdvancedSpecialAbilityReference<Identifier>;
1112
+ options: AdvancedSpecialAbilityReference<Identifier>[];
1049
1113
  /**
1050
1114
  * Do have to choose the advanced special ability when buying the style
1051
1115
  * special ability? Otherwise the decision can be made later.
@@ -1094,6 +1158,11 @@ export declare type AdvancedSpecialAbilities<Identifier> = [
1094
1158
  AdvancedSpecialAbility<Identifier>,
1095
1159
  AdvancedSpecialAbility<Identifier>
1096
1160
  ];
1161
+ /**
1162
+ * The prerequisites text. It is only used if the text cannot be generated from
1163
+ * the given information.
1164
+ */
1165
+ export declare type PrerequisitesReplacement = NonEmptyMarkdown;
1097
1166
  export declare type ApplicableCombatTechniques = {
1098
1167
  tag: "None";
1099
1168
  none: {};
@@ -1251,6 +1320,9 @@ export declare type AdventurePointsValue = {
1251
1320
  } | {
1252
1321
  tag: "ByLevel";
1253
1322
  by_level: AdventurePointsValueByLevel;
1323
+ } | {
1324
+ tag: "DerivedFromSelection";
1325
+ derived_from_selection: AdventurePointsDerivedFromSelection;
1254
1326
  } | {
1255
1327
  tag: "Indefinite";
1256
1328
  indefinite: {};
@@ -1266,9 +1338,46 @@ export declare type FixedAdventurePointsValue = AdventurePointsSingleValue;
1266
1338
  * @minItems 2
1267
1339
  */
1268
1340
  export declare type AdventurePointsValueByLevel = AdventurePointsSingleValue[];
1341
+ /**
1342
+ * The adventure points value is derived from the selection of the special
1343
+ * ability. Its display value may be able to be derived from the given
1344
+ * information for the select options. If that is not the case or the generated
1345
+ * text would not match the original one, a replacement text can be provided.
1346
+ */
1347
+ export declare type AdventurePointsDerivedFromSelection = {
1348
+ /**
1349
+ * All translations for the entry, identified by IETF language tag (BCP47).
1350
+ */
1351
+ translations?: LocaleMap<AdventurePointsDerivedFromSelectionTranslation>;
1352
+ };
1353
+ /**
1354
+ * @minProperties 1
1355
+ */
1356
+ export declare type AdventurePointsDerivedFromSelectionTranslation = {
1357
+ /**
1358
+ * A replacement for the generated text if it would not match the original
1359
+ * one.
1360
+ */
1361
+ replacement?: NonEmptyMarkdown;
1362
+ };
1269
1363
  /**
1270
1364
  * A single adventure points value.
1271
1365
  * @integer
1272
1366
  * @minimum 0
1273
1367
  */
1274
1368
  export declare type AdventurePointsSingleValue = number;
1369
+ /**
1370
+ * A string that is used as a label for an input field.
1371
+ */
1372
+ export declare type Input = NonEmptyString;
1373
+ /**
1374
+ * The AP value. It is only used if the text cannot be generated from the given
1375
+ * information.
1376
+ */
1377
+ export declare type AdventurePointsValueReplacement = NonEmptyMarkdown;
1378
+ /**
1379
+ * A string that gets appended to the default AP Value text with a preceding
1380
+ * space. This always happens if present, even if the generated AP Value text is
1381
+ * replaced.
1382
+ */
1383
+ export declare type AdventurePointsValueAppend = NonEmptyMarkdown;
@@ -38,38 +38,7 @@ export var FixedArcaneEnergyCostPerLevel;
38
38
  FixedArcaneEnergyCostPerLevel["Compressed"] = "Compressed";
39
39
  FixedArcaneEnergyCostPerLevel["Verbose"] = "Verbose";
40
40
  })(FixedArcaneEnergyCostPerLevel || (FixedArcaneEnergyCostPerLevel = {}));
41
- // "Input": {
42
- // "description": "A string that is used as a placeholder text for an input field.",
43
- // "type": "string",
44
- // "minLength": 1
45
- // },
46
- // "AdvancedSpecialAbilitiesAppend": {
47
- // "description": "An addition to the default advanced special abilities text. Markdown is available.",
48
- // "type": "string",
49
- // "minLength": 1
50
- // },
51
- // "ApValueReplacement": {
52
- // "description": "The AP value. Only use this if the text provides different information than `X adventure points`, e.g. for Special Ability Property Knowledge it is \"10 adventure points for the first *Property Knowledge*, 20 adventure points for the second, 40 adventure points for the third\". Markdown is available.",
53
- // "type": "string",
54
- // "minLength": 1
55
- // },
56
- // "ApValueAppend": {
57
- // "description": "An addition to the default AP value schema. Only use this if the text provides information appended to `X adventure points` and if `apValue` is not used. Markdown is available.",
58
- // "type": "string",
59
- // "minLength": 1
60
- // },
61
- // "PrerequisitesReplacement": {
62
- // "description": "Use if text cannot be generated by the app. Markdown is available.",
63
- // "type": "string",
64
- // "minLength": 1
65
- // },
66
- // "PrerequisitesStart": {
67
- // "description": "Prepends the provided string to the main prerequisites string. No effect if `prerequisites` field is used in l10n file. Markdown is available.",
68
- // "type": "string",
69
- // "minLength": 1
70
- // },
71
- // "PrerequisitesEnd": {
72
- // "description": "Appends the provided string to the main prerequisites string. No effect if `prerequisites` field is used in l10n table. Markdown is available.",
73
- // "type": "string",
74
- // "minLength": 1
75
- // }
41
+ export var IndefiniteArcaneEnergyCostModifierArithmetic;
42
+ (function (IndefiniteArcaneEnergyCostModifierArithmetic) {
43
+ IndefiniteArcaneEnergyCostModifierArithmetic["Add"] = "Add";
44
+ })(IndefiniteArcaneEnergyCostModifierArithmetic || (IndefiniteArcaneEnergyCostModifierArithmetic = {}));
@@ -1,3 +1,4 @@
1
+ import { TargetCategoryIdentifier } from "./_Identifier.js";
1
2
  import { ActivatableIdentifier, CombatTechniqueIdentifier, SkillIdentifier } from "./_IdentifierGroup.js";
2
3
  import { LocaleMap } from "./_LocaleMap.js";
3
4
  import { CeremonyReference, CloseCombatTechniqueReference, ElementReference, LiturgicalChantReference, RangedCombatTechniqueReference, RitualReference, SkillGroupReference, SpellReference } from "./_SimpleReferences.js";
@@ -31,6 +32,9 @@ export declare type SelectOptionCategory = {
31
32
  } | {
32
33
  tag: "Cultures";
33
34
  cultures: {};
35
+ } | {
36
+ tag: "RacesAndCultures";
37
+ races_and_cultures: {};
34
38
  } | {
35
39
  tag: "BlessedTraditions";
36
40
  blessed_traditions: BlessedTraditionsSelectOptionCategory;
@@ -58,6 +62,9 @@ export declare type SelectOptionCategory = {
58
62
  } | {
59
63
  tag: "CombatTechniques";
60
64
  combat_techniques: CombatTechniquesSelectOptionCategory;
65
+ } | {
66
+ tag: "TargetCategories";
67
+ target_categories: TargetCategoriesSelectOptionCategory;
61
68
  };
62
69
  export declare type BlessedTraditionsSelectOptionCategory = {
63
70
  /**
@@ -201,6 +208,10 @@ export declare type SkillSelectOptionCategoryCategory = {
201
208
  * @minItems 1
202
209
  */
203
210
  prerequisites?: SkillSelectOptionCategoryPrerequisite[];
211
+ /**
212
+ * Generate AP values for each entry.
213
+ */
214
+ ap_value?: AdventurePointsValue<CombatTechniqueIdentifier>;
204
215
  };
205
216
  export declare type CombatTechniquesSelectOptionCategory = {
206
217
  /**
@@ -357,3 +368,22 @@ export declare type FixedAdventurePointsValueMapping<Identifier> = {
357
368
  */
358
369
  ap_value: number;
359
370
  };
371
+ export declare type TargetCategoriesSelectOptionCategory = {
372
+ /**
373
+ * A list of combat technique categories.
374
+ * @minItems 1
375
+ */
376
+ list: SpecificTargetCategory[];
377
+ };
378
+ export declare type SpecificTargetCategory = {
379
+ /**
380
+ * The target category’s identifier.
381
+ */
382
+ id: TargetCategoryIdentifier;
383
+ /**
384
+ * The volume for this specific selection.
385
+ * @integer
386
+ * @minimum 0
387
+ */
388
+ volume?: number;
389
+ };
@@ -529,6 +529,15 @@ export declare type KrallenkettenzauberIdentifier = {
529
529
  */
530
530
  krallenkettenzauber: number;
531
531
  };
532
+ export declare type TrinkhornzauberIdentifier = {
533
+ tag: "Trinkhornzauber";
534
+ /**
535
+ * The Trinkhornzauber’s identifier.
536
+ * @integer
537
+ * @minimum 1
538
+ */
539
+ trinkhornzauber: number;
540
+ };
532
541
  export declare type LanguageIdentifier = {
533
542
  tag: "Language";
534
543
  /**
@@ -1,6 +1,6 @@
1
1
  import * as Identifier from "./_Identifier.js";
2
- export declare type ActivatableIdentifier = Identifier.AdvantageIdentifier | Identifier.DisadvantageIdentifier | Identifier.GeneralSpecialAbilityIdentifier | Identifier.FatePointSpecialAbilityIdentifier | Identifier.CombatSpecialAbilityIdentifier | Identifier.MagicalSpecialAbilityIdentifier | Identifier.StaffEnchantmentIdentifier | Identifier.FamiliarSpecialAbilityIdentifier | Identifier.KarmaSpecialAbilityIdentifier | Identifier.ProtectiveWardingCircleSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier | Identifier.MagicStyleSpecialAbilityIdentifier | Identifier.AdvancedMagicalSpecialAbilityIdentifier | Identifier.SpellSwordEnchantmentIdentifier | Identifier.DaggerRitualIdentifier | Identifier.InstrumentEnchantmentIdentifier | Identifier.AttireEnchantmentIdentifier | Identifier.OrbEnchantmentIdentifier | Identifier.WandEnchantmentIdentifier | Identifier.BrawlingSpecialAbilityIdentifier | Identifier.AncestorGlyphIdentifier | Identifier.CeremonialItemSpecialAbilityIdentifier | Identifier.SermonIdentifier | Identifier.LiturgicalStyleSpecialAbilityIdentifier | Identifier.AdvancedKarmaSpecialAbilityIdentifier | Identifier.VisionIdentifier | Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier | Identifier.PactGiftIdentifier | Identifier.SikaryanDrainSpecialAbilityIdentifier | Identifier.LycantropicGiftIdentifier | Identifier.SkillStyleSpecialAbilityIdentifier | Identifier.AdvancedSkillSpecialAbilityIdentifier | Identifier.ArcaneOrbEnchantmentIdentifier | Identifier.CauldronEnchantmentIdentifier | Identifier.FoolsHatEnchantmentIdentifier | Identifier.ToyEnchantmentIdentifier | Identifier.BowlEnchantmentIdentifier | Identifier.FatePointSexSpecialAbilityIdentifier | Identifier.SexSpecialAbilityIdentifier | Identifier.WeaponEnchantmentIdentifier | Identifier.SickleRitualIdentifier | Identifier.RingEnchantmentIdentifier | Identifier.ChronicleEnchantmentIdentifier | Identifier.KrallenkettenzauberIdentifier;
3
- export declare type SpecialAbilityIdentifier = Identifier.GeneralSpecialAbilityIdentifier | Identifier.FatePointSpecialAbilityIdentifier | Identifier.CombatSpecialAbilityIdentifier | Identifier.MagicalSpecialAbilityIdentifier | Identifier.StaffEnchantmentIdentifier | Identifier.FamiliarSpecialAbilityIdentifier | Identifier.KarmaSpecialAbilityIdentifier | Identifier.ProtectiveWardingCircleSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier | Identifier.MagicStyleSpecialAbilityIdentifier | Identifier.AdvancedMagicalSpecialAbilityIdentifier | Identifier.SpellSwordEnchantmentIdentifier | Identifier.DaggerRitualIdentifier | Identifier.InstrumentEnchantmentIdentifier | Identifier.AttireEnchantmentIdentifier | Identifier.OrbEnchantmentIdentifier | Identifier.WandEnchantmentIdentifier | Identifier.BrawlingSpecialAbilityIdentifier | Identifier.AncestorGlyphIdentifier | Identifier.CeremonialItemSpecialAbilityIdentifier | Identifier.SermonIdentifier | Identifier.LiturgicalStyleSpecialAbilityIdentifier | Identifier.AdvancedKarmaSpecialAbilityIdentifier | Identifier.VisionIdentifier | Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier | Identifier.PactGiftIdentifier | Identifier.SikaryanDrainSpecialAbilityIdentifier | Identifier.LycantropicGiftIdentifier | Identifier.SkillStyleSpecialAbilityIdentifier | Identifier.AdvancedSkillSpecialAbilityIdentifier | Identifier.ArcaneOrbEnchantmentIdentifier | Identifier.CauldronEnchantmentIdentifier | Identifier.FoolsHatEnchantmentIdentifier | Identifier.ToyEnchantmentIdentifier | Identifier.BowlEnchantmentIdentifier | Identifier.FatePointSexSpecialAbilityIdentifier | Identifier.SexSpecialAbilityIdentifier | Identifier.WeaponEnchantmentIdentifier | Identifier.SickleRitualIdentifier | Identifier.RingEnchantmentIdentifier | Identifier.ChronicleEnchantmentIdentifier | Identifier.KrallenkettenzauberIdentifier;
2
+ export declare type ActivatableIdentifier = Identifier.AdvantageIdentifier | Identifier.DisadvantageIdentifier | Identifier.GeneralSpecialAbilityIdentifier | Identifier.FatePointSpecialAbilityIdentifier | Identifier.CombatSpecialAbilityIdentifier | Identifier.MagicalSpecialAbilityIdentifier | Identifier.StaffEnchantmentIdentifier | Identifier.FamiliarSpecialAbilityIdentifier | Identifier.KarmaSpecialAbilityIdentifier | Identifier.ProtectiveWardingCircleSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier | Identifier.MagicStyleSpecialAbilityIdentifier | Identifier.AdvancedMagicalSpecialAbilityIdentifier | Identifier.SpellSwordEnchantmentIdentifier | Identifier.DaggerRitualIdentifier | Identifier.InstrumentEnchantmentIdentifier | Identifier.AttireEnchantmentIdentifier | Identifier.OrbEnchantmentIdentifier | Identifier.WandEnchantmentIdentifier | Identifier.BrawlingSpecialAbilityIdentifier | Identifier.AncestorGlyphIdentifier | Identifier.CeremonialItemSpecialAbilityIdentifier | Identifier.SermonIdentifier | Identifier.LiturgicalStyleSpecialAbilityIdentifier | Identifier.AdvancedKarmaSpecialAbilityIdentifier | Identifier.VisionIdentifier | Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier | Identifier.PactGiftIdentifier | Identifier.SikaryanDrainSpecialAbilityIdentifier | Identifier.LycantropicGiftIdentifier | Identifier.SkillStyleSpecialAbilityIdentifier | Identifier.AdvancedSkillSpecialAbilityIdentifier | Identifier.ArcaneOrbEnchantmentIdentifier | Identifier.CauldronEnchantmentIdentifier | Identifier.FoolsHatEnchantmentIdentifier | Identifier.ToyEnchantmentIdentifier | Identifier.BowlEnchantmentIdentifier | Identifier.FatePointSexSpecialAbilityIdentifier | Identifier.SexSpecialAbilityIdentifier | Identifier.WeaponEnchantmentIdentifier | Identifier.SickleRitualIdentifier | Identifier.RingEnchantmentIdentifier | Identifier.ChronicleEnchantmentIdentifier | Identifier.KrallenkettenzauberIdentifier | Identifier.TrinkhornzauberIdentifier;
3
+ export declare type SpecialAbilityIdentifier = Identifier.GeneralSpecialAbilityIdentifier | Identifier.FatePointSpecialAbilityIdentifier | Identifier.CombatSpecialAbilityIdentifier | Identifier.MagicalSpecialAbilityIdentifier | Identifier.StaffEnchantmentIdentifier | Identifier.FamiliarSpecialAbilityIdentifier | Identifier.KarmaSpecialAbilityIdentifier | Identifier.ProtectiveWardingCircleSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier | Identifier.MagicStyleSpecialAbilityIdentifier | Identifier.AdvancedMagicalSpecialAbilityIdentifier | Identifier.SpellSwordEnchantmentIdentifier | Identifier.DaggerRitualIdentifier | Identifier.InstrumentEnchantmentIdentifier | Identifier.AttireEnchantmentIdentifier | Identifier.OrbEnchantmentIdentifier | Identifier.WandEnchantmentIdentifier | Identifier.BrawlingSpecialAbilityIdentifier | Identifier.AncestorGlyphIdentifier | Identifier.CeremonialItemSpecialAbilityIdentifier | Identifier.SermonIdentifier | Identifier.LiturgicalStyleSpecialAbilityIdentifier | Identifier.AdvancedKarmaSpecialAbilityIdentifier | Identifier.VisionIdentifier | Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier | Identifier.PactGiftIdentifier | Identifier.SikaryanDrainSpecialAbilityIdentifier | Identifier.LycantropicGiftIdentifier | Identifier.SkillStyleSpecialAbilityIdentifier | Identifier.AdvancedSkillSpecialAbilityIdentifier | Identifier.ArcaneOrbEnchantmentIdentifier | Identifier.CauldronEnchantmentIdentifier | Identifier.FoolsHatEnchantmentIdentifier | Identifier.ToyEnchantmentIdentifier | Identifier.BowlEnchantmentIdentifier | Identifier.FatePointSexSpecialAbilityIdentifier | Identifier.SexSpecialAbilityIdentifier | Identifier.WeaponEnchantmentIdentifier | Identifier.SickleRitualIdentifier | Identifier.RingEnchantmentIdentifier | Identifier.ChronicleEnchantmentIdentifier | Identifier.KrallenkettenzauberIdentifier | Identifier.TrinkhornzauberIdentifier;
4
4
  export declare type CombatRelatedSpecialAbilityIdentifier = Identifier.CombatSpecialAbilityIdentifier | Identifier.CombatStyleSpecialAbilityIdentifier | Identifier.AdvancedCombatSpecialAbilityIdentifier | Identifier.CommandSpecialAbilityIdentifier;
5
5
  export declare type TraditionIdentifier = Identifier.MagicalTraditionIdentifier | Identifier.BlessedTraditionIdentifier;
6
6
  export declare type RatedIdentifier = Identifier.AttributeIdentifier | Identifier.SkillIdentifier | Identifier.CloseCombatTechniqueIdentifier | Identifier.RangedCombatTechniqueIdentifier | Identifier.SpellIdentifier | Identifier.RitualIdentifier | Identifier.LiturgicalChantIdentifier | Identifier.CeremonyIdentifier;