@blizzard-api/wow
Version:
A series of helpers to interact with the World of Warcraft Blizzard API
72 lines (71 loc) • 2.71 kB
TypeScript
import { GenderName, Href, KeyBase, MediaAsset, NameId, NameIdKey, Resource, ResponseBase } from "@blizzard-api/core";
//#region src/playable-class/types.d.ts
/**
* The response for a playable class index.
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
*/
interface PlayableClassIndexResponse extends ResponseBase {
classes: Array<NameIdKey>;
}
/**
* The response for playable class media.
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
*/
interface PlayableClassMediaResponse extends ResponseBase {
assets: Array<MediaAsset>;
id: number;
}
/**
* The response for a playable class.
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
*/
interface PlayableClassResponse extends NameId, ResponseBase {
gender_name: GenderName;
media: Media;
playable_races: Array<NameIdKey>;
power_type: NameIdKey;
pvp_talent_slots: Href;
specializations: Array<NameIdKey>;
}
/**
* The response for a playable class's PvP talent slots.
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
*/
interface PvpTalentSlotsResponse extends ResponseBase {
talent_slots: Array<TalentSlot>;
}
interface Media extends KeyBase {
id: number;
}
interface TalentSlot {
slot_number: number;
unlock_player_level: number;
}
//#endregion
//#region src/playable-class/index.d.ts
/**
* Get a playable class by ID.
* @param playableClassId The playable class ID.
* @returns The playable class. See {@link PlayableClassResponse}.
*/
declare function playableClass(playableClassId: number): Resource<PlayableClassResponse>;
/**
* Get a playable class index.
* @returns The playable class index. See {@link PlayableClassIndexResponse}.
*/
declare function playableClassIndex(): Resource<PlayableClassIndexResponse>;
/**
* Get playable class media by ID.
* @param playableClassId The playable class ID.
* @returns The playable class media. See {@link PlayableClassMediaResponse}.
*/
declare function playableClassMedia(playableClassId: number): Resource<PlayableClassMediaResponse>;
/**
* Get a playable class's PvP talent slots by ID.
* @param playableClassId The playable class ID.
* @returns The playable class's PvP talent slots. See {@link PvpTalentSlotsResponse}.
*/
declare function pvpTalentSlots(playableClassId: number): Resource<PvpTalentSlotsResponse>;
//#endregion
export { PlayableClassIndexResponse as a, PvpTalentSlotsResponse as c, pvpTalentSlots as i, playableClassIndex as n, PlayableClassMediaResponse as o, playableClassMedia as r, PlayableClassResponse as s, playableClass as t };
//# sourceMappingURL=index-D6FwaRSR2.d.ts.map