battlenet-api-types
Version:
Typescript interfaces for Blizzard's Battle.net API
75 lines (66 loc) • 1.79 kB
text/typescript
/**
* @categoryDescription Character Achievements API
* Character Achievements API
* @module
*/
import { linksStruct, refStruct, characterRef, hrefStruct } from "../shared";
/**
* Character Achievements Summary
*
* /profile/wow/character/{realmSlug}/{characterName}/achievements
* @category Character Achievements API
*/
export interface APICharacterAchievementsSummary {
_links: linksStruct;
total_quantity: number;
total_points: number;
achievements?: characterAchievement[];
character: characterRef;
statistics: hrefStruct;
}
/**
* Part of {@link APICharacterAchievementsSummary}
* @category Character Achievements API
*/
export interface characterAchievement {
id: number;
achievement: refStruct;
criteria: characterAchievementCriteria[]
completed_timestamp: number;
}
/**
* Part of {@link APICharacterAchievementsSummary}
* @category Character Achievements API
*/
export interface characterAchievementCriteria
{
id: number;
is_completed: boolean;
child_criteria?: characterAchievementCriteria[];
}
/**
* Character Achievements Statistics
*
* /profile/wow/character/{realmSlug}/{characterName}/achievements/statistics
* @category Character Achievements API
*/
export interface APICharacterAchievementsStatistics {
_links: linksStruct;
character: characterRef;
categories?: characterAchievementStatisticsCategory[];
}
/**
* @category Character Achievements API
*/
export interface characterAchievementStatisticsCategory {
id: number;
name: string;
statistics?: {
id: number;
name: string;
last_updated_timestamp: number;
description?: string;
quantity: number;
}[];
sub_categories?: characterAchievementStatisticsCategory[];
}