@blizzard-api/classic-wow 1.1.2 → 1.1.3
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 +20 -15
- package/dist/index.cjs +4 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -14,35 +14,40 @@ You can get paths, namespaces, parameters and more for a specific endpoint by ca
|
|
|
14
14
|
|
|
15
15
|
```ts
|
|
16
16
|
import { classicWow } from "@blizzard-api/classic-wow"
|
|
17
|
+
//or
|
|
18
|
+
import classicWow from "@blizzard-api/classic-wow"
|
|
17
19
|
|
|
18
20
|
const powerType = classicWow.powerType("static-classic", 123);
|
|
19
|
-
^ { path: string, namespace
|
|
21
|
+
^ { path: string, namespace?: string, parameters?: Record<string, never> }
|
|
20
22
|
```
|
|
21
23
|
|
|
24
|
+
If you don't want to use the exported classicWow object, you can also access the functions directly:
|
|
25
|
+
|
|
26
|
+
```ts
|
|
27
|
+
import { powerType } from "@blizzard-api/classic-wow"
|
|
28
|
+
|
|
29
|
+
const powerTypeEndpoint = powerType("static-classic", 123);
|
|
30
|
+
^ { path: string, namespace?: string, parameters?: Record<string, never> }
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Types
|
|
34
|
+
|
|
22
35
|
If you need the response types, they are also exported with "Response" appended, so to get the response type from the above code, you can import it like this:
|
|
23
36
|
|
|
24
37
|
```ts
|
|
25
38
|
import type { PowerTypeResponse } from '@blizzard-api/classic-wow';
|
|
26
39
|
```
|
|
27
40
|
|
|
28
|
-
If you simply want to use the existing object, you can use the helper from `@blizzard-api/core` like so:
|
|
41
|
+
If you simply want to use the existing object, you can use the helper, `ExtractResourceType`, from `@blizzard-api/core` like so:
|
|
29
42
|
|
|
30
43
|
```ts
|
|
31
44
|
import { classicWow } from "@blizzard-api/classic-wow"
|
|
45
|
+
import type { ExtractResourceType } from "@blizzard-api/core";
|
|
32
46
|
|
|
33
47
|
const powerType = classicWow.powerType("static-classic", 123);
|
|
34
|
-
^ { path: string, namespace
|
|
35
|
-
type PowerTypeResponse = ExtractResourceType<typeof powerType>;
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
If you don't want to use the exported classicWow object, you can also access the functions directly:
|
|
48
|
+
^ { path: string, namespace?: string, parameters?: Record<string, never> }
|
|
39
49
|
|
|
40
|
-
|
|
41
|
-
import { powerType } from "@blizzard-api/wow"
|
|
42
|
-
|
|
43
|
-
const powerTypeEndpoint = powerType("static-classic", 123);
|
|
44
|
-
^ { path: string, namespace: string }
|
|
45
|
-
type PowerTypeResponse = ExtractResourceType<typeof powerTypeEndpoint>;
|
|
50
|
+
type PowerTypeResponse = ExtractResourceType<typeof powerType>;
|
|
46
51
|
```
|
|
47
52
|
|
|
48
53
|
## Differences to @blizzard-api/wow
|
|
@@ -56,11 +61,11 @@ Because there are multiple classic flavours of the game, each endpoint will take
|
|
|
56
61
|
| World of Warcraft Classic (Era) | static-classic1x-{region} | dynamic-classic1x-{region} | profile-classic1x-{region} |
|
|
57
62
|
| Wrath of the Lich King Classic (Progression) | static-classic-{region} | dynamic-classic-{region} | profile-classic-{region} |
|
|
58
63
|
|
|
59
|
-
## Types
|
|
64
|
+
## Notes on Types
|
|
60
65
|
|
|
61
66
|
The types are manually created from using the Blizzard API documentation, and are as accurate as possible with smoke testing each endpoint. However, no-one is perfect so there is likely be some discrepancies. If you encounter any issues with the types from this package, please open an issue or a pull request.
|
|
62
67
|
|
|
63
|
-
|
|
68
|
+
## Client
|
|
64
69
|
|
|
65
70
|
While this package is made to function on it's own, it performs even better when combined with `@blizzard-api/client` where you can easily request data combining the two libraries.
|
|
66
71
|
|
package/dist/index.cjs
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
3
5
|
// ../wow/src/base.ts
|
|
4
6
|
var base = "/data/wow";
|
|
5
7
|
var mediaBase = `${base}/media`;
|
|
@@ -371,6 +373,7 @@ var classicWow = {
|
|
|
371
373
|
region,
|
|
372
374
|
regionIndex
|
|
373
375
|
};
|
|
376
|
+
var src_default = classicWow;
|
|
374
377
|
|
|
375
378
|
exports.auctionHouseIndex = auctionHouseIndex;
|
|
376
379
|
exports.auctions = auctions;
|
|
@@ -386,6 +389,7 @@ exports.creatureFamilyMedia = creatureFamilyMedia;
|
|
|
386
389
|
exports.creatureSearch = creatureSearch;
|
|
387
390
|
exports.creatureType = creatureType;
|
|
388
391
|
exports.creatureTypeIndex = creatureTypeIndex;
|
|
392
|
+
exports.default = src_default;
|
|
389
393
|
exports.guildCrestBorder = guildCrestBorder;
|
|
390
394
|
exports.guildCrestComponentsIndex = guildCrestComponentsIndex;
|
|
391
395
|
exports.guildCrestEmblem = guildCrestEmblem;
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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"]}
|
|
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\nexport default classicWow;\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"]}
|
package/dist/index.d.cts
CHANGED
|
@@ -1130,4 +1130,4 @@ declare const classicWow: {
|
|
|
1130
1130
|
regionIndex: typeof regionIndex;
|
|
1131
1131
|
};
|
|
1132
1132
|
|
|
1133
|
-
export { type AuctionHouseIndexResponse, type AuctionsResponse, type ConnectedRealmIndexResponse, type ConnectedRealmResponse, type ConnectedRealmSearchParameters, type ConnectedRealmSearchResponseItem, type CreatureDisplayMediaResponse, type CreatureFamilyIndexResponse, type CreatureFamilyMediaResponse, type CreatureFamilyResponse, type CreatureResponse, type CreatureSearchParameters, type CreatureSearchResponseItem, type CreatureTypeIndexResponse, type CreatureTypeResponse, type GuildCrestBorderEmblemResponse, type GuildCrestComponentsIndexResponse, type ItemClassIndexResponse, type ItemClassResponse, type ItemMediaResponse, type ItemResponse, type ItemSearchParameters, type ItemSearchResponseItem, type ItemSubClassResponse, type MediaSearchParameters, type MediaSearchResponseItem, type PlayableClassIndexResponse, type PlayableClassMediaResponse, type PlayableClassResponse, type PlayableRaceIndexResponse, type PlayableRaceResponse, type PowerTypeIndexResponse, type PowerTypeResponse, type PvpSeasonIndexResponse, type PvpSeasonResponse, type RealmCategory, type RealmIndexResponse, type RealmResponse, type RealmSearchParameters, type RealmSearchResponseItem, type RealmTimezone, type RealmType, type RealmTypeCapitalized, type RegionIndexResponse, type RegionResponse, type WithoutUnderscore, auctionHouseIndex, auctions, classicWow, connectedRealm, connectedRealmIndex, connectedRealmSearch, creature, creatureDisplayMedia, creatureFamily, creatureFamilyIndex, creatureFamilyMedia, creatureSearch, creatureType, creatureTypeIndex, guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem, item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSubClass, mediaSearch, playableClass, playableClassIndex, playableClassMedia, playableRace, playableRaceIndex, powerType, powerTypeIndex, pvpLeaderboard, pvpLeaderboardIndex, pvpRegionIndex, pvpRegionalSeason, pvpRegionalSeasonIndex, pvpRewardsIndex, pvpSeason, pvpSeasonIndex, realm, realmIndex, realmSearch, region, regionIndex };
|
|
1133
|
+
export { type AuctionHouseIndexResponse, type AuctionsResponse, type ConnectedRealmIndexResponse, type ConnectedRealmResponse, type ConnectedRealmSearchParameters, type ConnectedRealmSearchResponseItem, type CreatureDisplayMediaResponse, type CreatureFamilyIndexResponse, type CreatureFamilyMediaResponse, type CreatureFamilyResponse, type CreatureResponse, type CreatureSearchParameters, type CreatureSearchResponseItem, type CreatureTypeIndexResponse, type CreatureTypeResponse, type GuildCrestBorderEmblemResponse, type GuildCrestComponentsIndexResponse, type ItemClassIndexResponse, type ItemClassResponse, type ItemMediaResponse, type ItemResponse, type ItemSearchParameters, type ItemSearchResponseItem, type ItemSubClassResponse, type MediaSearchParameters, type MediaSearchResponseItem, type PlayableClassIndexResponse, type PlayableClassMediaResponse, type PlayableClassResponse, type PlayableRaceIndexResponse, type PlayableRaceResponse, type PowerTypeIndexResponse, type PowerTypeResponse, type PvpSeasonIndexResponse, type PvpSeasonResponse, type RealmCategory, type RealmIndexResponse, type RealmResponse, type RealmSearchParameters, type RealmSearchResponseItem, type RealmTimezone, type RealmType, type RealmTypeCapitalized, type RegionIndexResponse, type RegionResponse, type WithoutUnderscore, auctionHouseIndex, auctions, classicWow, connectedRealm, connectedRealmIndex, connectedRealmSearch, creature, creatureDisplayMedia, creatureFamily, creatureFamilyIndex, creatureFamilyMedia, creatureSearch, creatureType, creatureTypeIndex, classicWow as default, guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem, item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSubClass, mediaSearch, playableClass, playableClassIndex, playableClassMedia, playableRace, playableRaceIndex, powerType, powerTypeIndex, pvpLeaderboard, pvpLeaderboardIndex, pvpRegionIndex, pvpRegionalSeason, pvpRegionalSeasonIndex, pvpRewardsIndex, pvpSeason, pvpSeasonIndex, realm, realmIndex, realmSearch, region, regionIndex };
|
package/dist/index.d.ts
CHANGED
|
@@ -1130,4 +1130,4 @@ declare const classicWow: {
|
|
|
1130
1130
|
regionIndex: typeof regionIndex;
|
|
1131
1131
|
};
|
|
1132
1132
|
|
|
1133
|
-
export { type AuctionHouseIndexResponse, type AuctionsResponse, type ConnectedRealmIndexResponse, type ConnectedRealmResponse, type ConnectedRealmSearchParameters, type ConnectedRealmSearchResponseItem, type CreatureDisplayMediaResponse, type CreatureFamilyIndexResponse, type CreatureFamilyMediaResponse, type CreatureFamilyResponse, type CreatureResponse, type CreatureSearchParameters, type CreatureSearchResponseItem, type CreatureTypeIndexResponse, type CreatureTypeResponse, type GuildCrestBorderEmblemResponse, type GuildCrestComponentsIndexResponse, type ItemClassIndexResponse, type ItemClassResponse, type ItemMediaResponse, type ItemResponse, type ItemSearchParameters, type ItemSearchResponseItem, type ItemSubClassResponse, type MediaSearchParameters, type MediaSearchResponseItem, type PlayableClassIndexResponse, type PlayableClassMediaResponse, type PlayableClassResponse, type PlayableRaceIndexResponse, type PlayableRaceResponse, type PowerTypeIndexResponse, type PowerTypeResponse, type PvpSeasonIndexResponse, type PvpSeasonResponse, type RealmCategory, type RealmIndexResponse, type RealmResponse, type RealmSearchParameters, type RealmSearchResponseItem, type RealmTimezone, type RealmType, type RealmTypeCapitalized, type RegionIndexResponse, type RegionResponse, type WithoutUnderscore, auctionHouseIndex, auctions, classicWow, connectedRealm, connectedRealmIndex, connectedRealmSearch, creature, creatureDisplayMedia, creatureFamily, creatureFamilyIndex, creatureFamilyMedia, creatureSearch, creatureType, creatureTypeIndex, guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem, item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSubClass, mediaSearch, playableClass, playableClassIndex, playableClassMedia, playableRace, playableRaceIndex, powerType, powerTypeIndex, pvpLeaderboard, pvpLeaderboardIndex, pvpRegionIndex, pvpRegionalSeason, pvpRegionalSeasonIndex, pvpRewardsIndex, pvpSeason, pvpSeasonIndex, realm, realmIndex, realmSearch, region, regionIndex };
|
|
1133
|
+
export { type AuctionHouseIndexResponse, type AuctionsResponse, type ConnectedRealmIndexResponse, type ConnectedRealmResponse, type ConnectedRealmSearchParameters, type ConnectedRealmSearchResponseItem, type CreatureDisplayMediaResponse, type CreatureFamilyIndexResponse, type CreatureFamilyMediaResponse, type CreatureFamilyResponse, type CreatureResponse, type CreatureSearchParameters, type CreatureSearchResponseItem, type CreatureTypeIndexResponse, type CreatureTypeResponse, type GuildCrestBorderEmblemResponse, type GuildCrestComponentsIndexResponse, type ItemClassIndexResponse, type ItemClassResponse, type ItemMediaResponse, type ItemResponse, type ItemSearchParameters, type ItemSearchResponseItem, type ItemSubClassResponse, type MediaSearchParameters, type MediaSearchResponseItem, type PlayableClassIndexResponse, type PlayableClassMediaResponse, type PlayableClassResponse, type PlayableRaceIndexResponse, type PlayableRaceResponse, type PowerTypeIndexResponse, type PowerTypeResponse, type PvpSeasonIndexResponse, type PvpSeasonResponse, type RealmCategory, type RealmIndexResponse, type RealmResponse, type RealmSearchParameters, type RealmSearchResponseItem, type RealmTimezone, type RealmType, type RealmTypeCapitalized, type RegionIndexResponse, type RegionResponse, type WithoutUnderscore, auctionHouseIndex, auctions, classicWow, connectedRealm, connectedRealmIndex, connectedRealmSearch, creature, creatureDisplayMedia, creatureFamily, creatureFamilyIndex, creatureFamilyMedia, creatureSearch, creatureType, creatureTypeIndex, classicWow as default, guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem, item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSubClass, mediaSearch, playableClass, playableClassIndex, playableClassMedia, playableRace, playableRaceIndex, powerType, powerTypeIndex, pvpLeaderboard, pvpLeaderboardIndex, pvpRegionIndex, pvpRegionalSeason, pvpRegionalSeasonIndex, pvpRewardsIndex, pvpSeason, pvpSeasonIndex, realm, realmIndex, realmSearch, region, regionIndex };
|
package/dist/index.js
CHANGED
|
@@ -369,7 +369,8 @@ var classicWow = {
|
|
|
369
369
|
region,
|
|
370
370
|
regionIndex
|
|
371
371
|
};
|
|
372
|
+
var src_default = classicWow;
|
|
372
373
|
|
|
373
|
-
export { auctionHouseIndex, auctions, classicWow, connectedRealm, connectedRealmIndex, connectedRealmSearch, creature, creatureDisplayMedia, creatureFamily, creatureFamilyIndex, creatureFamilyMedia, creatureSearch, creatureType, creatureTypeIndex, guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem, item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSubClass, mediaSearch, playableClass, playableClassIndex, playableClassMedia, playableRace, playableRaceIndex, powerType, powerTypeIndex, pvpLeaderboard, pvpLeaderboardIndex, pvpRegionIndex, pvpRegionalSeason, pvpRegionalSeasonIndex, pvpRewardsIndex, pvpSeason, pvpSeasonIndex, realm, realmIndex, realmSearch, region, regionIndex };
|
|
374
|
+
export { auctionHouseIndex, auctions, classicWow, connectedRealm, connectedRealmIndex, connectedRealmSearch, creature, creatureDisplayMedia, creatureFamily, creatureFamilyIndex, creatureFamilyMedia, creatureSearch, creatureType, creatureTypeIndex, src_default as default, guildCrestBorder, guildCrestComponentsIndex, guildCrestEmblem, item, itemClass, itemClassIndex, itemMedia, itemSearch, itemSubClass, mediaSearch, playableClass, playableClassIndex, playableClassMedia, playableRace, playableRaceIndex, powerType, powerTypeIndex, pvpLeaderboard, pvpLeaderboardIndex, pvpRegionIndex, pvpRegionalSeason, pvpRegionalSeasonIndex, pvpRewardsIndex, pvpSeason, pvpSeasonIndex, realm, realmIndex, realmSearch, region, regionIndex };
|
|
374
375
|
//# sourceMappingURL=out.js.map
|
|
375
376
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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"]}
|
|
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\nexport default classicWow;\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"]}
|