import { Character, Faction, KeyBase, NameId, Resource, ResponseBase } from "@blizzard-api/core";

//#region src/character-pvp/types.d.ts
interface CharacterPvpBracketStatisticsResponse extends ResponseBase {
  bracket: Bracket;
  character: Character;
  faction: Faction;
  rating: number;
  season: KeyBase & {
    id: number;
  };
  season_match_statistics: MatchStatistics;
  tier: KeyBase & {
    id: number;
  };
  weekly_match_statistics: MatchStatistics;
}
interface CharacterPvpSummaryResponse extends ResponseBase {
  character: Character;
  honor_level: number;
  honorable_kills: number;
  pvp_map_statistics: Array<PvpMapStatistic>;
}
interface Bracket {
  id: number;
  type: string;
}
interface MatchStatistics {
  lost: number;
  played: number;
  won: number;
}
interface PvpMapStatistic {
  match_statistics: MatchStatistics;
  world_map: NameId;
}
//#endregion
//#region src/character-pvp/index.d.ts
/**
 * @param realmSlug The slug of the realm.
 * @param characterName The lowercase name of the character.
 * @param bracketId The ID of the PvP bracket.
 * @returns a PvP bracket statistics for a character.
 */
declare function characterPvpBracketStatistics(realmSlug: string, characterName: string, bracketId: '2v2' | '3v3' | 'rbg' | `shuffle-${string}-${string}`): Resource<CharacterPvpBracketStatisticsResponse>;
/**
 * @param realmSlug The slug of the realm.
 * @param characterName The lowercase name of the character.
 * @returns a PvP summary for a character.
 */
declare function characterPvpSummary(realmSlug: string, characterName: string): Resource<CharacterPvpSummaryResponse>;
//#endregion
export { CharacterPvpSummaryResponse as i, characterPvpSummary as n, CharacterPvpBracketStatisticsResponse as r, characterPvpBracketStatistics as t };
//# sourceMappingURL=index-DiTdypID.d.ts.map