@blizzard-api/classic-wow 1.1.1 → 1.1.2

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/README.md CHANGED
@@ -40,9 +40,9 @@ If you don't want to use the exported classicWow object, you can also access the
40
40
  ```ts
41
41
  import { powerType } from "@blizzard-api/wow"
42
42
 
43
- const powerType = powerType("static-classic", 123);
43
+ const powerTypeEndpoint = powerType("static-classic", 123);
44
44
  ^ { path: string, namespace: string }
45
- type PowerTypeResponse = ExtractResourceType<typeof powerType>;
45
+ type PowerTypeResponse = ExtractResourceType<typeof powerTypeEndpoint>;
46
46
  ```
47
47
 
48
48
  ## Differences to @blizzard-api/wow
package/dist/index.cjs CHANGED
@@ -1,71 +1,4 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/index.ts
21
- var src_exports = {};
22
- __export(src_exports, {
23
- auctionHouseIndex: () => auctionHouseIndex,
24
- auctions: () => auctions,
25
- classicWow: () => classicWow,
26
- connectedRealm: () => connectedRealm,
27
- connectedRealmIndex: () => connectedRealmIndex,
28
- connectedRealmSearch: () => connectedRealmSearch,
29
- creature: () => creature,
30
- creatureDisplayMedia: () => creatureDisplayMedia,
31
- creatureFamily: () => creatureFamily,
32
- creatureFamilyIndex: () => creatureFamilyIndex,
33
- creatureFamilyMedia: () => creatureFamilyMedia,
34
- creatureSearch: () => creatureSearch,
35
- creatureType: () => creatureType,
36
- creatureTypeIndex: () => creatureTypeIndex,
37
- guildCrestBorder: () => guildCrestBorder,
38
- guildCrestComponentsIndex: () => guildCrestComponentsIndex,
39
- guildCrestEmblem: () => guildCrestEmblem,
40
- item: () => item,
41
- itemClass: () => itemClass,
42
- itemClassIndex: () => itemClassIndex,
43
- itemMedia: () => itemMedia,
44
- itemSearch: () => itemSearch,
45
- itemSubClass: () => itemSubClass,
46
- mediaSearch: () => mediaSearch,
47
- playableClass: () => playableClass,
48
- playableClassIndex: () => playableClassIndex,
49
- playableClassMedia: () => playableClassMedia,
50
- playableRace: () => playableRace,
51
- playableRaceIndex: () => playableRaceIndex,
52
- powerType: () => powerType,
53
- powerTypeIndex: () => powerTypeIndex,
54
- pvpLeaderboard: () => pvpLeaderboard,
55
- pvpLeaderboardIndex: () => pvpLeaderboardIndex,
56
- pvpRegionIndex: () => pvpRegionIndex,
57
- pvpRegionalSeason: () => pvpRegionalSeason,
58
- pvpRegionalSeasonIndex: () => pvpRegionalSeasonIndex,
59
- pvpRewardsIndex: () => pvpRewardsIndex,
60
- pvpSeason: () => pvpSeason,
61
- pvpSeasonIndex: () => pvpSeasonIndex,
62
- realm: () => realm,
63
- realmIndex: () => realmIndex,
64
- realmSearch: () => realmSearch,
65
- region: () => region,
66
- regionIndex: () => regionIndex
67
- });
68
- module.exports = __toCommonJS(src_exports);
1
+ 'use strict';
69
2
 
70
3
  // ../wow/src/base.ts
71
4
  var base = "/data/wow";
@@ -75,28 +8,28 @@ var searchBase = `${base}/search`;
75
8
  // src/auction-house/auction-house.ts
76
9
  function auctionHouseIndex(namespace, connectedRealmId) {
77
10
  return {
78
- path: `${base}/connected-realm/${connectedRealmId}/auctions/index`,
79
- namespace
11
+ namespace,
12
+ path: `${base}/connected-realm/${connectedRealmId}/auctions/index`
80
13
  };
81
14
  }
82
15
  function auctions(namespace, connectedRealmId, auctionHouseId) {
83
16
  return {
84
- path: `${base}/connected-realm/${connectedRealmId}/auctions/${auctionHouseId}`,
85
- namespace
17
+ namespace,
18
+ path: `${base}/connected-realm/${connectedRealmId}/auctions/${auctionHouseId}`
86
19
  };
87
20
  }
88
21
 
89
22
  // src/connected-realm/connected-realm.ts
90
23
  function connectedRealmIndex(namespace) {
91
24
  return {
92
- path: `${base}/connected-realm/index`,
93
- namespace
25
+ namespace,
26
+ path: `${base}/connected-realm/index`
94
27
  };
95
28
  }
96
29
  function connectedRealm(namespace, connectedRealmId) {
97
30
  return {
98
- path: `${base}/connected-realm/${connectedRealmId}`,
99
- namespace
31
+ namespace,
32
+ path: `${base}/connected-realm/${connectedRealmId}`
100
33
  };
101
34
  }
102
35
  function connectedRealmSearch(namespace, options) {
@@ -105,8 +38,8 @@ function connectedRealmSearch(namespace, options) {
105
38
  parameters: {
106
39
  _page: options._page,
107
40
  orderby: Array.isArray(options.orderby) ? options.orderby.join(",") : options.orderby,
108
- "status.type": options["status.type"],
109
- "realms.timezone": options["realms.timezone"]
41
+ "realms.timezone": options["realms.timezone"],
42
+ "status.type": options["status.type"]
110
43
  },
111
44
  path: `${base}/search/connected-realm`
112
45
  };
@@ -115,44 +48,44 @@ function connectedRealmSearch(namespace, options) {
115
48
  // src/creature/creature.ts
116
49
  function creature(namespace, creatureId) {
117
50
  return {
118
- path: `${base}/creature/${creatureId}`,
119
- namespace
51
+ namespace,
52
+ path: `${base}/creature/${creatureId}`
120
53
  };
121
54
  }
122
55
  function creatureDisplayMedia(namespace, creatureDisplayId) {
123
56
  return {
124
- path: `${mediaBase}/creature-display/${creatureDisplayId}`,
125
- namespace
57
+ namespace,
58
+ path: `${mediaBase}/creature-display/${creatureDisplayId}`
126
59
  };
127
60
  }
128
61
  function creatureFamily(namespace, creatureFamilyId) {
129
62
  return {
130
- path: `${base}/creature-family/${creatureFamilyId}`,
131
- namespace
63
+ namespace,
64
+ path: `${base}/creature-family/${creatureFamilyId}`
132
65
  };
133
66
  }
134
67
  function creatureFamilyIndex(namespace) {
135
68
  return {
136
- path: `${base}/creature-family/index`,
137
- namespace
69
+ namespace,
70
+ path: `${base}/creature-family/index`
138
71
  };
139
72
  }
140
73
  function creatureFamilyMedia(namespace, creatureFamilyId) {
141
74
  return {
142
- path: `${mediaBase}/creature-family/${creatureFamilyId}`,
143
- namespace
75
+ namespace,
76
+ path: `${mediaBase}/creature-family/${creatureFamilyId}`
144
77
  };
145
78
  }
146
79
  function creatureType(namespace, creatureTypeId) {
147
80
  return {
148
- path: `${base}/creature-type/${creatureTypeId}`,
149
- namespace
81
+ namespace,
82
+ path: `${base}/creature-type/${creatureTypeId}`
150
83
  };
151
84
  }
152
85
  function creatureTypeIndex(namespace) {
153
86
  return {
154
- path: `${base}/creature-type/index`,
155
- namespace
87
+ namespace,
88
+ path: `${base}/creature-type/index`
156
89
  };
157
90
  }
158
91
  function creatureSearch(namespace, options) {
@@ -160,8 +93,8 @@ function creatureSearch(namespace, options) {
160
93
  namespace,
161
94
  parameters: {
162
95
  _page: options._page,
163
- orderby: Array.isArray(options.orderby) ? options.orderby.join(",") : options.orderby,
164
- [`name.${options.locale}`]: options.name
96
+ [`name.${options.locale}`]: options.name,
97
+ orderby: Array.isArray(options.orderby) ? options.orderby.join(",") : options.orderby
165
98
  },
166
99
  path: `${searchBase}/creature`
167
100
  };
@@ -170,28 +103,28 @@ function creatureSearch(namespace, options) {
170
103
  // src/guild-crest/guild-crest.ts
171
104
  function guildCrestComponentsIndex(namespace) {
172
105
  return {
173
- path: `${base}/guild-crest/index`,
174
- namespace
106
+ namespace,
107
+ path: `${base}/guild-crest/index`
175
108
  };
176
109
  }
177
110
  function guildCrestBorder(namespace, borderId) {
178
111
  return {
179
- path: `${mediaBase}/guild-crest/border/${borderId}`,
180
- namespace
112
+ namespace,
113
+ path: `${mediaBase}/guild-crest/border/${borderId}`
181
114
  };
182
115
  }
183
116
  function guildCrestEmblem(namespace, emblemId) {
184
117
  return {
185
- path: `${mediaBase}/guild-crest/emblem/${emblemId}`,
186
- namespace
118
+ namespace,
119
+ path: `${mediaBase}/guild-crest/emblem/${emblemId}`
187
120
  };
188
121
  }
189
122
 
190
123
  // src/item/item.ts
191
124
  function itemClassIndex(namespace) {
192
125
  return {
193
- path: `${base}/item-class/index`,
194
- namespace
126
+ namespace,
127
+ path: `${base}/item-class/index`
195
128
  };
196
129
  }
197
130
  function itemClass(namespace, itemClassId) {
@@ -223,8 +156,8 @@ function itemSearch(namespace, options) {
223
156
  namespace,
224
157
  parameters: {
225
158
  _page: options._page,
226
- orderby: Array.isArray(options.orderby) ? options.orderby.join(",") : options.orderby,
227
- [`name.${options.locale}`]: options.name
159
+ [`name.${options.locale}`]: options.name,
160
+ orderby: Array.isArray(options.orderby) ? options.orderby.join(",") : options.orderby
228
161
  },
229
162
  path: `${searchBase}/item`
230
163
  };
@@ -344,14 +277,14 @@ function pvpRewardsIndex(namespace, pvpRegionId, pvpSeasonId) {
344
277
  // src/realm/realm.ts
345
278
  function realm(namespace, realmSlug) {
346
279
  return {
347
- path: `${base}/realm/${realmSlug}`,
348
- namespace
280
+ namespace,
281
+ path: `${base}/realm/${realmSlug}`
349
282
  };
350
283
  }
351
284
  function realmIndex(namespace) {
352
285
  return {
353
- path: `${base}/realm/index`,
354
- namespace
286
+ namespace,
287
+ path: `${base}/realm/index`
355
288
  };
356
289
  }
357
290
  function realmSearch(namespace, options) {
@@ -369,14 +302,14 @@ function realmSearch(namespace, options) {
369
302
  // src/region/region.ts
370
303
  function region(namespace, regionId) {
371
304
  return {
372
- path: `${base}/region/${regionId}`,
373
- namespace
305
+ namespace,
306
+ path: `${base}/region/${regionId}`
374
307
  };
375
308
  }
376
309
  function regionIndex(namespace) {
377
310
  return {
378
- path: `${base}/region/index`,
379
- namespace
311
+ namespace,
312
+ path: `${base}/region/index`
380
313
  };
381
314
  }
382
315
 
@@ -395,20 +328,20 @@ var classicWow = {
395
328
  creatureFamily,
396
329
  creatureFamilyIndex,
397
330
  creatureFamilyMedia,
331
+ creatureSearch,
398
332
  creatureType,
399
333
  creatureTypeIndex,
400
- creatureSearch,
401
334
  //Guild Crest
402
- guildCrestComponentsIndex,
403
335
  guildCrestBorder,
336
+ guildCrestComponentsIndex,
404
337
  guildCrestEmblem,
405
338
  //Item
406
- itemClassIndex,
407
- itemClass,
408
- itemSubClass,
409
339
  item,
340
+ itemClass,
341
+ itemClassIndex,
410
342
  itemMedia,
411
343
  itemSearch,
344
+ itemSubClass,
412
345
  //Media Search
413
346
  mediaSearch,
414
347
  //Playable Class
@@ -422,67 +355,66 @@ var classicWow = {
422
355
  powerType,
423
356
  powerTypeIndex,
424
357
  //Pvp Season
425
- pvpSeasonIndex,
426
- pvpSeason,
427
- pvpRegionIndex,
428
- pvpRegionalSeasonIndex,
429
- pvpRegionalSeason,
430
- pvpLeaderboardIndex,
431
- pvpLeaderboard,
432
- pvpRewardsIndex,
433
- //Realm
434
- realm,
435
- realmIndex,
436
- realmSearch,
437
- //Region
438
- region,
439
- regionIndex
440
- };
441
- // Annotate the CommonJS export names for ESM import in node:
442
- 0 && (module.exports = {
443
- auctionHouseIndex,
444
- auctions,
445
- classicWow,
446
- connectedRealm,
447
- connectedRealmIndex,
448
- connectedRealmSearch,
449
- creature,
450
- creatureDisplayMedia,
451
- creatureFamily,
452
- creatureFamilyIndex,
453
- creatureFamilyMedia,
454
- creatureSearch,
455
- creatureType,
456
- creatureTypeIndex,
457
- guildCrestBorder,
458
- guildCrestComponentsIndex,
459
- guildCrestEmblem,
460
- item,
461
- itemClass,
462
- itemClassIndex,
463
- itemMedia,
464
- itemSearch,
465
- itemSubClass,
466
- mediaSearch,
467
- playableClass,
468
- playableClassIndex,
469
- playableClassMedia,
470
- playableRace,
471
- playableRaceIndex,
472
- powerType,
473
- powerTypeIndex,
474
358
  pvpLeaderboard,
475
359
  pvpLeaderboardIndex,
476
- pvpRegionIndex,
477
360
  pvpRegionalSeason,
478
361
  pvpRegionalSeasonIndex,
362
+ pvpRegionIndex,
479
363
  pvpRewardsIndex,
480
364
  pvpSeason,
481
365
  pvpSeasonIndex,
366
+ //Realm
482
367
  realm,
483
368
  realmIndex,
484
369
  realmSearch,
370
+ //Region
485
371
  region,
486
372
  regionIndex
487
- });
373
+ };
374
+
375
+ exports.auctionHouseIndex = auctionHouseIndex;
376
+ exports.auctions = auctions;
377
+ exports.classicWow = classicWow;
378
+ exports.connectedRealm = connectedRealm;
379
+ exports.connectedRealmIndex = connectedRealmIndex;
380
+ exports.connectedRealmSearch = connectedRealmSearch;
381
+ exports.creature = creature;
382
+ exports.creatureDisplayMedia = creatureDisplayMedia;
383
+ exports.creatureFamily = creatureFamily;
384
+ exports.creatureFamilyIndex = creatureFamilyIndex;
385
+ exports.creatureFamilyMedia = creatureFamilyMedia;
386
+ exports.creatureSearch = creatureSearch;
387
+ exports.creatureType = creatureType;
388
+ exports.creatureTypeIndex = creatureTypeIndex;
389
+ exports.guildCrestBorder = guildCrestBorder;
390
+ exports.guildCrestComponentsIndex = guildCrestComponentsIndex;
391
+ exports.guildCrestEmblem = guildCrestEmblem;
392
+ exports.item = item;
393
+ exports.itemClass = itemClass;
394
+ exports.itemClassIndex = itemClassIndex;
395
+ exports.itemMedia = itemMedia;
396
+ exports.itemSearch = itemSearch;
397
+ exports.itemSubClass = itemSubClass;
398
+ exports.mediaSearch = mediaSearch;
399
+ exports.playableClass = playableClass;
400
+ exports.playableClassIndex = playableClassIndex;
401
+ exports.playableClassMedia = playableClassMedia;
402
+ exports.playableRace = playableRace;
403
+ exports.playableRaceIndex = playableRaceIndex;
404
+ exports.powerType = powerType;
405
+ exports.powerTypeIndex = powerTypeIndex;
406
+ exports.pvpLeaderboard = pvpLeaderboard;
407
+ exports.pvpLeaderboardIndex = pvpLeaderboardIndex;
408
+ exports.pvpRegionIndex = pvpRegionIndex;
409
+ exports.pvpRegionalSeason = pvpRegionalSeason;
410
+ exports.pvpRegionalSeasonIndex = pvpRegionalSeasonIndex;
411
+ exports.pvpRewardsIndex = pvpRewardsIndex;
412
+ exports.pvpSeason = pvpSeason;
413
+ exports.pvpSeasonIndex = pvpSeasonIndex;
414
+ exports.realm = realm;
415
+ exports.realmIndex = realmIndex;
416
+ exports.realmSearch = realmSearch;
417
+ exports.region = region;
418
+ exports.regionIndex = regionIndex;
419
+ //# sourceMappingURL=out.js.map
488
420
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../../wow/src/base.ts","../src/auction-house/auction-house.ts","../src/connected-realm/connected-realm.ts","../src/creature/creature.ts","../src/guild-crest/guild-crest.ts","../src/item/item.ts","../src/media-search/media-search.ts","../src/playable-class/playable-class.ts","../src/playable-race/playable-race.ts","../src/power-type/power-type.ts","../src/pvp-season/pvp-season.ts","../src/realm/realm.ts","../src/region/region.ts"],"sourcesContent":["import { auctionHouseIndex, auctions } from './auction-house/auction-house';\r\nimport { connectedRealm, connectedRealmIndex, connectedRealmSearch } from './connected-realm/connected-realm';\r\nimport {\r\n creature,\r\n creatureDisplayMedia,\r\n creatureFamily,\r\n creatureFamilyIndex,\r\n creatureFamilyMedia,\r\n creatureSearch,\r\n creatureType,\r\n creatureTypeIndex,\r\n} from './creature/creature';\r\nimport { guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem } from './guild-crest/guild-crest';\r\nimport { item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSubClass } from './item/item';\r\nimport { mediaSearch } from './media-search/media-search';\r\nimport { playableClass, playableClassIndex, playableClassMedia } from './playable-class/playable-class';\r\nimport { playableRace, playableRaceIndex } from './playable-race/playable-race';\r\nimport { powerType, powerTypeIndex } from './power-type/power-type';\r\nimport {\r\n pvpLeaderboard,\r\n pvpLeaderboardIndex,\r\n pvpRegionIndex,\r\n pvpRegionalSeason,\r\n pvpRegionalSeasonIndex,\r\n pvpRewardsIndex,\r\n pvpSeason,\r\n pvpSeasonIndex,\r\n} from './pvp-season/pvp-season';\r\nimport { realm, realmIndex, realmSearch } from './realm/realm';\r\nimport { region, regionIndex } from './region/region';\r\n\r\nexport const classicWow = {\r\n //Auction House\r\n auctionHouseIndex,\r\n auctions,\r\n //Connected Realm\r\n connectedRealm,\r\n connectedRealmIndex,\r\n connectedRealmSearch,\r\n //Creature\r\n creature,\r\n creatureDisplayMedia,\r\n creatureFamily,\r\n creatureFamilyIndex,\r\n creatureFamilyMedia,\r\n creatureType,\r\n creatureTypeIndex,\r\n creatureSearch,\r\n //Guild Crest\r\n guildCrestComponentsIndex,\r\n guildCrestBorder,\r\n guildCrestEmblem,\r\n //Item\r\n itemClassIndex,\r\n itemClass,\r\n itemSubClass,\r\n item,\r\n itemMedia,\r\n itemSearch,\r\n //Media Search\r\n mediaSearch,\r\n //Playable Class\r\n playableClass,\r\n playableClassIndex,\r\n playableClassMedia,\r\n //Playable Race\r\n playableRace,\r\n playableRaceIndex,\r\n //Power Type\r\n powerType,\r\n powerTypeIndex,\r\n //Pvp Season\r\n pvpSeasonIndex,\r\n pvpSeason,\r\n pvpRegionIndex,\r\n pvpRegionalSeasonIndex,\r\n pvpRegionalSeason,\r\n pvpLeaderboardIndex,\r\n pvpLeaderboard,\r\n pvpRewardsIndex,\r\n //Realm\r\n realm,\r\n realmIndex,\r\n realmSearch,\r\n //Region\r\n region,\r\n regionIndex,\r\n};\r\n\r\n//Auction House\r\nexport * from './auction-house/auction-house';\r\nexport type * from './auction-house/types';\r\n//Connected Realm\r\nexport * from './connected-realm/connected-realm';\r\nexport type * from './connected-realm/types';\r\n//Creature\r\nexport * from './creature/creature';\r\nexport type * from './creature/types';\r\n//Guild Crest\r\nexport * from './guild-crest/guild-crest';\r\nexport type * from './guild-crest/types';\r\n//Item\r\nexport * from './item/item';\r\nexport type * from './item/types';\r\n//Media Search\r\nexport * from './media-search/media-search';\r\nexport type * from './media-search/types';\r\n//Playable Class\r\nexport * from './playable-class/playable-class';\r\nexport type * from './playable-class/types';\r\n//Playable Race\r\nexport * from './playable-race/playable-race';\r\nexport type * from './playable-race/types';\r\n//Power Type\r\nexport * from './power-type/power-type';\r\nexport type * from './power-type/types';\r\n//Pvp Season\r\nexport * from './pvp-season/pvp-season';\r\nexport type * from './pvp-season/types';\r\n//Realm\r\nexport * from './realm/realm';\r\nexport type * from './realm/types';\r\n//Region\r\nexport * from './region/region';\r\nexport type * from './region/types';\r\n","/**\r\n * @file base.ts\r\n * @module base\r\n * @description Contains base constants and interfaces for the Blizzard API.\r\n */\r\n\r\n/**\r\n * The base request path for the Blizzard API for world of warcraft.\r\n */\r\nexport const base = '/data/wow';\r\n\r\n/**\r\n * The base request path for media in the Blizzard API for world of warcraft.\r\n */\r\nexport const mediaBase = `${base}/media` as const;\r\n\r\n/**\r\n * The base request path for search in the Blizzard API for world of warcraft.\r\n */\r\nexport const searchBase = `${base}/search` as const;\r\n\r\n/**\r\n * Base interface for Blizzard API responses.\r\n */\r\nexport interface ResponseBase {\r\n _links: {\r\n self: {\r\n href: string;\r\n };\r\n };\r\n}\r\n\r\n/**\r\n * Base record interface containing key.href property that often appear in Blizzard API responses.\r\n */\r\nexport interface KeyBase {\r\n key: {\r\n href: string;\r\n };\r\n}\r\n\r\n/**\r\n * Base record interface containing name and id properties that often appear together in Blizzard API responses.\r\n */\r\nexport interface NameId {\r\n name: string;\r\n id: number;\r\n}\r\n\r\n/**\r\n * Base record containing both {@link KeyBase} and {@link NameId} interfaces.\r\n */\r\nexport interface NameIdKey extends KeyBase, NameId {}\r\n\r\n/**\r\n * A record containing the RGBA values of a color.\r\n */\r\nexport interface Color {\r\n r: number;\r\n g: number;\r\n b: number;\r\n a: number;\r\n}\r\n\r\n/**\r\n * The media asset associated with a character or entity in World of Warcraft.\r\n */\r\nexport interface MediaAsset {\r\n key: string;\r\n value: string;\r\n file_data_id: number;\r\n}\r\n\r\n/**\r\n * The playable genders in World of Warcraft.\r\n */\r\nexport interface Gender {\r\n male: string;\r\n female: string;\r\n}\r\n\r\n/**\r\n * The playable factions in World of Warcraft.\r\n */\r\nexport const Factions = {\r\n ALLIANCE: 'ALLIANCE',\r\n HORDE: 'HORDE',\r\n} as const;\r\n\r\n/**\r\n * The faction associated with a character or entity in World of Warcraft.\r\n */\r\nexport interface Faction {\r\n type: keyof typeof Factions;\r\n name: Capitalize<Lowercase<keyof typeof Factions>>;\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { AuctionHouseIndexResponse, AuctionsResponse } from './types';\r\n\r\n/**\r\n * Returns an index of auction houses for a connected realm.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param connectedRealmId The ID of the connected realm.\r\n * @returns The auction house index. See {@link AuctionHouseIndexResponse}.\r\n */\r\nexport function auctionHouseIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n connectedRealmId: number,\r\n): Resource<AuctionHouseIndexResponse> {\r\n return {\r\n path: `${base}/connected-realm/${connectedRealmId}/auctions/index`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns all active auctions for a specific auction house on a connected realm.\r\n *\r\n * Auction house data updates at a set interval. The value was initially set at 1 hour; however, it might change over time without notice.\r\n *\r\n * Depending on the number of active auctions on the specified connected realm, the response from this endpoint may be rather large, sometimes exceeding 10 MB.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param connectedRealmId The ID of the connected realm.\r\n * @param auctionHouseId The ID of the auction house.\r\n * @returns The auction house data. See {@link AuctionsResponse}.\r\n */\r\nexport function auctions(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n connectedRealmId: number,\r\n auctionHouseId: number,\r\n): Resource<AuctionsResponse> {\r\n return {\r\n path: `${base}/connected-realm/${connectedRealmId}/auctions/${auctionHouseId}`,\r\n namespace,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type {\r\n ConnectedRealmIndexResponse,\r\n ConnectedRealmResponse,\r\n ConnectedRealmSearchParameters,\r\n ConnectedRealmSearchResponseItem,\r\n} from './types';\r\n\r\n/**\r\n * Returns an index of connected realms.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The connected realm index. See {@link ConnectedRealmIndexResponse}.\r\n */\r\nexport function connectedRealmIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<ConnectedRealmIndexResponse> {\r\n return {\r\n path: `${base}/connected-realm/index`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns a connected realm by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param connectedRealmId The connected realm ID.\r\n * @returns The connected realm. See {@link ConnectedRealmResponse}.\r\n */\r\nexport function connectedRealm(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n connectedRealmId: number,\r\n): Resource<ConnectedRealmResponse> {\r\n return {\r\n path: `${base}/connected-realm/${connectedRealmId}`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Performs a search of connected realms.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param options The search parameters. See {@link ConnectedRealmSearchParameters}.\r\n * @returns The search results. See {@link SearchResponse} & {@link ConnectedRealmSearchResponseItem}.\r\n */\r\nexport function connectedRealmSearch(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n options: ConnectedRealmSearchParameters,\r\n): Resource<SearchResponse<ConnectedRealmSearchResponseItem>, ConnectedRealmSearchParameters> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n 'status.type': options['status.type'],\r\n 'realms.timezone': options['realms.timezone'],\r\n },\r\n path: `${base}/search/connected-realm`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { base, mediaBase, searchBase } from '../../../wow/src/base';\r\nimport type {\r\n CreatureDisplayMediaResponse,\r\n CreatureFamilyIndexResponse,\r\n CreatureFamilyMediaResponse,\r\n CreatureFamilyResponse,\r\n CreatureResponse,\r\n CreatureSearchParameters,\r\n CreatureSearchResponseItem,\r\n CreatureTypeIndexResponse,\r\n CreatureTypeResponse,\r\n} from './types';\r\n\r\n/**\r\n * Returns a creature by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureId The creature ID.\r\n * @returns The creature. See {@link CreatureResponse}.\r\n */\r\nexport function creature(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureId: number,\r\n): Resource<CreatureResponse> {\r\n return {\r\n path: `${base}/creature/${creatureId}`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns media for a creature display by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureDisplayId The creature display ID.\r\n * @returns The creature display media. See {@link CreatureDisplayMediaResponse}.\r\n */\r\nexport function creatureDisplayMedia(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureDisplayId: number,\r\n): Resource<CreatureDisplayMediaResponse> {\r\n return {\r\n path: `${mediaBase}/creature-display/${creatureDisplayId}`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns a creature family by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureFamilyId The creature family ID.\r\n * @returns The creature family. See {@link CreatureFamilyResponse}.\r\n */\r\nexport function creatureFamily(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureFamilyId: number,\r\n): Resource<CreatureFamilyResponse> {\r\n return {\r\n path: `${base}/creature-family/${creatureFamilyId}`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns an index of creature families.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The creature family index. See {@link CreatureFamilyIndexResponse}.\r\n */\r\nexport function creatureFamilyIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<CreatureFamilyIndexResponse> {\r\n return {\r\n path: `${base}/creature-family/index`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns media for a creature family by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureFamilyId The creature family ID.\r\n * @returns The creature family media. See {@link CreatureFamilyMediaResponse}.\r\n */\r\nexport function creatureFamilyMedia(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureFamilyId: number,\r\n): Resource<CreatureFamilyMediaResponse> {\r\n return {\r\n path: `${mediaBase}/creature-family/${creatureFamilyId}`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns a creature type by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureTypeId The creature type ID.\r\n * @returns The creature type. See {@link CreatureTypeResponse}.\r\n */\r\nexport function creatureType(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureTypeId: number,\r\n): Resource<CreatureTypeResponse> {\r\n return {\r\n path: `${base}/creature-type/${creatureTypeId}`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns an index of creature types.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The creature type index. See {@link CreatureTypeIndexResponse}.\r\n */\r\nexport function creatureTypeIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<CreatureTypeIndexResponse> {\r\n return {\r\n path: `${base}/creature-type/index`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Performs a search of creatures.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param options The creature search parameters. See {@link CreatureSearchParameters}.\r\n * @returns The creature search results. See {@link SearchResponse} & {@link CreatureSearchResponseItem}.\r\n */\r\nexport function creatureSearch(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n options: CreatureSearchParameters,\r\n): Resource<SearchResponse<CreatureSearchResponseItem>, Omit<CreatureSearchParameters, 'name' | 'locale'>> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n [`name.${options.locale}`]: options.name,\r\n },\r\n path: `${searchBase}/creature`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base, mediaBase } from '../../../wow/src/base';\r\nimport type { GuildCrestBorderEmblemResponse, GuildCrestComponentsIndexResponse } from './types';\r\n\r\n/**\r\n * Returns an index of guild crest media.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The guild crest components index. See {@link GuildCrestComponentsIndexResponse}.\r\n */\r\nexport function guildCrestComponentsIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<GuildCrestComponentsIndexResponse> {\r\n return {\r\n path: `${base}/guild-crest/index`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns media for a guild crest border by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param borderId The guild crest border ID.\r\n * @returns The guild crest border. See {@link GuildCrestBorderEmblemResponse}.\r\n */\r\nexport function guildCrestBorder(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n borderId: number,\r\n): Resource<GuildCrestBorderEmblemResponse> {\r\n return {\r\n path: `${mediaBase}/guild-crest/border/${borderId}`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Returns media for a guild crest emblem by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param emblemId The guild crest emblem ID.\r\n * @returns The guild crest emblem. See {@link GuildCrestBorderEmblemResponse}.\r\n */\r\nexport function guildCrestEmblem(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n emblemId: number,\r\n): Resource<GuildCrestBorderEmblemResponse> {\r\n return {\r\n path: `${mediaBase}/guild-crest/emblem/${emblemId}`,\r\n namespace,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { base, mediaBase, searchBase } from '../../../wow/src/base';\r\nimport type {\r\n ItemClassIndexResponse,\r\n ItemClassResponse,\r\n ItemMediaResponse,\r\n ItemResponse,\r\n ItemSearchParameters,\r\n ItemSearchResponseItem,\r\n ItemSubClassResponse,\r\n} from './types';\r\n\r\n/**\r\n * Get an item class index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The item class index. See {@link ItemClassIndexResponse}.\r\n */\r\nexport function itemClassIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<ItemClassIndexResponse> {\r\n return {\r\n path: `${base}/item-class/index`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Get an item class by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param itemClassId The item class ID.\r\n * @returns The item class. See {@link ItemClassResponse}.\r\n */\r\nexport function itemClass(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n itemClassId: number,\r\n): Resource<ItemClassResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/item-class/${itemClassId}`,\r\n };\r\n}\r\n/**\r\n * Get an item subclass by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param itemClassId The item class ID.\r\n * @param itemSubclassId The item subclass ID.\r\n * @returns The item subclass. See {@link ItemSubClassResponse}.\r\n */\r\nexport function itemSubClass(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n itemClassId: number,\r\n itemSubclassId: number,\r\n): Resource<ItemSubClassResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/item-class/${itemClassId}/item-subclass/${itemSubclassId}`,\r\n };\r\n}\r\n/**\r\n * Get an item by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param itemId The item ID.\r\n * @returns The item. See {@link ItemResponse}.\r\n */\r\nexport function item(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n itemId: number,\r\n): Resource<ItemResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/item/${itemId}`,\r\n };\r\n}\r\n/**\r\n * Get item media by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param itemId The item ID.\r\n * @returns The item media. See {@link ItemMediaResponse}.\r\n */\r\nexport function itemMedia(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n itemId: number,\r\n): Resource<ItemMediaResponse> {\r\n return {\r\n namespace,\r\n path: `${mediaBase}/item/${itemId}`,\r\n };\r\n}\r\n/**\r\n * Search for items.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param options The search parameters. See {@link ItemSearchParameters}.\r\n * @returns The search results. See {@link SearchResponse}.\r\n */\r\nexport function itemSearch(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n options: ItemSearchParameters,\r\n): Resource<SearchResponse<ItemSearchResponseItem>, Omit<ItemSearchParameters, 'name' | 'locale'>> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n [`name.${options.locale}`]: options.name,\r\n },\r\n path: `${searchBase}/item`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { searchBase } from '../../../wow/src/base';\r\nimport type { MediaSearchParameters, MediaSearchResponseItem } from './types';\r\n\r\n/**\r\n * Search for media.\r\n * @param options The search parameters. See {@link MediaSearchParameters}.\r\n * @returns The search results. See {@link SearchResponse}.\r\n */\r\nexport function mediaSearch(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n options: MediaSearchParameters,\r\n): Resource<SearchResponse<MediaSearchResponseItem>, MediaSearchParameters> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n tags: options.tags,\r\n },\r\n path: `${searchBase}/media`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base, mediaBase } from '../../../wow/src/base';\r\nimport type { PlayableClassIndexResponse, PlayableClassMediaResponse, PlayableClassResponse } from './types';\r\n\r\n/**\r\n * Get a playable class by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param playableClassId The playable class ID.\r\n * @returns The playable class. See {@link PlayableClassResponse}.\r\n */\r\nexport function playableClass(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n playableClassId: number,\r\n): Resource<PlayableClassResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/playable-class/${playableClassId}`,\r\n };\r\n}\r\n/**\r\n * Get a playable class index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The playable class index. See {@link PlayableClassIndexResponse}.\r\n */\r\nexport function playableClassIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<PlayableClassIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/playable-class/index`,\r\n };\r\n}\r\n/**\r\n * Get playable class media by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param playableClassId The playable class ID.\r\n * @returns The playable class media. See {@link PlayableClassMediaResponse}.\r\n */\r\nexport function playableClassMedia(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n playableClassId: number,\r\n): Resource<PlayableClassMediaResponse> {\r\n return {\r\n namespace,\r\n path: `${mediaBase}/playable-class/${playableClassId}`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { PlayableRaceIndexResponse, PlayableRaceResponse } from './types';\r\n\r\n/**\r\n * Get a playable race by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param playableRaceId The playable race ID.\r\n * @returns The playable race. See {@link PlayableRaceResponse}.\r\n */\r\nexport function playableRace(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n playableRaceId: number,\r\n): Resource<PlayableRaceResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/playable-race/${playableRaceId}`,\r\n };\r\n}\r\n/**\r\n * Get a playable race index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The playable race index. See {@link PlayableRaceIndexResponse}.\r\n */\r\nexport function playableRaceIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<PlayableRaceIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/playable-race/index`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { PowerTypeIndexResponse, PowerTypeResponse } from './types';\r\n\r\n/**\r\n * Get a power type by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param powerTypeId The power type ID.\r\n * @returns The power type. See {@link PowerTypeResponse}.\r\n */\r\nexport function powerType(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n powerTypeId: number,\r\n): Resource<PowerTypeResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/power-type/${powerTypeId}`,\r\n };\r\n}\r\n/**\r\n * Get a power type index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The power type index. See {@link PowerTypeIndexResponse}.\r\n */\r\nexport function powerTypeIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<PowerTypeIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/power-type/index`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { PvpSeasonIndexResponse, PvpSeasonResponse } from './types';\r\n\r\n/**\r\n * Get a PvP season index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The PvP season index. See {@link PvpSeasonIndexResponse}.\r\n */\r\nexport function pvpSeasonIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<PvpSeasonIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-season/index`,\r\n };\r\n}\r\n/**\r\n * Get a PvP season by ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n * @returns The PvP season. See {@link PvpSeasonResponse}.\r\n */\r\nexport function pvpSeason(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpSeasonId: number,\r\n): Resource<PvpSeasonResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-season/${pvpSeasonId}`,\r\n };\r\n}\r\n/**\r\n * Returns an index of PvP Regions.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n */\r\nexport function pvpRegionIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/index`,\r\n };\r\n}\r\n/**\r\n * Returns an index of PvP Seasons in a PvP region.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @returns The PvP season index. See {@link PvpSeasonIndexResponse}.\r\n */\r\nexport function pvpRegionalSeasonIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n): Resource<PvpSeasonIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/index`,\r\n };\r\n}\r\n/**\r\n * Returns a PvP season by region ID and season ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n */\r\nexport function pvpRegionalSeason(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n pvpSeasonId: number,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/${pvpSeasonId}`,\r\n };\r\n}\r\n/**\r\n * Returns an index of PvP leaderboards for a PvP season in a given PvP region.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n */\r\nexport function pvpLeaderboardIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n pvpSeasonId: number,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/${pvpSeasonId}/pvp-leaderboard/index`,\r\n };\r\n}\r\n/**\r\n * Get a PvP leaderboard by PvP season ID and bracket.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n * @param pvpBracket The PvP bracket.\r\n */\r\nexport function pvpLeaderboard(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n pvpSeasonId: number,\r\n pvpBracket: string,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/${pvpSeasonId}/pvp-leaderboard/${pvpBracket}`,\r\n };\r\n}\r\n/**\r\n * Returns an index of PvP rewards for a PvP season in a given PvP region.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n */\r\nexport function pvpRewardsIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n pvpSeasonId: number,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/${pvpSeasonId}/pvp-reward/index`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { base, searchBase } from '../../../wow/src/base';\r\nimport type { RealmIndexResponse, RealmResponse, RealmSearchParameters, RealmSearchResponseItem } from './types';\r\n\r\n/**\r\n * Get a realm by slug.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param realmSlug The realm slug.\r\n * @returns The realm. See {@link RealmResponse}.\r\n */\r\nexport function realm(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n realmSlug: string,\r\n): Resource<RealmResponse> {\r\n return {\r\n path: `${base}/realm/${realmSlug}`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Get a realm index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The realm index. See {@link RealmIndexResponse}.\r\n */\r\nexport function realmIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<RealmIndexResponse> {\r\n return {\r\n path: `${base}/realm/index`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Search for realms.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param options The search parameters. See {@link RealmSearchParameters}.\r\n * @returns The search results. See {@link SearchResponse}.\r\n */\r\nexport function realmSearch(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n options: RealmSearchParameters,\r\n): Resource<SearchResponse<RealmSearchResponseItem>, RealmSearchParameters> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n timezone: options.timezone,\r\n },\r\n path: `${searchBase}/realm`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { RegionIndexResponse, RegionResponse } from './types';\r\n\r\n/**\r\n * Get a region by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param regionId The region ID.\r\n * @returns The region. See {@link RegionResponse}.\r\n */\r\nexport function region(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n regionId: number,\r\n): Resource<RegionResponse> {\r\n return {\r\n path: `${base}/region/${regionId}`,\r\n namespace,\r\n };\r\n}\r\n/**\r\n * Get a region index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The region index. See {@link RegionIndexResponse}.\r\n */\r\nexport function regionIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<RegionIndexResponse> {\r\n return {\r\n path: `${base}/region/index`,\r\n namespace,\r\n };\r\n}\r\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../wow/src/base.ts","../src/auction-house/auction-house.ts","../src/connected-realm/connected-realm.ts","../src/creature/creature.ts","../src/guild-crest/guild-crest.ts","../src/item/item.ts","../src/media-search/media-search.ts","../src/playable-class/playable-class.ts","../src/playable-race/playable-race.ts","../src/power-type/power-type.ts","../src/pvp-season/pvp-season.ts","../src/realm/realm.ts","../src/region/region.ts","../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["/**\r\n * @file base.ts\r\n * @module base\r\n * @description Contains base constants and interfaces for the Blizzard API.\r\n */\r\n\r\n/**\r\n * The base request path for the Blizzard API for world of warcraft.\r\n */\r\nexport const base = '/data/wow';\r\n\r\n/**\r\n * The base request path for media in the Blizzard API for world of warcraft.\r\n */\r\nexport const mediaBase = `${base}/media` as const;\r\n\r\n/**\r\n * The base request path for search in the Blizzard API for world of warcraft.\r\n */\r\nexport const searchBase = `${base}/search` as const;\r\n\r\n/**\r\n * Base interface for Blizzard API responses.\r\n */\r\nexport interface ResponseBase {\r\n _links: {\r\n self: {\r\n href: string;\r\n };\r\n };\r\n}\r\n\r\n/**\r\n * Base record interface containing key.href property that often appear in Blizzard API responses.\r\n */\r\nexport interface KeyBase {\r\n key: {\r\n href: string;\r\n };\r\n}\r\n\r\n/**\r\n * Base record interface containing name and id properties that often appear together in Blizzard API responses.\r\n */\r\nexport interface NameId {\r\n id: number;\r\n name: string;\r\n}\r\n\r\n/**\r\n * Base record containing both {@link KeyBase} and {@link NameId} interfaces.\r\n */\r\nexport interface NameIdKey extends KeyBase, NameId {}\r\n\r\n/**\r\n * A record containing the RGBA values of a color.\r\n */\r\nexport interface Color {\r\n a: number;\r\n b: number;\r\n g: number;\r\n r: number;\r\n}\r\n\r\n/**\r\n * The media asset associated with a character or entity in World of Warcraft.\r\n */\r\nexport interface MediaAsset {\r\n file_data_id: number;\r\n key: string;\r\n value: string;\r\n}\r\n\r\n/**\r\n * The playable genders in World of Warcraft.\r\n */\r\nexport interface Gender {\r\n female: string;\r\n male: string;\r\n}\r\n\r\n/**\r\n * The playable factions in World of Warcraft.\r\n */\r\nexport const Factions = {\r\n ALLIANCE: 'ALLIANCE',\r\n HORDE: 'HORDE',\r\n} as const;\r\n\r\n/**\r\n * The faction associated with a character or entity in World of Warcraft.\r\n */\r\nexport interface Faction {\r\n name: Capitalize<Lowercase<keyof typeof Factions>>;\r\n type: keyof typeof Factions;\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { AuctionHouseIndexResponse, AuctionsResponse } from './types';\r\n\r\n/**\r\n * Returns an index of auction houses for a connected realm.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param connectedRealmId The ID of the connected realm.\r\n * @returns The auction house index. See {@link AuctionHouseIndexResponse}.\r\n */\r\nexport function auctionHouseIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n connectedRealmId: number,\r\n): Resource<AuctionHouseIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/connected-realm/${connectedRealmId}/auctions/index`,\r\n };\r\n}\r\n/**\r\n * Returns all active auctions for a specific auction house on a connected realm.\r\n *\r\n * Auction house data updates at a set interval. The value was initially set at 1 hour; however, it might change over time without notice.\r\n *\r\n * Depending on the number of active auctions on the specified connected realm, the response from this endpoint may be rather large, sometimes exceeding 10 MB.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param connectedRealmId The ID of the connected realm.\r\n * @param auctionHouseId The ID of the auction house.\r\n * @returns The auction house data. See {@link AuctionsResponse}.\r\n */\r\nexport function auctions(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n connectedRealmId: number,\r\n auctionHouseId: number,\r\n): Resource<AuctionsResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/connected-realm/${connectedRealmId}/auctions/${auctionHouseId}`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type {\r\n ConnectedRealmIndexResponse,\r\n ConnectedRealmResponse,\r\n ConnectedRealmSearchParameters,\r\n ConnectedRealmSearchResponseItem,\r\n} from './types';\r\n\r\n/**\r\n * Returns an index of connected realms.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The connected realm index. See {@link ConnectedRealmIndexResponse}.\r\n */\r\nexport function connectedRealmIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<ConnectedRealmIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/connected-realm/index`,\r\n };\r\n}\r\n/**\r\n * Returns a connected realm by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param connectedRealmId The connected realm ID.\r\n * @returns The connected realm. See {@link ConnectedRealmResponse}.\r\n */\r\nexport function connectedRealm(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n connectedRealmId: number,\r\n): Resource<ConnectedRealmResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/connected-realm/${connectedRealmId}`,\r\n };\r\n}\r\n/**\r\n * Performs a search of connected realms.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param options The search parameters. See {@link ConnectedRealmSearchParameters}.\r\n * @returns The search results. See {@link SearchResponse} & {@link ConnectedRealmSearchResponseItem}.\r\n */\r\nexport function connectedRealmSearch(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n options: ConnectedRealmSearchParameters,\r\n): Resource<SearchResponse<ConnectedRealmSearchResponseItem>, ConnectedRealmSearchParameters> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n 'realms.timezone': options['realms.timezone'],\r\n 'status.type': options['status.type'],\r\n },\r\n path: `${base}/search/connected-realm`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { base, mediaBase, searchBase } from '../../../wow/src/base';\r\nimport type {\r\n CreatureDisplayMediaResponse,\r\n CreatureFamilyIndexResponse,\r\n CreatureFamilyMediaResponse,\r\n CreatureFamilyResponse,\r\n CreatureResponse,\r\n CreatureSearchParameters,\r\n CreatureSearchResponseItem,\r\n CreatureTypeIndexResponse,\r\n CreatureTypeResponse,\r\n} from './types';\r\n\r\n/**\r\n * Returns a creature by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureId The creature ID.\r\n * @returns The creature. See {@link CreatureResponse}.\r\n */\r\nexport function creature(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureId: number,\r\n): Resource<CreatureResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/creature/${creatureId}`,\r\n };\r\n}\r\n/**\r\n * Returns media for a creature display by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureDisplayId The creature display ID.\r\n * @returns The creature display media. See {@link CreatureDisplayMediaResponse}.\r\n */\r\nexport function creatureDisplayMedia(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureDisplayId: number,\r\n): Resource<CreatureDisplayMediaResponse> {\r\n return {\r\n namespace,\r\n path: `${mediaBase}/creature-display/${creatureDisplayId}`,\r\n };\r\n}\r\n/**\r\n * Returns a creature family by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureFamilyId The creature family ID.\r\n * @returns The creature family. See {@link CreatureFamilyResponse}.\r\n */\r\nexport function creatureFamily(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureFamilyId: number,\r\n): Resource<CreatureFamilyResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/creature-family/${creatureFamilyId}`,\r\n };\r\n}\r\n/**\r\n * Returns an index of creature families.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The creature family index. See {@link CreatureFamilyIndexResponse}.\r\n */\r\nexport function creatureFamilyIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<CreatureFamilyIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/creature-family/index`,\r\n };\r\n}\r\n/**\r\n * Returns media for a creature family by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureFamilyId The creature family ID.\r\n * @returns The creature family media. See {@link CreatureFamilyMediaResponse}.\r\n */\r\nexport function creatureFamilyMedia(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureFamilyId: number,\r\n): Resource<CreatureFamilyMediaResponse> {\r\n return {\r\n namespace,\r\n path: `${mediaBase}/creature-family/${creatureFamilyId}`,\r\n };\r\n}\r\n/**\r\n * Returns a creature type by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param creatureTypeId The creature type ID.\r\n * @returns The creature type. See {@link CreatureTypeResponse}.\r\n */\r\nexport function creatureType(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n creatureTypeId: number,\r\n): Resource<CreatureTypeResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/creature-type/${creatureTypeId}`,\r\n };\r\n}\r\n/**\r\n * Returns an index of creature types.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The creature type index. See {@link CreatureTypeIndexResponse}.\r\n */\r\nexport function creatureTypeIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<CreatureTypeIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/creature-type/index`,\r\n };\r\n}\r\n/**\r\n * Performs a search of creatures.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param options The creature search parameters. See {@link CreatureSearchParameters}.\r\n * @returns The creature search results. See {@link SearchResponse} & {@link CreatureSearchResponseItem}.\r\n */\r\nexport function creatureSearch(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n options: CreatureSearchParameters,\r\n): Resource<SearchResponse<CreatureSearchResponseItem>, Omit<CreatureSearchParameters, 'locale' | 'name'>> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n [`name.${options.locale}`]: options.name,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n },\r\n path: `${searchBase}/creature`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base, mediaBase } from '../../../wow/src/base';\r\nimport type { GuildCrestBorderEmblemResponse, GuildCrestComponentsIndexResponse } from './types';\r\n\r\n/**\r\n * Returns an index of guild crest media.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The guild crest components index. See {@link GuildCrestComponentsIndexResponse}.\r\n */\r\nexport function guildCrestComponentsIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<GuildCrestComponentsIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/guild-crest/index`,\r\n };\r\n}\r\n/**\r\n * Returns media for a guild crest border by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param borderId The guild crest border ID.\r\n * @returns The guild crest border. See {@link GuildCrestBorderEmblemResponse}.\r\n */\r\nexport function guildCrestBorder(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n borderId: number,\r\n): Resource<GuildCrestBorderEmblemResponse> {\r\n return {\r\n namespace,\r\n path: `${mediaBase}/guild-crest/border/${borderId}`,\r\n };\r\n}\r\n/**\r\n * Returns media for a guild crest emblem by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param emblemId The guild crest emblem ID.\r\n * @returns The guild crest emblem. See {@link GuildCrestBorderEmblemResponse}.\r\n */\r\nexport function guildCrestEmblem(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n emblemId: number,\r\n): Resource<GuildCrestBorderEmblemResponse> {\r\n return {\r\n namespace,\r\n path: `${mediaBase}/guild-crest/emblem/${emblemId}`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { base, mediaBase, searchBase } from '../../../wow/src/base';\r\nimport type {\r\n ItemClassIndexResponse,\r\n ItemClassResponse,\r\n ItemMediaResponse,\r\n ItemResponse,\r\n ItemSearchParameters,\r\n ItemSearchResponseItem,\r\n ItemSubClassResponse,\r\n} from './types';\r\n\r\n/**\r\n * Get an item class index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The item class index. See {@link ItemClassIndexResponse}.\r\n */\r\nexport function itemClassIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<ItemClassIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/item-class/index`,\r\n };\r\n}\r\n/**\r\n * Get an item class by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param itemClassId The item class ID.\r\n * @returns The item class. See {@link ItemClassResponse}.\r\n */\r\nexport function itemClass(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n itemClassId: number,\r\n): Resource<ItemClassResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/item-class/${itemClassId}`,\r\n };\r\n}\r\n/**\r\n * Get an item subclass by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param itemClassId The item class ID.\r\n * @param itemSubclassId The item subclass ID.\r\n * @returns The item subclass. See {@link ItemSubClassResponse}.\r\n */\r\nexport function itemSubClass(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n itemClassId: number,\r\n itemSubclassId: number,\r\n): Resource<ItemSubClassResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/item-class/${itemClassId}/item-subclass/${itemSubclassId}`,\r\n };\r\n}\r\n/**\r\n * Get an item by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param itemId The item ID.\r\n * @returns The item. See {@link ItemResponse}.\r\n */\r\nexport function item(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n itemId: number,\r\n): Resource<ItemResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/item/${itemId}`,\r\n };\r\n}\r\n/**\r\n * Get item media by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param itemId The item ID.\r\n * @returns The item media. See {@link ItemMediaResponse}.\r\n */\r\nexport function itemMedia(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n itemId: number,\r\n): Resource<ItemMediaResponse> {\r\n return {\r\n namespace,\r\n path: `${mediaBase}/item/${itemId}`,\r\n };\r\n}\r\n/**\r\n * Search for items.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param options The search parameters. See {@link ItemSearchParameters}.\r\n * @returns The search results. See {@link SearchResponse}.\r\n */\r\nexport function itemSearch(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n options: ItemSearchParameters,\r\n): Resource<SearchResponse<ItemSearchResponseItem>, Omit<ItemSearchParameters, 'locale' | 'name'>> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n [`name.${options.locale}`]: options.name,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n },\r\n path: `${searchBase}/item`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { searchBase } from '../../../wow/src/base';\r\nimport type { MediaSearchParameters, MediaSearchResponseItem } from './types';\r\n\r\n/**\r\n * Search for media.\r\n * @param options The search parameters. See {@link MediaSearchParameters}.\r\n * @returns The search results. See {@link SearchResponse}.\r\n */\r\nexport function mediaSearch(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n options: MediaSearchParameters,\r\n): Resource<SearchResponse<MediaSearchResponseItem>, MediaSearchParameters> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n tags: options.tags,\r\n },\r\n path: `${searchBase}/media`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base, mediaBase } from '../../../wow/src/base';\r\nimport type { PlayableClassIndexResponse, PlayableClassMediaResponse, PlayableClassResponse } from './types';\r\n\r\n/**\r\n * Get a playable class by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param playableClassId The playable class ID.\r\n * @returns The playable class. See {@link PlayableClassResponse}.\r\n */\r\nexport function playableClass(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n playableClassId: number,\r\n): Resource<PlayableClassResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/playable-class/${playableClassId}`,\r\n };\r\n}\r\n/**\r\n * Get a playable class index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The playable class index. See {@link PlayableClassIndexResponse}.\r\n */\r\nexport function playableClassIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<PlayableClassIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/playable-class/index`,\r\n };\r\n}\r\n/**\r\n * Get playable class media by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param playableClassId The playable class ID.\r\n * @returns The playable class media. See {@link PlayableClassMediaResponse}.\r\n */\r\nexport function playableClassMedia(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n playableClassId: number,\r\n): Resource<PlayableClassMediaResponse> {\r\n return {\r\n namespace,\r\n path: `${mediaBase}/playable-class/${playableClassId}`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { PlayableRaceIndexResponse, PlayableRaceResponse } from './types';\r\n\r\n/**\r\n * Get a playable race by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param playableRaceId The playable race ID.\r\n * @returns The playable race. See {@link PlayableRaceResponse}.\r\n */\r\nexport function playableRace(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n playableRaceId: number,\r\n): Resource<PlayableRaceResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/playable-race/${playableRaceId}`,\r\n };\r\n}\r\n/**\r\n * Get a playable race index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The playable race index. See {@link PlayableRaceIndexResponse}.\r\n */\r\nexport function playableRaceIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<PlayableRaceIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/playable-race/index`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { PowerTypeIndexResponse, PowerTypeResponse } from './types';\r\n\r\n/**\r\n * Get a power type by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param powerTypeId The power type ID.\r\n * @returns The power type. See {@link PowerTypeResponse}.\r\n */\r\nexport function powerType(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n powerTypeId: number,\r\n): Resource<PowerTypeResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/power-type/${powerTypeId}`,\r\n };\r\n}\r\n/**\r\n * Get a power type index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The power type index. See {@link PowerTypeIndexResponse}.\r\n */\r\nexport function powerTypeIndex(\r\n namespace: Extract<BlizzardNamespaces, 'static-classic' | 'static-classic1x'>,\r\n): Resource<PowerTypeIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/power-type/index`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { PvpSeasonIndexResponse, PvpSeasonResponse } from './types';\r\n\r\n/**\r\n * Get a PvP season index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The PvP season index. See {@link PvpSeasonIndexResponse}.\r\n */\r\nexport function pvpSeasonIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<PvpSeasonIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-season/index`,\r\n };\r\n}\r\n/**\r\n * Get a PvP season by ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n * @returns The PvP season. See {@link PvpSeasonResponse}.\r\n */\r\nexport function pvpSeason(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpSeasonId: number,\r\n): Resource<PvpSeasonResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-season/${pvpSeasonId}`,\r\n };\r\n}\r\n/**\r\n * Returns an index of PvP Regions.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n */\r\nexport function pvpRegionIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/index`,\r\n };\r\n}\r\n/**\r\n * Returns an index of PvP Seasons in a PvP region.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @returns The PvP season index. See {@link PvpSeasonIndexResponse}.\r\n */\r\nexport function pvpRegionalSeasonIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n): Resource<PvpSeasonIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/index`,\r\n };\r\n}\r\n/**\r\n * Returns a PvP season by region ID and season ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n */\r\nexport function pvpRegionalSeason(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n pvpSeasonId: number,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/${pvpSeasonId}`,\r\n };\r\n}\r\n/**\r\n * Returns an index of PvP leaderboards for a PvP season in a given PvP region.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n */\r\nexport function pvpLeaderboardIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n pvpSeasonId: number,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/${pvpSeasonId}/pvp-leaderboard/index`,\r\n };\r\n}\r\n/**\r\n * Get a PvP leaderboard by PvP season ID and bracket.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n * @param pvpBracket The PvP bracket.\r\n */\r\nexport function pvpLeaderboard(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n pvpSeasonId: number,\r\n pvpBracket: string,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/${pvpSeasonId}/pvp-leaderboard/${pvpBracket}`,\r\n };\r\n}\r\n/**\r\n * Returns an index of PvP rewards for a PvP season in a given PvP region.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param pvpRegionId The PvP region ID.\r\n * @param pvpSeasonId The PvP season ID.\r\n */\r\nexport function pvpRewardsIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n pvpRegionId: number,\r\n pvpSeasonId: number,\r\n): Resource<unknown> {\r\n return {\r\n namespace,\r\n path: `${base}/pvp-region/${pvpRegionId}/pvp-season/${pvpSeasonId}/pvp-reward/index`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource, SearchResponse } from '@blizzard-api/core';\r\nimport { base, searchBase } from '../../../wow/src/base';\r\nimport type { RealmIndexResponse, RealmResponse, RealmSearchParameters, RealmSearchResponseItem } from './types';\r\n\r\n/**\r\n * Get a realm by slug.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param realmSlug The realm slug.\r\n * @returns The realm. See {@link RealmResponse}.\r\n */\r\nexport function realm(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n realmSlug: string,\r\n): Resource<RealmResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/realm/${realmSlug}`,\r\n };\r\n}\r\n/**\r\n * Get a realm index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The realm index. See {@link RealmIndexResponse}.\r\n */\r\nexport function realmIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<RealmIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/realm/index`,\r\n };\r\n}\r\n/**\r\n * Search for realms.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param options The search parameters. See {@link RealmSearchParameters}.\r\n * @returns The search results. See {@link SearchResponse}.\r\n */\r\nexport function realmSearch(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n options: RealmSearchParameters,\r\n): Resource<SearchResponse<RealmSearchResponseItem>, RealmSearchParameters> {\r\n return {\r\n namespace,\r\n parameters: {\r\n _page: options._page,\r\n orderby: Array.isArray(options.orderby) ? options.orderby.join(',') : options.orderby,\r\n timezone: options.timezone,\r\n },\r\n path: `${searchBase}/realm`,\r\n };\r\n}\r\n","import type { BlizzardNamespaces, Resource } from '@blizzard-api/core';\r\nimport { base } from '../../../wow/src/base';\r\nimport type { RegionIndexResponse, RegionResponse } from './types';\r\n\r\n/**\r\n * Get a region by ID.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @param regionId The region ID.\r\n * @returns The region. See {@link RegionResponse}.\r\n */\r\nexport function region(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n regionId: number,\r\n): Resource<RegionResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/region/${regionId}`,\r\n };\r\n}\r\n/**\r\n * Get a region index.\r\n * @param namespace The namespace to use. See {@link BlizzardNamespaces}.\r\n * @returns The region index. See {@link RegionIndexResponse}.\r\n */\r\nexport function regionIndex(\r\n namespace: Extract<BlizzardNamespaces, 'dynamic-classic' | 'dynamic-classic1x'>,\r\n): Resource<RegionIndexResponse> {\r\n return {\r\n namespace,\r\n path: `${base}/region/index`,\r\n };\r\n}\r\n","import { auctionHouseIndex, auctions } from './auction-house/auction-house';\r\nimport { connectedRealm, connectedRealmIndex, connectedRealmSearch } from './connected-realm/connected-realm';\r\nimport {\r\n creature,\r\n creatureDisplayMedia,\r\n creatureFamily,\r\n creatureFamilyIndex,\r\n creatureFamilyMedia,\r\n creatureSearch,\r\n creatureType,\r\n creatureTypeIndex,\r\n} from './creature/creature';\r\nimport { guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem } from './guild-crest/guild-crest';\r\nimport { item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSubClass } from './item/item';\r\nimport { mediaSearch } from './media-search/media-search';\r\nimport { playableClass, playableClassIndex, playableClassMedia } from './playable-class/playable-class';\r\nimport { playableRace, playableRaceIndex } from './playable-race/playable-race';\r\nimport { powerType, powerTypeIndex } from './power-type/power-type';\r\nimport {\r\n pvpLeaderboard,\r\n pvpLeaderboardIndex,\r\n pvpRegionalSeason,\r\n pvpRegionalSeasonIndex,\r\n pvpRegionIndex,\r\n pvpRewardsIndex,\r\n pvpSeason,\r\n pvpSeasonIndex,\r\n} from './pvp-season/pvp-season';\r\nimport { realm, realmIndex, realmSearch } from './realm/realm';\r\nimport { region, regionIndex } from './region/region';\r\n\r\nexport const classicWow = {\r\n //Auction House\r\n auctionHouseIndex,\r\n auctions,\r\n //Connected Realm\r\n connectedRealm,\r\n connectedRealmIndex,\r\n connectedRealmSearch,\r\n //Creature\r\n creature,\r\n creatureDisplayMedia,\r\n creatureFamily,\r\n creatureFamilyIndex,\r\n creatureFamilyMedia,\r\n creatureSearch,\r\n creatureType,\r\n creatureTypeIndex,\r\n //Guild Crest\r\n guildCrestBorder,\r\n guildCrestComponentsIndex,\r\n guildCrestEmblem,\r\n //Item\r\n item,\r\n itemClass,\r\n itemClassIndex,\r\n itemMedia,\r\n itemSearch,\r\n itemSubClass,\r\n //Media Search\r\n mediaSearch,\r\n //Playable Class\r\n playableClass,\r\n playableClassIndex,\r\n playableClassMedia,\r\n //Playable Race\r\n playableRace,\r\n playableRaceIndex,\r\n //Power Type\r\n powerType,\r\n powerTypeIndex,\r\n //Pvp Season\r\n pvpLeaderboard,\r\n pvpLeaderboardIndex,\r\n pvpRegionalSeason,\r\n pvpRegionalSeasonIndex,\r\n pvpRegionIndex,\r\n pvpRewardsIndex,\r\n pvpSeason,\r\n pvpSeasonIndex,\r\n //Realm\r\n realm,\r\n realmIndex,\r\n realmSearch,\r\n //Region\r\n region,\r\n regionIndex,\r\n};\r\n\r\n//Auction House\r\nexport * from './auction-house/auction-house';\r\nexport type * from './auction-house/types';\r\n//Connected Realm\r\nexport * from './connected-realm/connected-realm';\r\nexport type * from './connected-realm/types';\r\n//Creature\r\nexport * from './creature/creature';\r\nexport type * from './creature/types';\r\n//Guild Crest\r\nexport * from './guild-crest/guild-crest';\r\nexport type * from './guild-crest/types';\r\n//Item\r\nexport * from './item/item';\r\nexport type * from './item/types';\r\n//Media Search\r\nexport * from './media-search/media-search';\r\nexport type * from './media-search/types';\r\n//Playable Class\r\nexport * from './playable-class/playable-class';\r\nexport type * from './playable-class/types';\r\n//Playable Race\r\nexport * from './playable-race/playable-race';\r\nexport type * from './playable-race/types';\r\n//Power Type\r\nexport * from './power-type/power-type';\r\nexport type * from './power-type/types';\r\n//Pvp Season\r\nexport * from './pvp-season/pvp-season';\r\nexport type * from './pvp-season/types';\r\n//Realm\r\nexport * from './realm/realm';\r\nexport type * from './realm/types';\r\n//Region\r\nexport * from './region/region';\r\nexport type * from './region/types';\r\n"]}