@blizzard-api/classic-wow
Version:
A series of helpers to interact with the World of Warcraft Classic Blizzard API
51 lines (50 loc) • 1.78 kB
TypeScript
import { BlizzardNamespaces, Character, NameId, NameIdKey, Resource, ResponseBase } from "@blizzard-api/core";
//#region src/character-specialization/types.d.ts
interface CharacterSpecializationsSummaryResponse extends ResponseBase {
active_specialization?: NameIdKey;
character: Character;
specialization_groups: Array<SpecializationGroup>;
specializations?: Array<ClassicProgressionSpecialization>;
}
interface ClassicProgressionSpecialization {
specialization: NameIdKey;
specialization_name: string;
talents?: Array<TalentElement>;
}
interface SpecializationGroup {
glyphs?: Array<NameId>;
is_active: boolean;
specializations?: Array<SpecializationGroupItem>;
}
interface SpecializationGroupItem {
specialization_name: string;
spent_points: number;
talents: Array<TalentElement>;
}
interface SpellTooltip {
cast_time: string;
cooldown?: string;
description: string;
power_cost?: null | string;
range?: string;
spell: NameId;
}
interface TalentElement {
spell_tooltip: SpellTooltip;
talent: NameId | {
id: number;
};
talent_rank?: number;
}
//#endregion
//#region src/character-specialization/index.d.ts
/**
* @param namespace The namespace to use. See {@link BlizzardNamespaces}.
* @param realmSlug The slug of the realm.
* @param characterName The lowercase name of the character.
* @returns a summary of a character's specializations.
*/
declare function characterSpecializationsSummary(namespace: Extract<BlizzardNamespaces, 'profile-classic1x' | 'profile-classic'>, realmSlug: string, characterName: string): Resource<CharacterSpecializationsSummaryResponse>;
//#endregion
export { CharacterSpecializationsSummaryResponse as n, characterSpecializationsSummary as t };
//# sourceMappingURL=index-DmVmLB_p.d.ts.map