@blizzard-api/wow
Version:
A series of helpers to interact with the World of Warcraft Blizzard API
71 lines (70 loc) • 2.47 kB
TypeScript
import { BaseSearchParameters, KeyBase, Locales, MediaAsset, NameId, Resource, ResponseBase, SearchResponseWithoutResults } from "@blizzard-api/core";
//#region src/spell/types.d.ts
/**
* The response for a spell media.
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
*/
interface SpellMediaResponse extends ResponseBase {
assets: Array<MediaAsset>;
id: number;
}
/**
* The response for a spell.
* @see {@link https://develop.battle.net/documentation/world-of-warcraft/game-data-apis}
*/
interface SpellResponse extends NameId, ResponseBase {
description: null | string;
media: Media;
}
/**
* The search parameters for spells.
* @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 SpellSearchParameters extends BaseSearchParameters {
locale: Locales;
name: string;
}
/**
* The response for a spell search.
* @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 SpellSearchResponse extends SearchResponseWithoutResults {
results: Array<SpellSearchResponseItem>;
}
interface Media extends KeyBase {
id: number;
}
interface SpellSearchResponseItem extends KeyBase {
data: {
id: number;
media: {
id: number;
};
name: Record<Locales, string>;
};
}
//#endregion
//#region src/spell/index.d.ts
/**
* Get a spell by ID.
* @param spellId The spell ID.
* @returns The spell. See {@link SpellResponse}.
*/
declare function spell(spellId: number): Resource<SpellResponse>;
/**
* Get spell media by ID.
* @param spellId The spell ID.
* @returns The spell media. See {@link SpellMediaResponse}.
*/
declare function spellMedia(spellId: number): Resource<SpellMediaResponse>;
/**
* Get a spell search.
* @param options The spell search options. See {@link SpellSearchParameters}.
* @returns The spell search. See {@link SpellSearchResponse}.
*/
declare function spellSearch(options: SpellSearchParameters): Resource<SpellSearchResponse, Omit<SpellSearchParameters, 'locale' | 'name'>>;
//#endregion
export { SpellResponse as a, SpellMediaResponse as i, spellMedia as n, SpellSearchParameters as o, spellSearch as r, SpellSearchResponse as s, spell as t };
//# sourceMappingURL=index-tMR2Nejl2.d.ts.map