@blizzard-api/classic-wow
Version:
A series of helpers to interact with the World of Warcraft Classic Blizzard API
128 lines (127 loc) • 4.71 kB
TypeScript
import { c as RealmTypeCapitalized, r as RealmLocales, s as RealmTimezone, t as RealmCategory } from "./types-gA98D5Xw.js";
import { BaseSearchParameters, BlizzardNamespaces, Href, KeyBase, Locales, NameIdKey, Resource, ResponseBase, SearchResponseWithoutResults } from "@blizzard-api/core";
//#region src/connected-realm/types.d.ts
/**
* Connected Realm Index API response.
* @see https://develop.battle.net/documentation/world-of-warcraft/game-data-apis
*/
interface ConnectedRealmIndexResponse extends ResponseBase {
connected_realms: Array<Href>;
}
/**
* Connected Realm API response.
* @see https://develop.battle.net/documentation/world-of-warcraft/game-data-apis
*/
interface ConnectedRealmResponse extends ResponseBase {
auctions: Href;
has_queue: boolean;
id: number;
population: {
name: string;
type: RealmPopulationCapitalized;
};
pvp_season?: Href;
realm_locked_status?: RealmLockedStatus;
realms: Array<Realm$1>;
status: {
name: string;
type: RealmStatusCapitalized;
};
}
/**
* Connected Realm Search API parameters.
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/guides/search}
*/
interface ConnectedRealmSearchParameters extends BaseSearchParameters {
'realms.timezone'?: RealmTimezone;
'status.type'?: RealmStatusCapitalized;
}
/**
* Connected Realm Search API response item.
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/guides/search}
*/
interface ConnectedRealmSearchResponse extends SearchResponseWithoutResults {
results: Array<ConnectedRealmSearchResponseItem>;
}
interface ConnectedRealmSearchResponseItem extends KeyBase {
data: {
has_queue: boolean;
id: number;
population: SearchRealmPopulation;
realms: Array<SearchRealm>;
status: SearchRealmStatus;
};
}
interface Realm$1 {
category: RealmCategory;
connected_realm: Href;
id: number;
is_tournament: boolean;
locale: RealmLocales;
name: string;
region: NameIdKey;
slug: string;
timezone: RealmTimezone;
type: {
name: string;
type: RealmTypeCapitalized;
};
}
interface RealmLockedStatus {
is_locked_for_new_characters: boolean;
is_locked_for_pct: boolean;
}
type RealmPopulationCapitalized = 'FULL' | 'HIGH' | 'LOCKED' | 'LOW' | 'MEDIUM' | 'RECOMMENDED';
type RealmStatusCapitalized = 'DOWN' | 'UP';
interface SearchRealm {
category: Record<Locales, string>;
id: number;
is_tournament: boolean;
locale: RealmLocales;
name: Record<Locales, string | undefined>;
region: {
id: number;
name: Record<Locales, string>;
};
slug: string;
timezone: RealmTimezone;
type: {
name: Record<Locales, string>;
type: RealmTypeCapitalized;
};
}
interface SearchRealmPopulation {
name: Record<Locales, string>;
type: RealmPopulationCapitalized;
}
interface SearchRealmStatus {
name: Record<Locales, string>;
type: RealmStatusCapitalized;
}
//#endregion
//#region src/connected-realm/index.d.ts
/**
* Returns a connected realm by ID.
* @param namespace The namespace to use. See {@link BlizzardNamespaces}.
* @param connectedRealmId The connected realm ID.
* @returns The connected realm. See {@link ConnectedRealmResponse}.
*/
declare function connectedRealm(namespace: Extract<BlizzardNamespaces, 'dynamic-classic1x' | 'dynamic-classic'>, connectedRealmId: number): Resource<ConnectedRealmResponse>;
/**
* Returns an index of connected realms.
* @param namespace The namespace to use. See {@link BlizzardNamespaces}.
* @returns The connected realm index. See {@link ConnectedRealmIndexResponse}.
*/
declare function connectedRealmIndex(namespace: Extract<BlizzardNamespaces, 'dynamic-classic1x' | 'dynamic-classic'>): Resource<ConnectedRealmIndexResponse>;
/**
* Performs a search of connected realms.
* @param namespace The namespace to use. See {@link BlizzardNamespaces}.
* @param options The search parameters. See {@link ConnectedRealmSearchParameters}.
* @returns The search results. See {@link ConnectedRealmSearchResponse}.
*/
declare function connectedRealmSearch(namespace: Extract<BlizzardNamespaces, 'dynamic-classic1x' | 'dynamic-classic'>, options: ConnectedRealmSearchParameters): Resource<ConnectedRealmSearchResponse, ConnectedRealmSearchParameters>;
//#endregion
export { ConnectedRealmResponse as a, ConnectedRealmIndexResponse as i, connectedRealmIndex as n, ConnectedRealmSearchParameters as o, connectedRealmSearch as r, ConnectedRealmSearchResponse as s, connectedRealm as t };
//# sourceMappingURL=index-BQ-NY0vY.d.ts.map