@blizzard-api/wow 1.1.4 → 1.2.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.
package/dist/index.d.cts CHANGED
@@ -1,22 +1,24 @@
1
- import { Resource, BaseSearchParameters, Locales, SearchResponse, Origins } from '@blizzard-api/core';
1
+ import { ProtectedResource, Resource, BaseSearchParameters, Locales, SearchResponse, Origins } from '@blizzard-api/core';
2
2
 
3
+ /**
4
+ *
5
+ */
6
+ interface Href {
7
+ href: string;
8
+ }
3
9
  /**
4
10
  * Base interface for Blizzard API responses.
5
11
  */
6
12
  interface ResponseBase {
7
13
  _links: {
8
- self: {
9
- href: string;
10
- };
14
+ self: Href;
11
15
  };
12
16
  }
13
17
  /**
14
18
  * Base record interface containing key.href property that often appear in Blizzard API responses.
15
19
  */
16
20
  interface KeyBase {
17
- key: {
18
- href: string;
19
- };
21
+ key: Href;
20
22
  }
21
23
  /**
22
24
  * Base record interface containing name and id properties that often appear together in Blizzard API responses.
@@ -48,12 +50,26 @@ interface MediaAsset$1 {
48
50
  value: string;
49
51
  }
50
52
  /**
51
- * The playable genders in World of Warcraft.
53
+ * The playable gender names/descriptions in World of Warcraft.
52
54
  */
53
- interface Gender {
55
+ interface GenderName {
54
56
  female: string;
55
57
  male: string;
56
58
  }
59
+ /**
60
+ * The playable genders in World of Warcraft.
61
+ */
62
+ declare const Genders: {
63
+ readonly FEMALE: "FEMALE";
64
+ readonly MALE: "MALE";
65
+ };
66
+ /**
67
+ * The gender associated with a character or entity in World of Warcraft.
68
+ */
69
+ interface Gender {
70
+ name: Capitalize<Lowercase<keyof typeof Genders>>;
71
+ type: keyof typeof Genders;
72
+ }
57
73
  /**
58
74
  * The playable factions in World of Warcraft.
59
75
  */
@@ -68,6 +84,204 @@ interface Faction {
68
84
  name: Capitalize<Lowercase<keyof typeof Factions>>;
69
85
  type: keyof typeof Factions;
70
86
  }
87
+ /**
88
+ * The standard structure to represent a World of Warcraft Realm.
89
+ */
90
+ interface Realm$4 extends NameIdKey {
91
+ slug: string;
92
+ }
93
+ /**
94
+ * The standard structure to represent a World of Warcraft Character.
95
+ */
96
+ interface Character$2 extends NameIdKey {
97
+ realm: Realm$4;
98
+ }
99
+
100
+ interface AccountProfileSummaryResponse {
101
+ _links: Links;
102
+ collections: Href;
103
+ id: number;
104
+ wow_accounts?: Array<WowAccount>;
105
+ }
106
+ interface Links {
107
+ profile: Href;
108
+ self: Href;
109
+ user: Href;
110
+ }
111
+ interface WowAccount {
112
+ characters: Array<Character$1>;
113
+ id: number;
114
+ }
115
+ interface Character$1 {
116
+ character: Href;
117
+ faction: Faction;
118
+ gender: Gender;
119
+ id: number;
120
+ level: number;
121
+ name: string;
122
+ playable_class: NameIdKey;
123
+ playable_race: NameIdKey;
124
+ protected_character: Href;
125
+ realm: Realm$4;
126
+ }
127
+ interface ProtectedCharacterProfileSummaryResponse {
128
+ _links: Links;
129
+ bind_position: Position;
130
+ character: NameIdKey & Realm$4;
131
+ id: number;
132
+ money: number;
133
+ name: string;
134
+ position: Position;
135
+ protected_stats: ProtectedStats;
136
+ wow_account: number;
137
+ }
138
+ interface Position {
139
+ facing: number;
140
+ map: NameId;
141
+ x: number;
142
+ y: number;
143
+ z: number;
144
+ zone: NameId;
145
+ }
146
+ interface ProtectedStats {
147
+ level_gold_gained: number;
148
+ level_gold_lost: number;
149
+ level_item_value_gained: number;
150
+ level_number_deaths: number;
151
+ total_gold_gained: number;
152
+ total_gold_lost: number;
153
+ total_item_value_gained: number;
154
+ total_number_deaths: number;
155
+ }
156
+ interface AccountCollectionsIndexResponse {
157
+ _links: Links;
158
+ heirlooms: Href;
159
+ mounts: Href;
160
+ pets: Href;
161
+ toys: Href;
162
+ transmogs: Href;
163
+ }
164
+ interface AccountHeirloomsCollectionSummaryResponse {
165
+ _links: Links;
166
+ heirlooms: Array<Heirloom$1>;
167
+ }
168
+ interface Heirloom$1 {
169
+ heirloom: NameIdKey;
170
+ upgrade: {
171
+ level: number;
172
+ };
173
+ }
174
+ interface AccountMountsCollectionSummaryResponse {
175
+ _links: Links;
176
+ mounts: Array<Mount$1>;
177
+ }
178
+ interface Mount$1 {
179
+ is_favorite?: boolean;
180
+ mount: NameIdKey;
181
+ }
182
+ interface AccountPetsCollectionSummaryResponse {
183
+ _links: Links;
184
+ pets: Array<Pet$1>;
185
+ unlocked_battle_pet_slots: number;
186
+ }
187
+ interface Pet$1 {
188
+ active_slot?: number;
189
+ creature_display?: {
190
+ id: number;
191
+ } & KeyBase;
192
+ id: number;
193
+ is_active?: boolean;
194
+ is_favorite?: boolean;
195
+ level: number;
196
+ name?: string;
197
+ quality: Quality$1;
198
+ species: NameIdKey;
199
+ stats: Stats$1;
200
+ }
201
+ interface Quality$1 {
202
+ name: 'Common' | 'Poor' | 'Rare' | 'Uncommon';
203
+ type: 'COMMON' | 'POOR' | 'RARE' | 'UNCOMMON';
204
+ }
205
+ interface Stats$1 {
206
+ breed_id: number;
207
+ health: number;
208
+ power: number;
209
+ speed: number;
210
+ }
211
+ interface AccountToysCollectionSummaryResponse {
212
+ _links: Links;
213
+ toys: Array<Toy$1>;
214
+ }
215
+ interface Toy$1 {
216
+ is_favorite?: boolean;
217
+ toy: NameIdKey;
218
+ }
219
+ interface AccountTransmogsCollectionSummaryResponse {
220
+ _links: Links;
221
+ appearance_sets: Array<NameIdKey>;
222
+ slots: Array<Slot$1>;
223
+ }
224
+ interface Slot$1 {
225
+ appearances: Array<{
226
+ id: number;
227
+ } & KeyBase>;
228
+ slot: Slot$1;
229
+ }
230
+ interface Slot$1 {
231
+ name: string;
232
+ type: string;
233
+ }
234
+
235
+ /**
236
+ * Because this endpoint provides data about the current logged-in user's World of Warcraft account, it requires an access token with the wow.profile scope acquired via the Authorization Code Flow. See {@link https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow}
237
+ * @param token The OAuth 2.0 access token to use for authentication.
238
+ * @returns a profile summary for an account.
239
+ */
240
+ declare function accountProfileSummary(token: string): ProtectedResource<AccountProfileSummaryResponse>;
241
+ /**
242
+ * Because this endpoint provides data about the current logged-in user's World of Warcraft account, it requires an access token with the wow.profile scope acquired via the Authorization Code Flow. See {@link https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow}
243
+ * @param realmId The realm ID.
244
+ * @param characterId The character ID.
245
+ * @param token The OAuth 2.0 access token to use for authentication.
246
+ * @returns a protected profile summary for a character.
247
+ */
248
+ declare function protectedCharacterProfileSummary(realmId: number, characterId: number, token: string): ProtectedResource<ProtectedCharacterProfileSummaryResponse>;
249
+ /**
250
+ * Because this endpoint provides data about the current logged-in user's World of Warcraft account, it requires an access token with the wow.profile scope acquired via the Authorization Code Flow. See {@link https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow}
251
+ * @param token The OAuth 2.0 access token to use for authentication.
252
+ * @returns an index of collection types for an account.
253
+ */
254
+ declare function accountCollectionsIndex(token: string): ProtectedResource<AccountCollectionsIndexResponse>;
255
+ /**
256
+ * Because this endpoint provides data about the current logged-in user's World of Warcraft account, it requires an access token with the wow.profile scope acquired via the Authorization Code Flow. See {@link https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow}
257
+ * @param token The OAuth 2.0 access token to use for authentication.
258
+ * @returns a summary of the heirlooms an account has obtained.
259
+ */
260
+ declare function accountHeirloomsCollectionSummary(token: string): ProtectedResource<AccountHeirloomsCollectionSummaryResponse>;
261
+ /**
262
+ * Because this endpoint provides data about the current logged-in user's World of Warcraft account, it requires an access token with the wow.profile scope acquired via the Authorization Code Flow. See {@link https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow}
263
+ * @param token The OAuth 2.0 access token to use for authentication.
264
+ * @returns a summary of the mounts an account has obtained.
265
+ */
266
+ declare function accountMountsCollectionSummary(token: string): ProtectedResource<AccountMountsCollectionSummaryResponse>;
267
+ /**
268
+ * Because this endpoint provides data about the current logged-in user's World of Warcraft account, it requires an access token with the wow.profile scope acquired via the Authorization Code Flow. See {@link https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow}
269
+ * @param token The OAuth 2.0 access token to use for authentication.
270
+ * @returns a summary of the battle pets an account has obtained.
271
+ */
272
+ declare function accountPetsCollectionSummary(token: string): ProtectedResource<AccountPetsCollectionSummaryResponse>;
273
+ /**
274
+ * Because this endpoint provides data about the current logged-in user's World of Warcraft account, it requires an access token with the wow.profile scope acquired via the Authorization Code Flow. See {@link https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow}
275
+ * @param token The OAuth 2.0 access token to use for authentication.
276
+ * @returns a summary of the toys an account has obtained.
277
+ */
278
+ declare function accountToysCollectionSummary(token: string): ProtectedResource<AccountToysCollectionSummaryResponse>;
279
+ /**
280
+ * Because this endpoint provides data about the current logged-in user's World of Warcraft account, it requires an access token with the wow.profile scope acquired via the Authorization Code Flow. See {@link https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow}
281
+ * @param token The OAuth 2.0 access token to use for authentication.
282
+ * @returns a summary of the transmog unlocks an account has obtained.
283
+ */
284
+ declare function accountTransmogsCollectionSummary(token: string): ProtectedResource<AccountTransmogsCollectionSummaryResponse>;
71
285
 
72
286
  /**
73
287
  * Interface for a response from the achievement category endpoint.
@@ -301,6 +515,907 @@ declare function azeriteEssenceMedia(azeriteEssenceId: number): Resource<Azerite
301
515
  */
302
516
  declare function azeriteEssenceSearch(options: AzeriteEssenceSearchParameters): Resource<SearchResponse<AzeriteEssenceSearchResponseItem>, AzeriteEssenceSearchParameters>;
303
517
 
518
+ interface CharacterAchievementsSummaryResponse extends ResponseBase {
519
+ achievements: Array<Achievement$1>;
520
+ category_progress: Array<CategoryProgress$1>;
521
+ character: Character$2;
522
+ recent_events: Array<RecentEvent$1>;
523
+ statistics: Href;
524
+ total_points: number;
525
+ total_quantity: number;
526
+ }
527
+ interface Achievement$1 {
528
+ achievement: NameIdKey;
529
+ completed_timestamp?: number;
530
+ criteria?: Criteria$1;
531
+ id: number;
532
+ }
533
+ interface Criteria$1 {
534
+ amount?: number;
535
+ child_criteria?: Array<Criteria$1>;
536
+ id: number;
537
+ is_completed: boolean;
538
+ }
539
+ interface CategoryProgress$1 {
540
+ category: NameIdKey;
541
+ points: number;
542
+ quantity: number;
543
+ }
544
+ interface RecentEvent$1 {
545
+ achievement: NameIdKey;
546
+ timestamp: number;
547
+ }
548
+ interface CharacterAchievementStatisticsResponse extends ResponseBase {
549
+ categories: Array<Category$2>;
550
+ character: Character$2;
551
+ }
552
+ interface Category$2 {
553
+ id: number;
554
+ name: string;
555
+ statistics: Array<Statistic>;
556
+ sub_categories: Array<SubCategory>;
557
+ }
558
+ interface SubCategory {
559
+ id: number;
560
+ name: string;
561
+ statistics: Array<Statistic>;
562
+ }
563
+ interface Statistic {
564
+ description?: string;
565
+ id: number;
566
+ last_updated_timestamp: number;
567
+ name: string;
568
+ quantity: number;
569
+ }
570
+
571
+ /**
572
+ * @param realmSlug The slug of the realm.
573
+ * @param characterName The lowercase name of the character.
574
+ * @returns a summary of the achievements a character has completed.
575
+ */
576
+ declare function characterAchievementsSummary(realmSlug: string, characterName: string): Resource<CharacterAchievementsSummaryResponse>;
577
+ /**
578
+ * @param realmSlug The slug of the realm.
579
+ * @param characterName The lowercase name of the character.
580
+ * @returns a character's statistics as they pertain to achievements.
581
+ */
582
+ declare function characterAchievementStatistics(realmSlug: string, characterName: string): Resource<CharacterAchievementStatisticsResponse>;
583
+
584
+ interface CharacterAppearanceResponse extends ResponseBase {
585
+ active_spec: NameIdKey;
586
+ character: Character$2;
587
+ customizations: Array<Customization>;
588
+ faction: Faction;
589
+ gender: Gender;
590
+ guild_crest: GuildCrest;
591
+ items: Array<Item$2>;
592
+ playable_class: NameIdKey;
593
+ playable_race: NameIdKey;
594
+ }
595
+ interface Customization {
596
+ choice: Choice;
597
+ option: NameId;
598
+ }
599
+ interface Choice {
600
+ display_order: number;
601
+ id: number;
602
+ name?: string;
603
+ }
604
+ interface GuildCrest {
605
+ background: {
606
+ color: RGBWithId;
607
+ };
608
+ border: BorderEmblem;
609
+ emblem: BorderEmblem;
610
+ }
611
+ interface RGBWithId {
612
+ id: number;
613
+ rgba: Color;
614
+ }
615
+ interface BorderEmblem {
616
+ color: RGBWithId;
617
+ id: number;
618
+ media: {
619
+ id: number;
620
+ } & KeyBase;
621
+ }
622
+ interface Item$2 {
623
+ enchant: number;
624
+ id: number;
625
+ internal_slot_id: number;
626
+ item_appearance_modifier_id: number;
627
+ slot: {
628
+ name: string;
629
+ type: string;
630
+ };
631
+ subclass: number;
632
+ }
633
+
634
+ /**
635
+ * @param realmSlug The slug of the realm.
636
+ * @param characterName The lowercase name of the character.
637
+ * @returns a summary of a character's appearance settings.
638
+ */
639
+ declare function characterAppearanceSummary(realmSlug: string, characterName: string): Resource<CharacterAppearanceResponse>;
640
+
641
+ interface CharacterCollectionsIndexResponse extends ResponseBase {
642
+ character: Character$2;
643
+ heirlooms: Href;
644
+ mounts: Href;
645
+ pets: Href;
646
+ toys: Href;
647
+ transmogs: Href;
648
+ }
649
+ interface CharacterHeirloomsCollectionSummaryResponse extends ResponseBase {
650
+ heirlooms: Array<Heirloom>;
651
+ }
652
+ interface Heirloom {
653
+ heirloom: NameIdKey;
654
+ upgrade: {
655
+ level: number;
656
+ };
657
+ }
658
+ interface CharacterMountsCollectionSummaryResponse extends ResponseBase {
659
+ mounts: Array<Mount>;
660
+ }
661
+ interface Mount {
662
+ is_character_specific?: boolean;
663
+ is_favorite?: boolean;
664
+ is_useable: boolean;
665
+ mount: NameIdKey;
666
+ }
667
+ interface CharacterPetsCollectionSummaryResponse extends ResponseBase {
668
+ pets: Array<Pet>;
669
+ unlocked_battle_pet_slots: number;
670
+ }
671
+ interface Pet {
672
+ active_slot?: number;
673
+ creature_display?: {
674
+ id: number;
675
+ } & KeyBase;
676
+ id: number;
677
+ is_active?: boolean;
678
+ is_favorite?: boolean;
679
+ level: number;
680
+ name?: string;
681
+ quality: Quality;
682
+ species: NameIdKey;
683
+ stats: Stats;
684
+ }
685
+ interface Quality {
686
+ name: 'Common' | 'Poor' | 'Rare' | 'Uncommon';
687
+ type: 'COMMON' | 'POOR' | 'RARE' | 'UNCOMMON';
688
+ }
689
+ interface Stats {
690
+ breed_id: number;
691
+ health: number;
692
+ power: number;
693
+ speed: number;
694
+ }
695
+ interface CharacterToysCollectionSummaryResponse extends ResponseBase {
696
+ toys: Array<Toy>;
697
+ }
698
+ interface Toy {
699
+ is_favorite?: boolean;
700
+ toy: NameIdKey;
701
+ }
702
+ interface CharacterTransmogCollectionSummaryResponse extends ResponseBase {
703
+ appearance_sets: Array<NameIdKey>;
704
+ slots: Array<Slot>;
705
+ }
706
+ interface Slot {
707
+ appearances: Array<{
708
+ id: number;
709
+ } & KeyBase>;
710
+ slot: Slot;
711
+ }
712
+ interface Slot {
713
+ name: string;
714
+ type: string;
715
+ }
716
+
717
+ /**
718
+ * @param realmSlug The slug of the realm.
719
+ * @param characterName The lowercase name of the character.
720
+ * @returns an index of collection types for a character.
721
+ */
722
+ declare function characterCollectionsIndex(realmSlug: string, characterName: string): Resource<CharacterCollectionsIndexResponse>;
723
+ /**
724
+ * @param realmSlug The slug of the realm.
725
+ * @param characterName The lowercase name of the character.
726
+ * @returns a summary of the heirlooms a character has obtained.
727
+ */
728
+ declare function characterHeirloomsCollectionSummary(realmSlug: string, characterName: string): Resource<CharacterHeirloomsCollectionSummaryResponse>;
729
+ /**
730
+ * @param realmSlug The slug of the realm.
731
+ * @param characterName The lowercase name of the character.
732
+ * @returns a summary of the mounts a character has obtained.
733
+ */
734
+ declare function characterMountsCollectionSummary(realmSlug: string, characterName: string): Resource<CharacterMountsCollectionSummaryResponse>;
735
+ /**
736
+ * @param realmSlug The slug of the realm.
737
+ * @param characterName The lowercase name of the character.
738
+ * @returns a summary of the battle pets a character has obtained.
739
+ */
740
+ declare function characterPetsCollectionSummary(realmSlug: string, characterName: string): Resource<CharacterPetsCollectionSummaryResponse>;
741
+ /**
742
+ * @param realmSlug The slug of the realm.
743
+ * @param characterName The lowercase name of the character.
744
+ * @returns a summary of the toys a character has obtained.
745
+ */
746
+ declare function characterToysCollectionSummary(realmSlug: string, characterName: string): Resource<CharacterToysCollectionSummaryResponse>;
747
+ /**
748
+ * @param realmSlug The slug of the realm.
749
+ * @param characterName The lowercase name of the character.
750
+ * @returns a summary of the transmog unlocks a character has obtained.
751
+ */
752
+ declare function characterTransmogCollectionSummary(realmSlug: string, characterName: string): Resource<CharacterTransmogCollectionSummaryResponse>;
753
+
754
+ interface CharacterEncountersSummaryResponse extends ResponseBase {
755
+ character: Character$2;
756
+ dungeons: Href;
757
+ raids: Href;
758
+ }
759
+ interface CharacterDungeonsResponse extends ResponseBase {
760
+ expansions: Array<Expansion<DungeonMode>>;
761
+ }
762
+ interface Expansion<T> {
763
+ expansion: NameIdKey;
764
+ instances: Array<Instance<T>>;
765
+ }
766
+ interface Instance<T> {
767
+ instance: NameIdKey;
768
+ modes: Array<T>;
769
+ }
770
+ interface DungeonMode {
771
+ difficulty: DungeonDifficulties;
772
+ progress: Progress;
773
+ status: Status;
774
+ }
775
+ interface Status {
776
+ name: 'Complete' | 'In Progress';
777
+ type: 'COMPLETE' | 'IN_PROGRESS';
778
+ }
779
+ interface DungeonDifficulties {
780
+ name: 'Heroic' | 'Mythic' | 'Mythic+ Dungeons' | 'Normal';
781
+ type: 'HEROIC' | 'MYTHIC' | 'MYTHIC_KEYSTONE' | 'NORMAL';
782
+ }
783
+ interface Progress {
784
+ completed_count: number;
785
+ encounters: Array<Encounter>;
786
+ total_count: number;
787
+ }
788
+ interface Encounter {
789
+ completed_count: number;
790
+ encounter: NameIdKey;
791
+ last_kill_timestamp: number;
792
+ }
793
+ interface CharacterRaidsResponse extends ResponseBase {
794
+ character: Character$2;
795
+ expansions: Array<Expansion<RaidMode>>;
796
+ }
797
+ interface RaidMode {
798
+ difficulty: RaidDifficulties;
799
+ progress: Progress;
800
+ status: Status;
801
+ }
802
+ interface RaidDifficulties {
803
+ name: '10 Player (Heroic)' | '10 Player' | '25 Player (Heroic)' | '25 Player' | 'Heroic' | 'Mythic' | 'Normal' | 'Raid Finder';
804
+ type: 'HEROIC' | 'LEGACY_10_MAN' | 'LEGACY_10_MAN_HEROIC' | 'LEGACY_25_MAN' | 'LEGACY_25_MAN_HEROIC' | 'LFR' | 'MYTHIC' | 'NORMAL';
805
+ }
806
+
807
+ /**
808
+ * @param realmSlug The slug of the realm.
809
+ * @param characterName The lowercase name of the character.
810
+ * @returns a summary of a character's encounters.
811
+ */
812
+ declare function characterEncountersSummary(realmSlug: string, characterName: string): Resource<CharacterEncountersSummaryResponse>;
813
+ /**
814
+ * @param realmSlug The slug of the realm.
815
+ * @param characterName The lowercase name of the character.
816
+ * @returns a summary of a character's completed dungeons.
817
+ */
818
+ declare function characterDungeons(realmSlug: string, characterName: string): Resource<CharacterDungeonsResponse>;
819
+ /**
820
+ * @param realmSlug The slug of the realm.
821
+ * @param characterName The lowercase name of the character.
822
+ * @returns a summary of a character's completed raids.
823
+ */
824
+ declare function characterRaids(realmSlug: string, characterName: string): Resource<CharacterRaidsResponse>;
825
+
826
+ interface CharacterEquipmentSummaryResponse extends ResponseBase {
827
+ character: Character$2;
828
+ equipped_item_sets: Array<Set>;
829
+ equipped_items: Array<EquippedItem>;
830
+ }
831
+ interface Set {
832
+ display_string: string;
833
+ effects: Array<Effect$1>;
834
+ item_set: NameIdKey;
835
+ items: Array<ItemElement>;
836
+ }
837
+ interface Effect$1 {
838
+ display_string: string;
839
+ is_active: boolean;
840
+ required_count: number;
841
+ }
842
+ interface ItemElement extends NameIdKey {
843
+ is_equipped?: boolean;
844
+ }
845
+ interface EquippedItem {
846
+ armor?: Armor$1;
847
+ binding: NameType;
848
+ bonus_list?: Array<number>;
849
+ context: number;
850
+ description?: string;
851
+ durability?: DisplayStringValue;
852
+ enchantments?: Array<Enchantment>;
853
+ inventory_type: NameType;
854
+ is_subclass_hidden?: boolean;
855
+ item: {
856
+ id: number;
857
+ } & KeyBase;
858
+ item_class: NameIdKey;
859
+ item_subclass: NameIdKey;
860
+ level: DisplayStringValue;
861
+ limit_category?: string;
862
+ media: {
863
+ id: number;
864
+ } & KeyBase;
865
+ modified_appearance_id?: number;
866
+ modified_crafting_stat?: Array<ModifiedCraftingStat>;
867
+ name: string;
868
+ name_description: NameDescription;
869
+ quality: NameType;
870
+ quantity: number;
871
+ requirements?: Requirements$3;
872
+ sell_price?: SellPrice;
873
+ set?: Set;
874
+ slot: NameType;
875
+ sockets?: Array<Socket$1>;
876
+ spells?: Array<Spell$1>;
877
+ stats?: Array<Stat$2>;
878
+ transmog?: Transmog;
879
+ unique_equipped?: string;
880
+ weapon?: Weapon$2;
881
+ }
882
+ interface Armor$1 {
883
+ display: NameDescription;
884
+ value: number;
885
+ }
886
+ interface NameDescription {
887
+ color: Color;
888
+ display_string: string;
889
+ }
890
+ interface NameType {
891
+ name: string;
892
+ type: string;
893
+ }
894
+ interface DisplayStringValue {
895
+ display_string: string;
896
+ value: number;
897
+ }
898
+ interface Enchantment {
899
+ display_string: string;
900
+ enchantment_id: number;
901
+ enchantment_slot: EnchantmentSlot;
902
+ source_item?: NameIdKey;
903
+ }
904
+ interface EnchantmentSlot {
905
+ id: number;
906
+ type: string;
907
+ }
908
+ interface ModifiedCraftingStat {
909
+ id: number;
910
+ name: string;
911
+ type: string;
912
+ }
913
+ interface Requirements$3 {
914
+ level: DisplayStringValue;
915
+ playable_classes?: PlayableClasses;
916
+ }
917
+ interface PlayableClasses {
918
+ display_string: string;
919
+ links: Array<NameIdKey>;
920
+ }
921
+ interface SellPrice {
922
+ display_strings: DisplayStrings;
923
+ value: number;
924
+ }
925
+ interface DisplayStrings {
926
+ copper: string;
927
+ gold: string;
928
+ header: string;
929
+ silver: string;
930
+ }
931
+ interface Socket$1 {
932
+ display_string: string;
933
+ item: NameIdKey;
934
+ media: {
935
+ id: number;
936
+ } & KeyBase;
937
+ socket_type: NameType;
938
+ }
939
+ interface Spell$1 {
940
+ description: string;
941
+ spell: NameIdKey;
942
+ }
943
+ interface Stat$2 {
944
+ display: NameDescription;
945
+ is_equip_bonus?: boolean;
946
+ is_negated?: boolean;
947
+ type: NameType;
948
+ value: number;
949
+ }
950
+ interface Transmog {
951
+ display_string: string;
952
+ item: NameIdKey;
953
+ item_modified_appearance_id: number;
954
+ }
955
+ interface Weapon$2 {
956
+ attack_speed: DisplayStringValue;
957
+ damage: Damage$2;
958
+ dps: DisplayStringValue;
959
+ }
960
+ interface Damage$2 {
961
+ damage_class: NameType;
962
+ display_string: string;
963
+ max_value: number;
964
+ min_value: number;
965
+ }
966
+
967
+ /**
968
+ * @param realmSlug The slug of the realm.
969
+ * @param characterName The lowercase name of the character.
970
+ * @returns a summary of the items equipped by a character.
971
+ */
972
+ declare function characterEquipmentSummary(realmSlug: string, characterName: string): Resource<CharacterEquipmentSummaryResponse>;
973
+
974
+ interface CharacterHunterPetsSummaryResponse extends ResponseBase {
975
+ character: Character$2;
976
+ hunter_pets: Array<HunterPet>;
977
+ }
978
+ interface HunterPet {
979
+ creature: NameIdKey;
980
+ creature_display: {
981
+ id: number;
982
+ } & KeyBase;
983
+ is_active?: boolean;
984
+ is_summoned?: boolean;
985
+ level: number;
986
+ name: string;
987
+ slot: number;
988
+ }
989
+
990
+ /**
991
+ * If the character is a hunter, returns a summary of the character's hunter pets. Otherwise, returns an HTTP 404 Not Found error.
992
+ * @param realmSlug The slug of the realm.
993
+ * @param characterName The lowercase name of the character.
994
+ * @returns a summary of the character's hunter pets.
995
+ */
996
+ declare function characterHunterPetsSummary(realmSlug: string, characterName: string): Resource<CharacterHunterPetsSummaryResponse>;
997
+
998
+ interface CharacterMediaSummaryResponse extends ResponseBase {
999
+ assets: Array<Asset$1>;
1000
+ character: Character$2;
1001
+ }
1002
+ interface Asset$1 {
1003
+ key: string;
1004
+ value: string;
1005
+ }
1006
+
1007
+ /**
1008
+ * @param realmSlug The slug of the realm.
1009
+ * @param characterName The lowercase name of the character.
1010
+ * @returns a summary of the media assets available for a character (such as an avatar render).
1011
+ */
1012
+ declare function characterMediaSummary(realmSlug: string, characterName: string): Resource<CharacterMediaSummaryResponse>;
1013
+
1014
+ interface CharacterMythicKeystoneProfileIndexResponse extends ResponseBase {
1015
+ character: Character$2;
1016
+ current_period: CurrentPeriod;
1017
+ seasons: Array<{
1018
+ id: number;
1019
+ } & KeyBase>;
1020
+ }
1021
+ interface CurrentPeriod {
1022
+ period: {
1023
+ id: number;
1024
+ } & KeyBase;
1025
+ }
1026
+ interface CharacterMythicKeystoneSeasonDetailsResponse extends ResponseBase {
1027
+ best_runs: Array<BestRun>;
1028
+ character: NameIdKey;
1029
+ mythic_rating: MythicRating$1;
1030
+ season: {
1031
+ id: number;
1032
+ } & KeyBase;
1033
+ }
1034
+ interface BestRun {
1035
+ completed_timestamp: number;
1036
+ dungeon: NameIdKey;
1037
+ duration: number;
1038
+ is_completed_within_time: boolean;
1039
+ keystone_affixes: Array<NameIdKey>;
1040
+ keystone_level: number;
1041
+ members: Array<Member$2>;
1042
+ mythic_rating: MythicRating$1;
1043
+ }
1044
+ interface Member$2 {
1045
+ character: {
1046
+ realm: Realm$4;
1047
+ } & NameId;
1048
+ equipped_item_level: number;
1049
+ race: NameIdKey;
1050
+ specialization: NameIdKey;
1051
+ }
1052
+ interface MythicRating$1 {
1053
+ color: Color;
1054
+ rating: number;
1055
+ }
1056
+
1057
+ /**
1058
+ * @param realmSlug The slug of the realm.
1059
+ * @param characterName The lowercase name of the character.
1060
+ * @returns Returns the Mythic Keystone season details for a character. Returns a 404 Not Found for characters that have not yet completed a Mythic Keystone dungeon for the specified season.
1061
+ */
1062
+ declare function characterMythicKeystoneProfileIndex(realmSlug: string, characterName: string): Resource<CharacterMythicKeystoneProfileIndexResponse>;
1063
+ /**
1064
+ * Returns the Mythic Keystone season details for a character.
1065
+ * Returns a 404 Not Found for characters that have not yet completed a Mythic Keystone dungeon for the specified season.
1066
+ * @param realmSlug The slug of the realm.
1067
+ * @param characterName The lowercase name of the character.
1068
+ * @param seasonId The ID of the season.
1069
+ * @returns the Mythic Keystone season details for a character.
1070
+ */
1071
+ declare function characterMythicKeystoneSeasonDetails(realmSlug: string, characterName: string, seasonId: number): Resource<CharacterMythicKeystoneSeasonDetailsResponse>;
1072
+
1073
+ interface CharacterProfessionsSummaryResponse extends ResponseBase {
1074
+ character: Character$2;
1075
+ primaries: Array<Primary>;
1076
+ secondaries: Array<Secondary>;
1077
+ }
1078
+ interface Primary {
1079
+ profession: NameIdKey;
1080
+ tiers: Array<Tier$1>;
1081
+ }
1082
+ interface Secondary {
1083
+ max_skill_points?: number;
1084
+ profession: NameIdKey;
1085
+ skill_points?: number;
1086
+ tiers?: Array<Tier$1>;
1087
+ }
1088
+ interface Tier$1 {
1089
+ known_recipes?: Array<NameIdKey>;
1090
+ max_skill_points: number;
1091
+ skill_points: number;
1092
+ tier: NameId;
1093
+ }
1094
+
1095
+ /**
1096
+ * @param realmSlug The slug of the realm.
1097
+ * @param characterName The lowercase name of the character.
1098
+ * @returns a summary of the professions for a character.
1099
+ */
1100
+ declare function characterProfessionsSummary(realmSlug: string, characterName: string): Resource<CharacterProfessionsSummaryResponse>;
1101
+
1102
+ interface CharacterProfileSummaryResponse extends ResponseBase {
1103
+ achievement_points: number;
1104
+ achievements: Href;
1105
+ achievements_statistics: Href;
1106
+ active_spec: NameIdKey;
1107
+ active_title: {
1108
+ display_string: string;
1109
+ } & NameIdKey;
1110
+ appearance: Href;
1111
+ average_item_level: number;
1112
+ character_class: NameIdKey;
1113
+ collections: Href;
1114
+ covenant_progress: CovenantProgress;
1115
+ encounters: Href;
1116
+ equipment: Href;
1117
+ equipped_item_level: number;
1118
+ experience: number;
1119
+ faction: Faction;
1120
+ gender: Faction;
1121
+ guild: Guild$2;
1122
+ hunter_pets: Href;
1123
+ id: number;
1124
+ last_login_timestamp: number;
1125
+ level: number;
1126
+ media: Href;
1127
+ mythic_keystone_profile: Href;
1128
+ name: string;
1129
+ name_search: string;
1130
+ professions: Href;
1131
+ pvp_summary: Href;
1132
+ quests: Href;
1133
+ race: NameIdKey;
1134
+ realm: Realm$4;
1135
+ reputations: Href;
1136
+ specializations: Href;
1137
+ statistics: Href;
1138
+ titles: Href;
1139
+ }
1140
+ interface CovenantProgress {
1141
+ chosen_covenant: NameIdKey;
1142
+ renown_level: number;
1143
+ soulbinds: Href;
1144
+ }
1145
+ interface Guild$2 extends NameIdKey {
1146
+ faction: Faction;
1147
+ realm: Realm$4;
1148
+ }
1149
+ interface CharacterProfileStatusResponse extends ResponseBase {
1150
+ id: number;
1151
+ is_valid: boolean;
1152
+ }
1153
+
1154
+ /**
1155
+ * @param realmSlug The slug of the realm.
1156
+ * @param characterName The lowercase name of the character.
1157
+ * @returns a summary of the character profile for a character.
1158
+ */
1159
+ declare function characterProfileSummary(realmSlug: string, characterName: string): Resource<CharacterProfileSummaryResponse>;
1160
+ /**
1161
+ * Returns the status and a unique ID for a character. A client should delete information about a character from their application if any of the following conditions occur:
1162
+ * - an HTTP 404 Not Found error is returned
1163
+ * - the is_valid value is false
1164
+ * - the returned character ID doesn't match the previously recorded value for the character
1165
+ *
1166
+ * The following example illustrates how to use this endpoint:
1167
+ *
1168
+ * 1. A client requests and stores information about a character, including its unique character ID and the timestamp of the request.
1169
+ * 2. After 30 days, the client makes a request to the status endpoint to verify if the character information is still valid.
1170
+ * 3. If character cannot be found, is not valid, or the characters IDs do not match, the client removes the information from their application.
1171
+ * 4. If the character is valid and the character IDs match, the client retains the data for another 30 days.
1172
+ *
1173
+ * @param realmSlug The slug of the realm.
1174
+ * @param characterName The lowercase name of the character.
1175
+ * @returns the status of the character profile for a character.
1176
+ */
1177
+ declare function characterProfileStatus(realmSlug: string, characterName: string): Resource<CharacterProfileStatusResponse>;
1178
+
1179
+ interface CharacterPvpSummaryResponse extends ResponseBase {
1180
+ character: Character$2;
1181
+ honor_level: number;
1182
+ honorable_kills: number;
1183
+ pvp_map_statistics: Array<PvpMapStatistic>;
1184
+ }
1185
+ interface PvpMapStatistic {
1186
+ match_statistics: MatchStatistics;
1187
+ world_map: NameId;
1188
+ }
1189
+ interface MatchStatistics {
1190
+ lost: number;
1191
+ played: number;
1192
+ won: number;
1193
+ }
1194
+
1195
+ /**
1196
+ * @param realmSlug The slug of the realm.
1197
+ * @param characterName The lowercase name of the character.
1198
+ * @returns a PvP summary for a character.
1199
+ */
1200
+ declare function characterPvpSummary(realmSlug: string, characterName: string): Resource<CharacterPvpSummaryResponse>;
1201
+
1202
+ interface CharacterQuestsResponse extends ResponseBase {
1203
+ character: Character$2;
1204
+ completed: Href;
1205
+ in_progress: Array<NameIdKey>;
1206
+ }
1207
+ interface CharacterCompletedQuestsResponse extends ResponseBase {
1208
+ character: Character$2;
1209
+ quests: Array<NameIdKey>;
1210
+ }
1211
+
1212
+ /**
1213
+ * @param realmSlug The slug of the realm.
1214
+ * @param characterName The lowercase name of the character.
1215
+ * @returns a character's active quests as well as a link to the character's completed quests.
1216
+ */
1217
+ declare function characterQuests(realmSlug: string, characterName: string): Resource<CharacterQuestsResponse>;
1218
+ /**
1219
+ * @param realmSlug The slug of the realm.
1220
+ * @param characterName The lowercase name of the character.
1221
+ * @returns a list of quests that a character has completed.
1222
+ */
1223
+ declare function characterCompletedQuests(realmSlug: string, characterName: string): Resource<CharacterCompletedQuestsResponse>;
1224
+
1225
+ interface CharacterReputationsSummaryResponse extends ResponseBase {
1226
+ character: Character$2;
1227
+ reputations: Array<Reputation$1>;
1228
+ }
1229
+ interface Reputation$1 {
1230
+ faction: NameIdKey;
1231
+ paragon?: Paragon;
1232
+ standing: Standing;
1233
+ }
1234
+ interface Paragon {
1235
+ max: number;
1236
+ raw: number;
1237
+ value: number;
1238
+ }
1239
+ interface Standing {
1240
+ max: number;
1241
+ name: string;
1242
+ raw: number;
1243
+ tier: number;
1244
+ value: number;
1245
+ }
1246
+
1247
+ /**
1248
+ * @param realmSlug The slug of the realm.
1249
+ * @param characterName The lowercase name of the character.
1250
+ * @returns a summary of a character's reputations.
1251
+ */
1252
+ declare function characterReputationsSummary(realmSlug: string, characterName: string): Resource<CharacterReputationsSummaryResponse>;
1253
+
1254
+ interface CharacterSoulbindsResponse extends ResponseBase {
1255
+ character: Character$2;
1256
+ chosen_covenant: NameIdKey;
1257
+ renown_level: number;
1258
+ soulbinds: Array<Soulbind>;
1259
+ }
1260
+ interface Soulbind {
1261
+ is_active?: boolean;
1262
+ soulbind: NameIdKey;
1263
+ traits: Array<Trait>;
1264
+ }
1265
+ interface Trait {
1266
+ conduit_socket?: ConduitSocket;
1267
+ display_order: number;
1268
+ tier: number;
1269
+ trait?: NameIdKey;
1270
+ }
1271
+ interface ConduitSocket {
1272
+ socket: Socket;
1273
+ type: TypeClass;
1274
+ }
1275
+ interface Socket {
1276
+ conduit: NameIdKey;
1277
+ rank: number;
1278
+ }
1279
+ interface TypeClass {
1280
+ name: 'Endurance Conduit Slot' | 'Finesse Conduit Slot' | 'Potency Conduit Slot';
1281
+ type: 'ENDURANCE' | 'FINESSE' | 'POTENCY';
1282
+ }
1283
+
1284
+ /**
1285
+ * @param realmSlug The slug of the realm.
1286
+ * @param characterName The lowercase name of the character.
1287
+ * @returns a character's soulbinds.
1288
+ */
1289
+ declare function characterSoulbinds(realmSlug: string, characterName: string): Resource<CharacterSoulbindsResponse>;
1290
+
1291
+ interface CharacterSpecializationsSummaryResponse extends ResponseBase {
1292
+ active_hero_talent: unknown;
1293
+ active_specialization: NameIdKey;
1294
+ character: Character$2;
1295
+ specializations: Array<Specialization$1>;
1296
+ }
1297
+ interface Specialization$1 {
1298
+ glyphs?: Array<NameIdKey>;
1299
+ loadouts: Array<Loadout>;
1300
+ pvp_talent_slots?: Array<PvpTalentSlot>;
1301
+ specialization: NameIdKey;
1302
+ }
1303
+ interface Loadout {
1304
+ is_active: boolean;
1305
+ selected_class_talent_tree: NameIdKey;
1306
+ selected_class_talents: Array<SelectedTalent>;
1307
+ selected_spec_talent_tree: NameIdKey;
1308
+ selected_spec_talents?: Array<SelectedTalent>;
1309
+ talent_loadout_code: string;
1310
+ }
1311
+ interface SelectedTalent {
1312
+ default_points?: number;
1313
+ id: number;
1314
+ rank: number;
1315
+ tooltip: Selected;
1316
+ }
1317
+ interface Selected {
1318
+ spell_tooltip: SpellTooltip$2;
1319
+ talent: NameIdKey;
1320
+ }
1321
+ interface SpellTooltip$2 {
1322
+ cast_time: '1.5 sec cast' | '2.5 sec cast' | '3 sec cast' | 'Channeled' | 'Instant' | 'Passive';
1323
+ cooldown?: string;
1324
+ description: string;
1325
+ power_cost?: string;
1326
+ range?: '8-30 yd range' | '15 yd range' | '30 yd range' | '40 yd range' | '50 yd range' | '55 yd range' | '100 yd range' | 'Melee Range';
1327
+ spell: NameIdKey;
1328
+ }
1329
+ interface PvpTalentSlot {
1330
+ selected: Selected;
1331
+ slot_number: number;
1332
+ }
1333
+
1334
+ /**
1335
+ * @param realmSlug The slug of the realm.
1336
+ * @param characterName The lowercase name of the character.
1337
+ * @returns a summary of a character's specializations.
1338
+ */
1339
+ declare function characterSpecializationsSummary(realmSlug: string, characterName: string): Resource<CharacterSpecializationsSummaryResponse>;
1340
+
1341
+ interface CharacterStatisticsSummaryResponse extends ResponseBase {
1342
+ agility: BaseEffectiveStat;
1343
+ armor: BaseEffectiveStat;
1344
+ attack_power: number;
1345
+ avoidance: Rating;
1346
+ block: RatingWithValue;
1347
+ bonus_armor: number;
1348
+ character: Character$2;
1349
+ dodge: RatingWithValue;
1350
+ health: number;
1351
+ intellect: BaseEffectiveStat;
1352
+ lifesteal: RatingWithValue;
1353
+ main_hand_damage_max: number;
1354
+ main_hand_damage_min: number;
1355
+ main_hand_dps: number;
1356
+ main_hand_speed: number;
1357
+ mana_regen: number;
1358
+ mana_regen_combat: number;
1359
+ mastery: RatingWithValue;
1360
+ melee_crit: RatingWithValue;
1361
+ melee_haste: RatingWithValue;
1362
+ off_hand_damage_max: number;
1363
+ off_hand_damage_min: number;
1364
+ off_hand_dps: number;
1365
+ off_hand_speed: number;
1366
+ parry: RatingWithValue;
1367
+ power: number;
1368
+ power_type: Character$2;
1369
+ ranged_crit: RatingWithValue;
1370
+ ranged_haste: RatingWithValue;
1371
+ speed: Rating;
1372
+ spell_crit: RatingWithValue;
1373
+ spell_haste: RatingWithValue;
1374
+ spell_penetration: number;
1375
+ spell_power: number;
1376
+ stamina: BaseEffectiveStat;
1377
+ strength: BaseEffectiveStat;
1378
+ versatility: number;
1379
+ versatility_damage_done_bonus: number;
1380
+ versatility_damage_taken_bonus: number;
1381
+ versatility_healing_done_bonus: number;
1382
+ }
1383
+ interface BaseEffectiveStat {
1384
+ base: number;
1385
+ effective: number;
1386
+ }
1387
+ interface Rating {
1388
+ rating: number;
1389
+ rating_bonus: number;
1390
+ }
1391
+ interface RatingWithValue {
1392
+ rating: number;
1393
+ rating_bonus: number;
1394
+ value: number;
1395
+ }
1396
+
1397
+ /**
1398
+ * @param realmSlug The slug of the realm.
1399
+ * @param characterName The lowercase name of the character.
1400
+ * @returns a statistics summary for a character.
1401
+ */
1402
+ declare function characterStatisticsSummary(realmSlug: string, characterName: string): Resource<CharacterStatisticsSummaryResponse>;
1403
+
1404
+ interface CharacterTitlesSummaryResponse extends ResponseBase {
1405
+ active_title: {
1406
+ display_string: string;
1407
+ } & NameIdKey;
1408
+ character: Character$2;
1409
+ titles: Array<NameIdKey>;
1410
+ }
1411
+
1412
+ /**
1413
+ * @param realmSlug The slug of the realm.
1414
+ * @param characterName The lowercase name of the character.
1415
+ * @returns a summary of titles a character has obtained.
1416
+ */
1417
+ declare function characterTitlesSummary(realmSlug: string, characterName: string): Resource<CharacterTitlesSummaryResponse>;
1418
+
304
1419
  type WithoutUnderscore<T extends string> = T extends `${infer Prefix}_${infer Suffix}` ? `${Prefix}${Suffix}` : never;
305
1420
  /**
306
1421
  * The category of a realm.
@@ -326,9 +1441,6 @@ type RealmType = 'Normal' | 'Roleplaying';
326
1441
  interface RealmIndexResponse extends ResponseBase {
327
1442
  realms: Array<Realm$4>;
328
1443
  }
329
- interface Realm$4 extends NameIdKey {
330
- slug: string;
331
- }
332
1444
  /**
333
1445
  * The response for a realm.
334
1446
  * @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
@@ -811,6 +1923,128 @@ declare function creatureTypeIndex(): Resource<CreatureTypeIndexResponse>;
811
1923
  */
812
1924
  declare function creatureSearch(options: CreatureSearchParameters): Resource<SearchResponse<CreatureSearchResponseItem>, Omit<CreatureSearchParameters, 'locale' | 'name'>>;
813
1925
 
1926
+ interface GuildResponse extends ResponseBase {
1927
+ achievement_points: number;
1928
+ achievements: Href;
1929
+ activity: Href;
1930
+ created_timestamp: number;
1931
+ crest: Crest;
1932
+ faction: Faction;
1933
+ id: number;
1934
+ member_count: number;
1935
+ name: string;
1936
+ name_search: string;
1937
+ realm: Realm$4;
1938
+ roster: Href;
1939
+ }
1940
+ interface Crest {
1941
+ background: {
1942
+ color: RgbWithId;
1943
+ };
1944
+ border: Border$1;
1945
+ emblem: Border$1;
1946
+ }
1947
+ interface RgbWithId {
1948
+ id: number;
1949
+ rgba: Color;
1950
+ }
1951
+ interface Border$1 {
1952
+ color: RgbWithId;
1953
+ id: number;
1954
+ media: {
1955
+ id: number;
1956
+ } & KeyBase;
1957
+ }
1958
+ interface GuildActivityResponse extends ResponseBase {
1959
+ activities: Array<ActivityElement>;
1960
+ guild: Guild$1;
1961
+ }
1962
+ interface ActivityElement {
1963
+ activity: {
1964
+ type: string;
1965
+ };
1966
+ character_achievement: CharacterAchievement;
1967
+ timestamp: number;
1968
+ }
1969
+ interface CharacterAchievement {
1970
+ achievement: NameIdKey;
1971
+ character: Character$2;
1972
+ }
1973
+ interface Guild$1 extends NameIdKey {
1974
+ faction: Faction;
1975
+ realm: Realm$4;
1976
+ }
1977
+ interface GuildAchievementsResponse extends ResponseBase {
1978
+ achievements: Array<Achievement>;
1979
+ category_progress: Array<CategoryProgress>;
1980
+ guild: Guild$1;
1981
+ recent_events: Array<RecentEvent>;
1982
+ total_points: number;
1983
+ total_quantity: number;
1984
+ }
1985
+ interface Achievement {
1986
+ achievement: NameIdKey;
1987
+ completed_timestamp?: number;
1988
+ criteria?: Criteria;
1989
+ id: number;
1990
+ }
1991
+ interface Criteria {
1992
+ amount?: number;
1993
+ child_criteria?: Array<Criteria>;
1994
+ id: number;
1995
+ is_completed: boolean;
1996
+ }
1997
+ interface CategoryProgress {
1998
+ category: NameIdKey;
1999
+ points: number;
2000
+ quantity: number;
2001
+ }
2002
+ interface RecentEvent {
2003
+ achievement: NameIdKey;
2004
+ timestamp: number;
2005
+ }
2006
+ interface GuildRosterResponse extends ResponseBase {
2007
+ guild: Guild$1;
2008
+ members: Array<Member$1>;
2009
+ }
2010
+ interface Member$1 {
2011
+ character: RosterMemberCharacter;
2012
+ rank: number;
2013
+ }
2014
+ interface RosterMemberCharacter extends Character$2 {
2015
+ level: number;
2016
+ playable_class: Playable;
2017
+ playable_race: Playable;
2018
+ }
2019
+ interface Playable extends KeyBase {
2020
+ id: number;
2021
+ }
2022
+
2023
+ /**
2024
+ * @param realmSlug The slug of the realm.
2025
+ * @param nameSlug The lowercase name of the guild.
2026
+ * @returns a single guild by its name and realm.
2027
+ */
2028
+ declare function guild(realmSlug: string, nameSlug: string): Resource<GuildResponse>;
2029
+ /**
2030
+ * @param realmSlug The slug of the realm.
2031
+ * @param nameSlug The lowercase name of the guild.
2032
+ * @returns a single guild's activity by name and realm.
2033
+ */
2034
+ declare function guildActivity(realmSlug: string, nameSlug: string): Resource<GuildActivityResponse>;
2035
+ /**
2036
+ * @param realmSlug The slug of the realm.
2037
+ * @param nameSlug The lowercase name of the guild.
2038
+ * @returns a single guild's achievements by name and realm.
2039
+ */
2040
+ declare function guildAchievements(realmSlug: string, nameSlug: string): Resource<GuildAchievementsResponse>;
2041
+ /**
2042
+ * @param realmSlug The slug of the realm.
2043
+ * @param nameSlug The lowercase name of the guild.
2044
+ * @returns a single guild's roster by its name and realm.
2045
+ */
2046
+ declare function guildRoster(realmSlug: string, nameSlug: string): Resource<GuildRosterResponse>;
2047
+
814
2048
  /**
815
2049
  * The response for the guild crest components index.
816
2050
  * @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
@@ -1260,7 +2494,7 @@ declare function itemSearch(options: ItemSearchParameters): Resource<SearchRespo
1260
2494
  type EncounterCategory = 'DUNGEON' | 'RAID' | 'WORLD_BOSS';
1261
2495
  type EncounterMode = 'HEROIC' | 'LFR' | 'MYTHIC' | 'NORMAL';
1262
2496
  type ModeName = '10 Player (Heroic)' | '10 Player' | '25 Player (Heroic)' | '25 Player' | 'Heroic' | 'Mythic' | 'Mythic+ Dungeons' | 'Normal' | 'Raid Finder';
1263
- type ModeType = 'HEROIC' | 'LEGACY_10_MAN_HEROIC' | 'LEGACY_10_MAN' | 'LEGACY_25_MAN_HEROIC' | 'LEGACY_25_MAN' | 'LFR' | 'MYTHIC_KEYSTONE' | 'MYTHIC' | 'NORMAL';
2497
+ type ModeType = 'HEROIC' | 'LEGACY_10_MAN' | 'LEGACY_10_MAN_HEROIC' | 'LEGACY_25_MAN' | 'LEGACY_25_MAN_HEROIC' | 'LFR' | 'MYTHIC' | 'MYTHIC_KEYSTONE' | 'NORMAL';
1264
2498
  /**
1265
2499
  * The response for a journal encounter index.
1266
2500
  * @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
@@ -2035,7 +3269,7 @@ interface PlayableClassIndexResponse extends ResponseBase {
2035
3269
  * @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
2036
3270
  */
2037
3271
  interface PlayableClassResponse extends ResponseBase, NameId {
2038
- gender_name: Gender;
3272
+ gender_name: GenderName;
2039
3273
  media: Media$6;
2040
3274
  playable_races: Array<NameIdKey>;
2041
3275
  power_type: NameIdKey;
@@ -2104,7 +3338,7 @@ interface PlayableRaceIndexResponse extends ResponseBase {
2104
3338
  */
2105
3339
  interface PlayableRaceResponse extends ResponseBase, NameId {
2106
3340
  faction: Faction;
2107
- gender_name: Gender;
3341
+ gender_name: GenderName;
2108
3342
  is_allied_race: boolean;
2109
3343
  is_selectable: boolean;
2110
3344
  playable_classes: Array<NameIdKey>;
@@ -2135,7 +3369,7 @@ interface PlayableSpecializationIndexResponse extends ResponseBase {
2135
3369
  * @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
2136
3370
  */
2137
3371
  interface PlayableSpecializationResponse extends ResponseBase, NameId {
2138
- gender_description: Gender;
3372
+ gender_description: GenderName;
2139
3373
  media: Media$5;
2140
3374
  playable_class: NameIdKey;
2141
3375
  power_type: NameIdKey;
@@ -3109,7 +4343,7 @@ interface TitleIndexResponse extends ResponseBase {
3109
4343
  * @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
3110
4344
  */
3111
4345
  interface TitleResponse extends ResponseBase, NameId {
3112
- gender_name: Gender;
4346
+ gender_name: GenderName;
3113
4347
  }
3114
4348
 
3115
4349
  /**
@@ -3182,6 +4416,14 @@ declare function wowToken(): Resource<WowTokenResponse>;
3182
4416
  * @see https://develop.battle.net/documentation/world-of-warcraft
3183
4417
  */
3184
4418
  declare const wow: {
4419
+ accountCollectionsIndex: typeof accountCollectionsIndex;
4420
+ accountHeirloomsCollectionSummary: typeof accountHeirloomsCollectionSummary;
4421
+ accountMountsCollectionSummary: typeof accountMountsCollectionSummary;
4422
+ accountPetsCollectionSummary: typeof accountPetsCollectionSummary;
4423
+ accountProfileSummary: typeof accountProfileSummary;
4424
+ accountToysCollectionSummary: typeof accountToysCollectionSummary;
4425
+ accountTransmogsCollectionSummary: typeof accountTransmogsCollectionSummary;
4426
+ protectedCharacterProfileSummary: typeof protectedCharacterProfileSummary;
3185
4427
  achievement: typeof achievement;
3186
4428
  achievementCategory: typeof achievementCategory;
3187
4429
  achievementCategoryIndex: typeof achievementCategoryIndex;
@@ -3193,6 +4435,34 @@ declare const wow: {
3193
4435
  azeriteEssenceIndex: typeof azeriteEssenceIndex;
3194
4436
  azeriteEssenceMedia: typeof azeriteEssenceMedia;
3195
4437
  azeriteEssenceSearch: typeof azeriteEssenceSearch;
4438
+ characterAchievementsSummary: typeof characterAchievementsSummary;
4439
+ characterAchievementStatistics: typeof characterAchievementStatistics;
4440
+ characterAppearanceSummary: typeof characterAppearanceSummary;
4441
+ characterCollectionsIndex: typeof characterCollectionsIndex;
4442
+ characterHeirloomsCollectionSummary: typeof characterHeirloomsCollectionSummary;
4443
+ characterMountsCollectionSummary: typeof characterMountsCollectionSummary;
4444
+ characterPetsCollectionSummary: typeof characterPetsCollectionSummary;
4445
+ characterToysCollectionSummary: typeof characterToysCollectionSummary;
4446
+ characterTransmogCollectionSummary: typeof characterTransmogCollectionSummary;
4447
+ characterDungeons: typeof characterDungeons;
4448
+ characterEncountersSummary: typeof characterEncountersSummary;
4449
+ characterRaids: typeof characterRaids;
4450
+ characterEquipmentSummary: typeof characterEquipmentSummary;
4451
+ characterHunterPetsSummary: typeof characterHunterPetsSummary;
4452
+ characterMediaSummary: typeof characterMediaSummary;
4453
+ characterMythicKeystoneProfileIndex: typeof characterMythicKeystoneProfileIndex;
4454
+ characterMythicKeystoneSeasonDetails: typeof characterMythicKeystoneSeasonDetails;
4455
+ characterProfessionsSummary: typeof characterProfessionsSummary;
4456
+ characterProfileStatus: typeof characterProfileStatus;
4457
+ characterProfileSummary: typeof characterProfileSummary;
4458
+ characterPvpSummary: typeof characterPvpSummary;
4459
+ characterCompletedQuests: typeof characterCompletedQuests;
4460
+ characterQuests: typeof characterQuests;
4461
+ characterReputationsSummary: typeof characterReputationsSummary;
4462
+ characterSoulbinds: typeof characterSoulbinds;
4463
+ characterSpecializationsSummary: typeof characterSpecializationsSummary;
4464
+ characterStatisticsSummary: typeof characterStatisticsSummary;
4465
+ characterTitlesSummary: typeof characterTitlesSummary;
3196
4466
  connectedRealm: typeof connectedRealm;
3197
4467
  connectedRealmIndex: typeof connectedRealmIndex;
3198
4468
  connectedRealmSearch: typeof connectedRealmSearch;
@@ -3211,6 +4481,10 @@ declare const wow: {
3211
4481
  creatureSearch: typeof creatureSearch;
3212
4482
  creatureType: typeof creatureType;
3213
4483
  creatureTypeIndex: typeof creatureTypeIndex;
4484
+ guild: typeof guild;
4485
+ guildAchievements: typeof guildAchievements;
4486
+ guildActivity: typeof guildActivity;
4487
+ guildRoster: typeof guildRoster;
3214
4488
  guildCrestBorder: typeof guildCrestBorder;
3215
4489
  guildCrestComponentsIndex: typeof guildCrestComponentsIndex;
3216
4490
  guildCrestEmblem: typeof guildCrestEmblem;
@@ -3323,4 +4597,4 @@ declare const wow: {
3323
4597
  wowToken: typeof wowToken;
3324
4598
  };
3325
4599
 
3326
- export { type AchievementCategoryIndexResponse, type AchievementCategoryResponse, type AchievementIndexResponse, type AchievementMediaResponse, type AchievementResponse, type AuctionHouseCommoditiesResponse, type AuctionHouseResponse, type AzeriteEssenceIndexResponse, type AzeriteEssenceMediaResponse, type AzeriteEssenceResponse, type AzeriteEssenceSearchParameters, type AzeriteEssenceSearchResponseItem, type ConduitIndexResponse, type ConduitResponse, type ConnectedRealmIndexResponse, type ConnectedRealmResponse, type ConnectedRealmSearchParameters, type ConnectedRealmSearchResponseItem, type CovenantIndexResponse, type CovenantMediaResponse, type CovenantResponse, type CreatureDisplayMediaResponse, type CreatureFamilyIndexResponse, type CreatureFamilyMediaResponse, type CreatureFamilyResponse, type CreatureResponse, type CreatureSearchParameters, type CreatureSearchResponseItem, type CreatureTypeIndexResponse, type CreatureTypeResponse, type GuildCrestBorderEmblemResponse, type GuildCrestComponentsIndexResponse, type HeirloomIndexResponse, type HeirloomResponse, type ItemClassIndexResponse, type ItemClassResponse, type ItemMediaResponse, type ItemResponse, type ItemSearchParameters, type ItemSearchResponseItem, type ItemSetIndexResponse, type ItemSetResponse, type ItemSubClassResponse, type JournalEncounterIndexResponse, type JournalEncounterResponse, type JournalEncounterSearchParameters, type JournalEncounterSearchResponseItem, type JournalExpansionIndexResponse, type JournalExpansionResponse, type JournalInstanceIndexResponse, type JournalInstanceMediaResponse, type JournalInstanceResponse, type MediaSearchParameters, type MediaSearchResponseItem, type ModifiedCraftingCategoryIndexResponse, type ModifiedCraftingCategoryResponse, type ModifiedCraftingIndexResponse, type ModifiedCraftingReagentSlotTypeIndexResponse, type ModifiedCraftingReagentSlotTypeResponse, type MountIndexResponse, type MountResponse, type MountSearchParameters, type MountSearchResponseItem, type MythicKeystoneAffixIndexResponse, type MythicKeystoneAffixMediaResponse, type MythicKeystoneAffixResponse, type MythicKeystoneDungeonIndexResponse, type MythicKeystoneDungeonResponse, type MythicKeystoneIndexResponse, type MythicKeystoneLeaderboardIndexResponse, type MythicKeystoneLeaderboardResponse, type MythicKeystonePeriodIndexResponse, type MythicKeystonePeriodResponse, type MythicKeystoneSeasonIndexResponse, type MythicKeystoneSeasonResponse, type MythicRaidLeaderboardResponse, type PetAbilityIndexResponse, type PetAbilityMediaResponse, type PetAbilityResponse, type PetIndexResponse, type PetMediaResponse, type PetResponse, type PlayableClassIndexResponse, type PlayableClassMediaResponse, type PlayableClassResponse, type PlayableRaceIndexResponse, type PlayableRaceResponse, type PlayableSpecializationIndexResponse, type PlayableSpecializationMediaResponse, type PlayableSpecializationResponse, type PowerTypeIndexResponse, type PowerTypeResponse, type ProfessionIndexResponse, type ProfessionMediaResponse, type ProfessionResponse, type ProfessionSkillTierResponse, type PvpLeaderboardIndexResponse, type PvpLeaderboardResponse, type PvpRewardsIndexResponse, type PvpSeasonIndexResponse, type PvpSeasonResponse, type PvpTalentIndexResponse, type PvpTalentResponse, type PvpTalentSlotsResponse, type PvpTierIndexResponse, type PvpTierMediaResponse, type PvpTierResponse, type QuestAreaIndexResponse, type QuestAreaResponse, type QuestCategoryIndexResponse, type QuestCategoryResponse, type QuestIndexResponse, type QuestResponse, type QuestTypeIndexResponse, type QuestTypeResponse, type RealmCategory, type RealmIndexResponse, type RealmResponse, type RealmSearchParameters, type RealmSearchResponseItem, type RealmTimezone, type RealmType, type RealmTypeCapitalized, type RecipeMediaResponse, type RecipeResponse, type RegionIndexResponse, type RegionResponse, type ReputationFactionIndexResponse, type ReputationFactionResponse, type ReputationTiersIndexResponse, type ReputationTiersResponse, type SoulbindIndexResponse, type SoulbindResponse, type SpellMediaResponse, type SpellResponse, type SpellSearchParameters, type SpellSearchResponseItem, type TalentIndexResponse, type TalentResponse, type TalentTreeIndexResponse, type TalentTreeNodesResponse, type TalentTreeResponse, type TechTalentIndexResponse, type TechTalentMediaResponse, type TechTalentResponse, type TechTalentTreeIndexResponse, type TechTalentTreeResponse, type TitleIndexResponse, type TitleResponse, type ToyIndexResponse, type ToyResponse, type WithoutUnderscore, type WowTokenResponse, achievement, achievementCategory, achievementCategoryIndex, achievementIndex, achievementMedia, auctions, azeriteEssence, azeriteEssenceIndex, azeriteEssenceMedia, azeriteEssenceSearch, commodities, conduit, conduitIndex, connectedRealm, connectedRealmIndex, connectedRealmSearch, covenant, covenantIndex, covenantMedia, creature, creatureDisplayMedia, creatureFamily, creatureFamilyIndex, creatureFamilyMedia, creatureSearch, creatureType, creatureTypeIndex, wow as default, guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem, heirloom, heirloomIndex, item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSet, itemSetIndex, itemSubClass, journalEncounter, journalEncounterIndex, journalEncounterSearch, journalExpansion, journalExpansionIndex, journalInstance, journalInstanceIndex, journalInstanceMedia, mediaSearch, modifiedCraftingCategory, modifiedCraftingCategoryIndex, modifiedCraftingIndex, modifiedCraftingReagentSlotType, modifiedCraftingReagentSlotTypeIndex, mount, mountIndex, mountSearch, mythicKeystoneAffix, mythicKeystoneAffixIndex, mythicKeystoneAffixMedia, mythicKeystoneDungeon, mythicKeystoneDungeonIndex, mythicKeystoneIndex, mythicKeystoneLeaderboard, mythicKeystoneLeaderboardIndex, mythicKeystonePeriod, mythicKeystonePeriodIndex, mythicKeystoneSeason, mythicKeystoneSeasonIndex, mythicRaidLeaderboard, pet, petAbility, petAbilityIndex, petAbilityMedia, petIndex, petMedia, playableClass, playableClassIndex, playableClassMedia, playableRace, playableRaceIndex, playableSpecialization, playableSpecializationIndex, playableSpecializationMedia, powerType, powerTypeIndex, profession, professionIndex, professionMedia, professionSkillTier, pvpLeaderboard, pvpLeaderboardIndex, pvpRewardsIndex, pvpSeason, pvpSeasonIndex, pvpTalent, pvpTalentIndex, pvpTalentSlots, pvpTier, pvpTierIndex, pvpTierMedia, quest, questArea, questAreaIndex, questCategory, questCategoryIndex, questIndex, questType, questTypeIndex, realm, realmIndex, realmSearch, recipe, recipeMedia, region, regionIndex, reputationFaction, reputationFactionIndex, reputationTiers, reputationTiersIndex, soulbind, soulbindIndex, spell, spellMedia, spellSearch, talent, talentIndex, talentTree, talentTreeIndex, talentTreeNodes, techTalent, techTalentIndex, techTalentMedia, techTalentTree, techTalentTreeIndex, title, titleIndex, toy, toyIndex, wow, wowToken };
4600
+ export { type AccountCollectionsIndexResponse, type AccountHeirloomsCollectionSummaryResponse, type AccountMountsCollectionSummaryResponse, type AccountPetsCollectionSummaryResponse, type AccountProfileSummaryResponse, type AccountToysCollectionSummaryResponse, type AccountTransmogsCollectionSummaryResponse, type AchievementCategoryIndexResponse, type AchievementCategoryResponse, type AchievementIndexResponse, type AchievementMediaResponse, type AchievementResponse, type AuctionHouseCommoditiesResponse, type AuctionHouseResponse, type AzeriteEssenceIndexResponse, type AzeriteEssenceMediaResponse, type AzeriteEssenceResponse, type AzeriteEssenceSearchParameters, type AzeriteEssenceSearchResponseItem, type CharacterAchievementStatisticsResponse, type CharacterAchievementsSummaryResponse, type CharacterAppearanceResponse, type CharacterCollectionsIndexResponse, type CharacterCompletedQuestsResponse, type CharacterDungeonsResponse, type CharacterEncountersSummaryResponse, type CharacterEquipmentSummaryResponse, type CharacterHeirloomsCollectionSummaryResponse, type CharacterHunterPetsSummaryResponse, type CharacterMediaSummaryResponse, type CharacterMountsCollectionSummaryResponse, type CharacterMythicKeystoneProfileIndexResponse, type CharacterMythicKeystoneSeasonDetailsResponse, type CharacterPetsCollectionSummaryResponse, type CharacterProfessionsSummaryResponse, type CharacterProfileStatusResponse, type CharacterProfileSummaryResponse, type CharacterPvpSummaryResponse, type CharacterQuestsResponse, type CharacterRaidsResponse, type CharacterReputationsSummaryResponse, type CharacterSoulbindsResponse, type CharacterSpecializationsSummaryResponse, type CharacterStatisticsSummaryResponse, type CharacterTitlesSummaryResponse, type CharacterToysCollectionSummaryResponse, type CharacterTransmogCollectionSummaryResponse, type ConduitIndexResponse, type ConduitResponse, type ConnectedRealmIndexResponse, type ConnectedRealmResponse, type ConnectedRealmSearchParameters, type ConnectedRealmSearchResponseItem, type CovenantIndexResponse, type CovenantMediaResponse, type CovenantResponse, type CreatureDisplayMediaResponse, type CreatureFamilyIndexResponse, type CreatureFamilyMediaResponse, type CreatureFamilyResponse, type CreatureResponse, type CreatureSearchParameters, type CreatureSearchResponseItem, type CreatureTypeIndexResponse, type CreatureTypeResponse, type GuildAchievementsResponse, type GuildActivityResponse, type GuildCrestBorderEmblemResponse, type GuildCrestComponentsIndexResponse, type GuildResponse, type GuildRosterResponse, type HeirloomIndexResponse, type HeirloomResponse, type ItemClassIndexResponse, type ItemClassResponse, type ItemMediaResponse, type ItemResponse, type ItemSearchParameters, type ItemSearchResponseItem, type ItemSetIndexResponse, type ItemSetResponse, type ItemSubClassResponse, type JournalEncounterIndexResponse, type JournalEncounterResponse, type JournalEncounterSearchParameters, type JournalEncounterSearchResponseItem, type JournalExpansionIndexResponse, type JournalExpansionResponse, type JournalInstanceIndexResponse, type JournalInstanceMediaResponse, type JournalInstanceResponse, type MediaSearchParameters, type MediaSearchResponseItem, type ModifiedCraftingCategoryIndexResponse, type ModifiedCraftingCategoryResponse, type ModifiedCraftingIndexResponse, type ModifiedCraftingReagentSlotTypeIndexResponse, type ModifiedCraftingReagentSlotTypeResponse, type MountIndexResponse, type MountResponse, type MountSearchParameters, type MountSearchResponseItem, type MythicKeystoneAffixIndexResponse, type MythicKeystoneAffixMediaResponse, type MythicKeystoneAffixResponse, type MythicKeystoneDungeonIndexResponse, type MythicKeystoneDungeonResponse, type MythicKeystoneIndexResponse, type MythicKeystoneLeaderboardIndexResponse, type MythicKeystoneLeaderboardResponse, type MythicKeystonePeriodIndexResponse, type MythicKeystonePeriodResponse, type MythicKeystoneSeasonIndexResponse, type MythicKeystoneSeasonResponse, type MythicRaidLeaderboardResponse, type PetAbilityIndexResponse, type PetAbilityMediaResponse, type PetAbilityResponse, type PetIndexResponse, type PetMediaResponse, type PetResponse, type PlayableClassIndexResponse, type PlayableClassMediaResponse, type PlayableClassResponse, type PlayableRaceIndexResponse, type PlayableRaceResponse, type PlayableSpecializationIndexResponse, type PlayableSpecializationMediaResponse, type PlayableSpecializationResponse, type PowerTypeIndexResponse, type PowerTypeResponse, type ProfessionIndexResponse, type ProfessionMediaResponse, type ProfessionResponse, type ProfessionSkillTierResponse, type ProtectedCharacterProfileSummaryResponse, type PvpLeaderboardIndexResponse, type PvpLeaderboardResponse, type PvpRewardsIndexResponse, type PvpSeasonIndexResponse, type PvpSeasonResponse, type PvpTalentIndexResponse, type PvpTalentResponse, type PvpTalentSlotsResponse, type PvpTierIndexResponse, type PvpTierMediaResponse, type PvpTierResponse, type QuestAreaIndexResponse, type QuestAreaResponse, type QuestCategoryIndexResponse, type QuestCategoryResponse, type QuestIndexResponse, type QuestResponse, type QuestTypeIndexResponse, type QuestTypeResponse, type RealmCategory, type RealmIndexResponse, type RealmResponse, type RealmSearchParameters, type RealmSearchResponseItem, type RealmTimezone, type RealmType, type RealmTypeCapitalized, type RecipeMediaResponse, type RecipeResponse, type RegionIndexResponse, type RegionResponse, type ReputationFactionIndexResponse, type ReputationFactionResponse, type ReputationTiersIndexResponse, type ReputationTiersResponse, type SoulbindIndexResponse, type SoulbindResponse, type SpellMediaResponse, type SpellResponse, type SpellSearchParameters, type SpellSearchResponseItem, type TalentIndexResponse, type TalentResponse, type TalentTreeIndexResponse, type TalentTreeNodesResponse, type TalentTreeResponse, type TechTalentIndexResponse, type TechTalentMediaResponse, type TechTalentResponse, type TechTalentTreeIndexResponse, type TechTalentTreeResponse, type TitleIndexResponse, type TitleResponse, type ToyIndexResponse, type ToyResponse, type WithoutUnderscore, type WowTokenResponse, accountCollectionsIndex, accountHeirloomsCollectionSummary, accountMountsCollectionSummary, accountPetsCollectionSummary, accountProfileSummary, accountToysCollectionSummary, accountTransmogsCollectionSummary, achievement, achievementCategory, achievementCategoryIndex, achievementIndex, achievementMedia, auctions, azeriteEssence, azeriteEssenceIndex, azeriteEssenceMedia, azeriteEssenceSearch, characterAchievementStatistics, characterAchievementsSummary, characterAppearanceSummary, characterCollectionsIndex, characterCompletedQuests, characterDungeons, characterEncountersSummary, characterEquipmentSummary, characterHeirloomsCollectionSummary, characterHunterPetsSummary, characterMediaSummary, characterMountsCollectionSummary, characterMythicKeystoneProfileIndex, characterMythicKeystoneSeasonDetails, characterPetsCollectionSummary, characterProfessionsSummary, characterProfileStatus, characterProfileSummary, characterPvpSummary, characterQuests, characterRaids, characterReputationsSummary, characterSoulbinds, characterSpecializationsSummary, characterStatisticsSummary, characterTitlesSummary, characterToysCollectionSummary, characterTransmogCollectionSummary, commodities, conduit, conduitIndex, connectedRealm, connectedRealmIndex, connectedRealmSearch, covenant, covenantIndex, covenantMedia, creature, creatureDisplayMedia, creatureFamily, creatureFamilyIndex, creatureFamilyMedia, creatureSearch, creatureType, creatureTypeIndex, wow as default, guild, guildAchievements, guildActivity, guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem, guildRoster, heirloom, heirloomIndex, item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSet, itemSetIndex, itemSubClass, journalEncounter, journalEncounterIndex, journalEncounterSearch, journalExpansion, journalExpansionIndex, journalInstance, journalInstanceIndex, journalInstanceMedia, mediaSearch, modifiedCraftingCategory, modifiedCraftingCategoryIndex, modifiedCraftingIndex, modifiedCraftingReagentSlotType, modifiedCraftingReagentSlotTypeIndex, mount, mountIndex, mountSearch, mythicKeystoneAffix, mythicKeystoneAffixIndex, mythicKeystoneAffixMedia, mythicKeystoneDungeon, mythicKeystoneDungeonIndex, mythicKeystoneIndex, mythicKeystoneLeaderboard, mythicKeystoneLeaderboardIndex, mythicKeystonePeriod, mythicKeystonePeriodIndex, mythicKeystoneSeason, mythicKeystoneSeasonIndex, mythicRaidLeaderboard, pet, petAbility, petAbilityIndex, petAbilityMedia, petIndex, petMedia, playableClass, playableClassIndex, playableClassMedia, playableRace, playableRaceIndex, playableSpecialization, playableSpecializationIndex, playableSpecializationMedia, powerType, powerTypeIndex, profession, professionIndex, professionMedia, professionSkillTier, protectedCharacterProfileSummary, pvpLeaderboard, pvpLeaderboardIndex, pvpRewardsIndex, pvpSeason, pvpSeasonIndex, pvpTalent, pvpTalentIndex, pvpTalentSlots, pvpTier, pvpTierIndex, pvpTierMedia, quest, questArea, questAreaIndex, questCategory, questCategoryIndex, questIndex, questType, questTypeIndex, realm, realmIndex, realmSearch, recipe, recipeMedia, region, regionIndex, reputationFaction, reputationFactionIndex, reputationTiers, reputationTiersIndex, soulbind, soulbindIndex, spell, spellMedia, spellSearch, talent, talentIndex, talentTree, talentTreeIndex, talentTreeNodes, techTalent, techTalentIndex, techTalentMedia, techTalentTree, techTalentTreeIndex, title, titleIndex, toy, toyIndex, wow, wowToken };