UNPKG

@barbarbar338/bhapi

Version:

Brawlhalla API wrapper for NodeJS and web

205 lines 5.39 kB
import { AxiosRequestConfig, AxiosResponse } from "axios"; export type QueueItem = { config: AxiosRequestConfig; path: string; resolve: (value: AxiosResponse) => void; reject: (reason?: any) => void; }; export type CustomError = Error & { retryAfterMs: number; isRateLimitError: boolean; }; export type SteamData = { name: string; steam_id: string; steam_url: string; }; export type BHIDFromSteamID = { name: string; brawlhalla_id: number; }; export type GloryData = { brawlhalla_id: number; name: string; bestElo: number; eloReset: number; glory: { wins: number; rating: number; }; }; export type RankingsOptions<T extends RankingTypes = "1v1"> = { type: T; region: RankedRegion; page: string | number; }; export type RankingResponse<T extends RankingTypes = "1v1"> = T extends "1v1" ? Ranking1v1[] : T extends "2v2" ? Ranking2v2[] : T extends "seasonal" ? RankingSeasonal[] : never; export type PlayerStats = { brawlhalla_id: number; name: string; xp: number; level: number; xp_percentage: number; games: number; wins: number; damagebomb: string; damagemine: string; damagespikeball: string; damagesidekick: string; hitsnowball: number; kobomb: number; komine: number; kospikeball: number; kosidekick: number; kosnowball: number; legends: LegendStats[]; clan: PlayerClan | undefined; }; export type LegendStats = { legend_id: number; legend_name_key: string; damagedealt: string; damagetaken: string; kos: number; falls: number; suicides: number; teamkos: number; matchtime: number; games: number; wins: number; damageunarmed: string; damagethrownitem: string; damageweaponone: string; damageweapontwo: string; damagegadgets: string; kounarmed: number; kothrownitem: number; koweaponone: number; koweapontwo: number; kogadgets: number; timeheldweaponone: number; timeheldweapontwo: number; xp: number; level: number; xp_percentage: number; }; export type PlayerClan = { clan_name: string; clan_id: number; clan_xp: string; personal_xp: number; }; export type PlayerRanked = PlayerSeason & { name: string; brawlhalla_id: number; global_rank: number; region_rank: number; legends: LegendRanked[]; "2v2": T2v2Team[]; }; export type PlayerSeason = { rating: number; peak_rating: number; tier: RankedTier; wins: number; games: number; region: RankedRegion; }; export type LegendRanked = { legend_id: number; legend_name_key: string; rating: number; peak_rating: number; tier: RankedTier; wins: number; games: number; }; export type T2v2Team = { brawlhalla_id_one: number; brawlhalla_id_two: number; rating: number; peak_rating: number; tier: RankedTier; wins: number; games: number; teamname: string; region: RankedRegion; global_rank: number; }; export type Clan = { clan_id: number; clan_name: string; clan_create_date: number; clan_xp: string; clan: ClanMember[]; }; export type ClanMember = { brawlhalla_id: number; name: string; rank: ClanRank; join_date: number; xp: number; }; export type Ranking = { rank: number; rating: number; tier: RankedTier; games: number; wins: number; region: RankedRegion; peak_rating: number; }; export type Ranking1v1 = Ranking & { name: string; brawlhalla_id: number; best_legend: number; best_legend_games: number; best_legend_wins: number; twitch_name?: string; }; export type Ranking2v2 = Ranking & { teamname: string; brawlhalla_id_one: number; brawlhalla_id_two: number; twitch_name_one?: string; twitch_name_two?: string; }; export type RankingSeasonal = Ranking & { name: string; brawlhalla_id: number; }; export type StaticAllLegends = { legend_id: number; legend_name_key: string; bio_name: string; bio_aka: string; weapon_one: string; weapon_two: string; strength: string; dexterity: string; defense: string; speed: string; }; export type StaticLegend = StaticAllLegends & { bio_quote: string; bio_quote_about_attrib: string; bio_quote_from: string; bio_quote_from_attrib: string; bio_text: string; bot_name: string; }; export type ClanRank = "Leader" | "Officer" | "Member" | "Recruit"; export type RankedTier = "Diamond" | "Platinum 5" | "Platinum 4" | "Platinum 3" | "Platinum 2" | "Platinum 1" | "Gold 5" | "Gold 4" | "Gold 3" | "Gold 2" | "Gold 1" | "Gold 0" | "Silver 5" | "Silver 4" | "Silver 3" | "Silver 2" | "Silver 1" | "Silver 0" | "Bronze 5" | "Bronze 4" | "Bronze 3" | "Bronze 2" | "Bronze 1" | "Bronze 0" | "Tin 5" | "Tin 4" | "Tin 3" | "Tin 2" | "Tin 1" | "Tin 0"; export type RankedRegion = "all" | "ALL" | "us-e" | "US-E" | "eu" | "EU" | "sea" | "SEA" | "brz" | "BRZ" | "aus" | "AUS" | "us-w" | "US-W" | "jpn" | "JPN"; export type RankingTypes = "1v1" | "2v2" | "seasonal"; export declare class BHAPIError<T> extends Error { code: string; status: number; details: T; constructor(message: string, options: { code: string; status: number; details: T; }); } //# sourceMappingURL=types.d.ts.map