@blizzard-api/classic-wow
Version:
A series of helpers to interact with the World of Warcraft Classic Blizzard API
90 lines (89 loc) • 2.96 kB
TypeScript
import { BlizzardNamespaces, Character, NameIdKey, Resource, ResponseBase } from "@blizzard-api/core";
//#region src/character-achievements/types.d.ts
interface CharacterAchievementsSummaryResponse extends ResponseBase {
achievements: Array<Achievement>;
category_progress: Array<CategoryProgress>;
character: Character;
recent_events: Array<RecentEvent>;
total_points: number;
total_quantity: number;
}
interface CharacterAchievementStatisticsResponse extends ResponseBase {
categories: Array<Category>;
character: Character;
}
interface Achievement {
achievement: NameIdKey;
completed_timestamp?: number;
criteria?: Criteria;
id: number;
}
interface Category {
id: number;
name: string;
statistics?: Array<Statistic>;
sub_categories?: Array<SubCategory>;
}
interface CategoryProgress {
category: NameIdKey;
points: number;
quantity: number;
}
interface ChildCriterum {
amount?: number;
child_criteria?: Array<ChildCriterum2>;
id: number;
is_completed: boolean;
}
interface ChildCriterum2 {
amount?: number;
child_criteria?: Array<ChildCriterum3>;
id: number;
is_completed: boolean;
}
interface ChildCriterum3 {
amount?: number;
id: number;
is_completed: boolean;
}
interface Criteria {
amount?: number;
child_criteria?: Array<ChildCriterum>;
id: number;
is_completed: boolean;
}
interface RecentEvent {
achievement: NameIdKey;
timestamp: number;
}
interface Statistic {
description?: null | string;
id: number;
last_updated_timestamp: number;
name: string;
quantity: number;
}
interface SubCategory {
id: number;
name: string;
statistics: Array<Statistic>;
}
//#endregion
//#region src/character-achievements/index.d.ts
/**
* @param namespace The namespace to use. See {@link BlizzardNamespaces}. Note: This API is not supported for classic era realms.
* @param realmSlug The slug of the realm.
* @param characterName The lowercase name of the character.
* @returns a summary of the achievements a character has completed.
*/
declare function characterAchievementsSummary(namespace: Extract<BlizzardNamespaces, 'profile-classic'>, realmSlug: string, characterName: string): Resource<CharacterAchievementsSummaryResponse>;
/**
* @param namespace The namespace to use. See {@link BlizzardNamespaces}. Note: This API is not supported for classic era realms.
* @param realmSlug The slug of the realm.
* @param characterName The lowercase name of the character.
* @returns a character's statistics as they pertain to achievements.
*/
declare function characterAchievementStatistics(namespace: Extract<BlizzardNamespaces, 'profile-classic'>, realmSlug: string, characterName: string): Resource<CharacterAchievementStatisticsResponse>;
//#endregion
export { CharacterAchievementsSummaryResponse as i, characterAchievementsSummary as n, CharacterAchievementStatisticsResponse as r, characterAchievementStatistics as t };
//# sourceMappingURL=index-BZ8QSRSe.d.ts.map