/** * Divisions */ declare enum Divisions { I = "I", II = "II", III = "III", IV = "IV" } declare enum GameModes { /** * Classic Summoner's Rift and Twisted Treeline games */ CLASSIC = "CLASSIC", /** * Dominion/Crystal Scar games */ ODIN = "ODIN", /** * ARAM games */ ARAM = "ARAM", /** * Tutorial games */ TUTORIAL = "TUTORIAL", /** * URF games */ URF = "URF", /** * Doom Bot games */ DOOMBOTSTEEMO = "DOOMBOTSTEEMO", /** * One for All games */ ONEFORALL = "ONEFORALL", /** * Ascension games */ ASCENSION = "ASCENSION", /** * Snowdown Showdown games */ FIRSTBLOOD = "FIRSTBLOOD", /** * Legend of the Poro King games */ KINGPORO = "KINGPORO", /** * Nexus Siege games */ SIEGE = "SIEGE", /** * Blood Hunt Assassin games */ ASSASSINATE = "ASSASSINATE", /** * All Random Summoner's Rift games */ ARSR = "ARSR", /** * Dark Star: Singularity games */ DARKSTAR = "DARKSTAR", /** * Star Guardian Invasion games */ STARGUARDIAN = "STARGUARDIAN", /** * PROJECT: Hunters games */ PROJECT = "PROJECT", /** * Nexus Blitz games */ GAMEMODEX = "GAMEMODEX", /** * Odyssey: Extraction games */ ODYSSEY = "ODYSSEY" } declare enum GameTypes { /** * Custom games */ CUSTOM_GAME = "CUSTOM_GAME", /** * Tutorial games */ TUTORIAL_GAME = "TUTORIAL_GAME", /** * All other games */ MATCHED_GAME = "MATCHED_GAME" } declare enum Games { LOL = "lol", TFT = "tft" } /** * Queues */ declare enum Queues { RANKED_SOLO_5x5 = "RANKED_SOLO_5x5", RANKED_TFT = "RANKED_TFT", RANKED_FLEX_SR = "RANKED_FLEX_SR", RANKED_FLEX_TT = "RANKED_FLEX_TT" } declare enum Seasons { PRESEASON_3 = 0, SEASON_3 = 1, PRESEASON_2014 = 2, SEASON_2014 = 3, PRESEASON_2015 = 4, SEASON_2015 = 5, PRESEASON_2016 = 6, SEASON_2016 = 7, PRESEASON_2017 = 8, SEASON_2017 = 9, PRESEASON_2018 = 10, SEASON_2018 = 11 } /** * Tiers */ declare enum Tiers { CHALLENGER = "CHALLENGER", GRANDMASTER = "GRANDMASTER", MASTER = "MASTER", DIAMOND = "DIAMOND", EMERALD = "EMERALD", PLATINUM = "PLATINUM", GOLD = "GOLD", SILVER = "SILVER", BRONZE = "BRONZE", IRON = "IRON" } /** * Champions - Used as fallback */ declare enum Champions { EMPTY_CHAMPION = 0, ANNIE = 1, OLAF = 2, GALIO = 3, TWISTED_FATE = 4, XIN_ZHAO = 5, URGOT = 6, LEBLANC = 7, VLADIMIR = 8, FIDDLESTICKS = 9, KAYLE = 10, MASTER_YI = 11, ALISTAR = 12, RYZE = 13, SION = 14, SIVIR = 15, SORAKA = 16, TEEMO = 17, TRISTANA = 18, WARWICK = 19, NUNU = 20, MISS_FORTUNE = 21, ASHE = 22, TRYNDAMERE = 23, JAX = 24, MORGANA = 25, ZILEAN = 26, SINGED = 27, EVELYNN = 28, TWITCH = 29, KARTHUS = 30, CHOGATH = 31, AMUMU = 32, RAMMUS = 33, ANIVIA = 34, SHACO = 35, DR_MUNDO = 36, SONA = 37, KASSADIN = 38, IRELIA = 39, JANNA = 40, GANGPLANK = 41, CORKI = 42, KARMA = 43, TARIC = 44, VEIGAR = 45, TRUNDLE = 48, SWAIN = 50, CAITLYN = 51, BLITZCRANK = 53, MALPHITE = 54, KATARINA = 55, NOCTURNE = 56, MAOKAI = 57, RENEKTON = 58, JARVAN_IV = 59, ELISE = 60, ORIANNA = 61, MONKEY_KING = 62, BRAND = 63, LEE_SIN = 64, VAYNE = 67, RUMBLE = 68, CASSIOPEIA = 69, SKARNER = 72, HEIMERDINGER = 74, NASUS = 75, NIDALEE = 76, UDYR = 77, POPPY = 78, GRAGAS = 79, PANTHEON = 80, EZREAL = 81, MORDEKAISER = 82, YORICK = 83, AKALI = 84, KENNEN = 85, GAREN = 86, LEONA = 89, MALZAHAR = 90, TALON = 91, RIVEN = 92, KOG_MAW = 96, SHEN = 98, LUX = 99, XERATH = 101, SHYVANA = 102, AHRI = 103, GRAVES = 104, FIZZ = 105, VOLIBEAR = 106, RENGAR = 107, VARUS = 110, NAUTILUS = 111, VIKTOR = 112, SEJUANI = 113, FIORA = 114, ZIGGS = 115, LULU = 117, DRAVEN = 119, HECARIM = 120, KHAZIX = 121, DARIUS = 122, JAYCE = 126, LISSANDRA = 127, DIANA = 131, QUINN = 133, SYNDRA = 134, AURELION_SOL = 136, KAYN = 141, ZOE = 142, ZYRA = 143, KAISA = 145, GNAR = 150, ZAC = 154, YASUO = 157, VELKOZ = 161, TALIYAH = 163, CAMILLE = 164, BRAUM = 201, JHIN = 202, KINDRED = 203, JINX = 222, TAHM_KENCH = 223, LUCIAN = 236, ZED = 238, KLED = 240, EKKO = 245, QIYANA = 246, VI = 254, AATROX = 266, NAMI = 267, AZIR = 268, YUUMI = 350, THRESH = 412, ILLAOI = 420, REKSAI = 421, IVERN = 427, KALISTA = 429, BARD = 432, RAKAN = 497, XAYAH = 498, ORNN = 516, SYLAS = 517, NEEKO = 518, APHELIOS = 523, PYKE = 555, SENNA = 235, SETT = 875, LILLIA = 876, YONE = 777, SAMIRA = 360, SERAPHINE = 147, RELL = 526, VIEGO = 234, GWEN = 887, AKSHAN = 166, VEX = 711, ZERI = 221, RENATA_GLASC = 888, BELVETH = 200, NILAH = 895, KSANTE = 897, MILIO = 902, HWEI = 910, AURORA = 893, AMBESSA = 799, MEL = 800, NAAFIRI = 950, SMOLDER = 901, BRIAR = 233, YUNARA = 804 } /** * Get champion name by id */ declare function getChampionName(champ: number): string; /** * Get champion and by id and return capitalize string */ declare function getChampionNameCapital(champ: number | string): string; declare enum Regions { BRAZIL = "BR1", EU_EAST = "EUN1", EU_WEST = "EUW1", KOREA = "KR", LAT_NORTH = "LA1", LAT_SOUTH = "LA2", AMERICA_NORTH = "NA1", OCEANIA = "OC1", TURKEY = "TR1", RUSSIA = "RU", JAPAN = "JP1", VIETNAM = "VN2", TAIWAN = "TW2", SINGAPORE = "SG2", MIDDLE_EAST = "ME1", PBE = "PBE1" } /** * As per RIOT Api: * - The AMERICAS routing value serves NA, BR, LAN and LAS. * - The ASIA routing value serves KR and JP * - The EUROPE routing value serves EUNE, EUW, TR, and RU. * - The SEA routing value serves OCE * Use regionToRegionGroup() to convert them. */ declare enum RegionGroups { ASIA = "ASIA", AMERICAS = "AMERICAS", EUROPE = "EUROPE", SEA = "SEA" } type AccountAPIRegionGroups = Exclude; declare function regionToRegionGroup(region: Regions): RegionGroups; declare function regionToRegionGroupForAccountAPI(region: Regions): AccountAPIRegionGroups; declare enum RealmServers { BRAZIL = "br", EU_WEST = "euw", KOREA = "kr", LAT_NORTH = "lan", LAT_SOUTH = "las", AMERICA_NORTH = "na", OCEANIA = "oce", TURKEY = "tr", RUSSIA = "ru", JAPAN = "jp", PBE = "pbe" } declare enum DataSeed { BASE = "https://s3-us-west-1.amazonaws.com/riot-developer-portal/seed-data" } declare enum Levels { NONE = "NONE", IRON = "IRON", BRONZE = "BRONZE", SILVER = "SILVER", GOLD = "GOLD", PLATINUM = "PLATINUM", DIAMOND = "DIAMOND", MASTER = "MASTER", GRANDMASTER = "GRANDMASTER", CHALLENGER = "CHALLENGER", HIGHEST_NOT_LEADERBOARD_ONLY = "HIGHEST_NOT_LEADERBOARD_ONLY", HIGHEST = "HIGHEST", LOWEST = "LOWEST" } type constants_AccountAPIRegionGroups = AccountAPIRegionGroups; type constants_Champions = Champions; declare const constants_Champions: typeof Champions; type constants_DataSeed = DataSeed; declare const constants_DataSeed: typeof DataSeed; type constants_Divisions = Divisions; declare const constants_Divisions: typeof Divisions; type constants_GameModes = GameModes; declare const constants_GameModes: typeof GameModes; type constants_GameTypes = GameTypes; declare const constants_GameTypes: typeof GameTypes; type constants_Games = Games; declare const constants_Games: typeof Games; type constants_Levels = Levels; declare const constants_Levels: typeof Levels; type constants_Queues = Queues; declare const constants_Queues: typeof Queues; type constants_RealmServers = RealmServers; declare const constants_RealmServers: typeof RealmServers; type constants_RegionGroups = RegionGroups; declare const constants_RegionGroups: typeof RegionGroups; type constants_Regions = Regions; declare const constants_Regions: typeof Regions; type constants_Seasons = Seasons; declare const constants_Seasons: typeof Seasons; type constants_Tiers = Tiers; declare const constants_Tiers: typeof Tiers; declare const constants_getChampionName: typeof getChampionName; declare const constants_getChampionNameCapital: typeof getChampionNameCapital; declare const constants_regionToRegionGroup: typeof regionToRegionGroup; declare const constants_regionToRegionGroupForAccountAPI: typeof regionToRegionGroupForAccountAPI; declare namespace constants { export { type constants_AccountAPIRegionGroups as AccountAPIRegionGroups, constants_Champions as Champions, constants_DataSeed as DataSeed, constants_Divisions as Divisions, constants_GameModes as GameModes, constants_GameTypes as GameTypes, constants_Games as Games, constants_Levels as Levels, constants_Queues as Queues, constants_RealmServers as RealmServers, constants_RegionGroups as RegionGroups, constants_Regions as Regions, constants_Seasons as Seasons, constants_Tiers as Tiers, constants_getChampionName as getChampionName, constants_getChampionNameCapital as getChampionNameCapital, constants_regionToRegionGroup as regionToRegionGroup, constants_regionToRegionGroupForAccountAPI as regionToRegionGroupForAccountAPI }; } /** * Rate Limiting */ declare class RateLimitDto { /** * The rate limit type, either method, service, or application. method indicates you have exceeded the individual limits for that method. application indicates you have exceeded the total rate limit for your application. service is returned if the service is rate limiting it's connections from the Riot API layer, regardless of your API key's application or method rate limits. * Included in any 429 response where the rate limit was enforced by the API infrastructure. Not included in any 429 response where the rate limit was enforced by the underlying service to which the request was proxied. */ Type?: string; /** * The remaining number of seconds before the rate limit resets. Applies to both user and service rate limits. * Included in any 429 response where the rate limit was enforced by the API infrastructure. Not included in any 429 response where the rate limit was enforced by the underlying service to which the request was proxied. */ RetryAfter?: number; /** * The application rate limits currently being applied to your API key. See the Application Rate Limit Headers section below for more information. */ AppRateLimit: string; /** * The method rate limits currently being applied to your API key. See the Method Rate Limit Headers section below for more information. */ MethodRateLimit: string; /** * The number of calls to a specific method that have been made during a specific rate limit. See the Application Rate Limit Headers section below for more information. */ AppRateLimitCount: string; /** * The number of calls to a specific method that have been made during a specific rate limit. See the Method Rate Limit Headers section below for more information. */ MethodRatelimitCount: string; /** * Trace id */ EdgeTraceId?: string; } declare class ApiResponseDTO { readonly rateLimits?: RateLimitDto; readonly response: T; } declare class SeasonMilestone { requireGradeCounts: Record; rewardMarks: number; bonus: boolean; totalGamesRequires: number; } declare class ChampionMasteryDTO { /** * Is chest granted for this champion or not in current season. */ chestGranted: boolean; /** * Champion level for specified player and champion combination. */ championLevel: number; /** * Total number of champion points for this player and champion combination - they are used to determine championLevel. */ championPoints: number; /** * Champion ID for this entry. */ championId: number; /** * Number of points needed to achieve next level. Zero if player reached maximum champion level for this champion. */ championPointsUntilNextLevel: number; /** * Last time this champion was played by this player - in Unix milliseconds time format. */ lastPlayTime: number; /** * The token earned for this champion to levelup. */ tokensEarned: number; /** * Number of points earned since current level has been achieved. */ championPointsSinceLastLevel: number; /** * @deprecated use puuid instead * Summoner ID for this entry. (Encrypted) */ summonerId: string; /** * Puuid for this entry. (Encrypted) */ puuid: string; markRequiredForNextLevel: number; championSeasonMilestone: number; nextSeasonMilestone: SeasonMilestone; } /** * Champion free rotation response object */ declare class ChampionRotationV3DTO { /** * Champions id list for new players */ readonly freeChampionIdsForNewPlayers: number[]; /** * Champions id list */ readonly freeChampionIds: number[]; /** * Max level to get new players rotation */ readonly maxNewPlayerLevel: number[]; } declare class ChampionsScoreDTO { score: number; } declare class RealmNTO { item: string; rune: string; mastery: string; summoner: string; champion: string; profileicon: string; map: string; language: string; sticker: string; } declare class RealmDTO { n: RealmNTO; v: string; l: string; cdn: string; dd: string; lg: string; css: string; profileiconmax: number; store: string | null | object; } declare class ChampionsDataDragonDetails { version: string; id: string; key: string; name: string; title: string; blurb: string; info: { attack: number; defense: number; magic: number; difficulty: number; }; image: { full: string; sprite: string; group: string; x: number; y: number; w: number; h: number; }; tags: string[]; partype: string; stats: { hp: number; hpperlevel: number; mp: number; mpperlevel: number; movespeed: number; armor: number; armorperlevel: number; spellblock: number; spellblockperlevel: number; attackrange: number; hpregen: number; hpregenperlevel: number; mpregen: number; mpregenperlevel: number; crit: number; critperlevel: number; attackdamage: number; attackdamageperlevel: number; attackspeedperlevel: number; attackspeed: number; }; } declare class ChampionsDataDragonDetailsSolo extends ChampionsDataDragonDetails { lore: string; skins: { id: string; num: number; name: string; chromas: boolean; }[]; allytips: string[]; enemytips: string[]; spells: { id: string; name: string; description: string; tooltip: string; leveltip: { label: string[]; effect: string[]; }; maxrank: number; cooldown: number[]; cooldownBurn: string; cost: number[]; costBurn: string; datavalues: any; effect: (null | number[])[]; effectBurn: null | string; vars: { link: string; coeff: number; key: string; }[]; costType: string; maxammo: string; range: number[]; rangeBurn: string; image: { full: string; sprite: string; group: string; x: number; y: number; w: number; h: number; }; resource: string; }[]; passive: { name: string; description: string; image: { full: string; sprite: string; group: string; x: number; y: number; w: number; h: number; }; }; recommended: { champion: string; title: string; type: string; map: string; mode: string; priority: boolean; blocks: { type: string; maxSummonerLevel: number; items: { id: string; count: number; }[]; }[]; }[]; } declare class ChampionsDataDragon { readonly type: string; readonly format: string; readonly version: string; readonly data: { [key: string]: ChampionsDataDragonDetails; }; } declare class QueuesDataDragonDTO { queueId: number; map: string; description: string | null; notes: string | null; } declare class MapsDataDragonDTO { mapId: string; mapName: string; notes: string; } declare class GameModesDataDragonDTO { gameMode: string; description: string; } declare class MiniSeriesDTO { progress: string; losses: number; target: number; wins: number; } declare class LeagueEntryDTO$1 { queueType: string; summonerName: string; hotStreak: boolean; miniSeries: MiniSeriesDTO; /** * Winning team on Summoners Rift. First placement in Teamfight Tactics. */ wins: number; veteran: boolean; /** * Losing team on Summoners Rift. Second through eighth placement in Teamfight Tactics. */ losses: number; rank: string; leagueId: string; inactive: boolean; freshBlood: boolean; tier: string; /** * @deprecated use puuid instead * Player's summonerId (Encrypted) */ summonerId: string; puuid: string; leaguePoints: number; } declare class LeagueItemDTO { /** * @deprecated summoner name is not present anymore */ summonerName: string; hotStreak: boolean; miniSeries: MiniSeriesDTO; /** * Winning team on Summoners Rift. First placement in Teamfight Tactics. */ wins: number; veteran: boolean; /** * Losing team on Summoners Rift. Second through eighth placement in Teamfight Tactics. */ losses: number; freshBlood: boolean; inactive: boolean; rank: string; /** * @deprecated use puuid instead * Player's summonerId (Encrypted) */ summonerId: string; puuid: string; leaguePoints: number; } declare class LeagueListDTO { leagueId: string; tier: string; entries: LeagueItemDTO[]; queue: string; name: string; } declare class SummonerLeagueDto { queueType: string; summonerName: string; hotStreak: boolean; miniSeries?: MiniSeriesDTO; /** * Winning team on Summoners Rift. First placement in Teamfight Tactics. */ wins: number; veteran: boolean; /** * Losing team on Summoners Rift. Second through eighth placement in Teamfight Tactics. */ losses: number; rank: string; leagueId: string; puuid: string; inactive: boolean; freshBlood: boolean; tier: string; /** * @deprecated use puuid instead * Player's summonerId (Encrypted) */ summonerId: string; leaguePoints: number; } declare class MatchParticipantsIdentitiesPlayerDto { /** * Platform id */ currentPlatformId: string; /** * Summoner name */ summonerName: string; /** * Match history url */ matchHistoryUri: string; /** * Original platform id */ platformId: string; /** * Player's current accountId (Encrypted) */ currentAccountId: string; /** * Profile icon */ profileIcon: number; /** * Player's summonerId (Encrypted) */ summonerId: string; /** * Player's original accountId (Encrypted) */ accountId: string; } declare class MatchParticipantsIdentitiesDto { /** * Player information */ player: MatchParticipantsIdentitiesPlayerDto; /** * Participant id */ participantId: number; } declare class BannedChampion { /** * Turn during which the champion was banned. */ pickTurn: number; /** * Banned championId. */ championId: number; /** * The ID of the team that banned the champion */ teamId?: number; } declare class MatchTeamsDto { /** * Flag indicating whether or not the team scored the first Dragon kill. */ firstDragon: boolean; /** * Flag indicating whether or not the team destroyed the first inhibitor. */ firstInhibitor: boolean; /** * If match queueId has a draft, contains banned champion data, otherwise empty. */ bans: BannedChampion[]; /** * Number of times the team killed Baron. */ baronKills: number; /** * Flag indicating whether or not the team scored the first Rift Herald kill. */ firstRiftHerald: boolean; /** * Flag indicating whether or not the team scored the first Baron kill. */ firstBaron: boolean; /** * Number of times the team killed Rift Herald */ riftHeraldKills: number; /** * Flag indicating whether or not the team scored the first blood. */ firstBlood: boolean; /** * 100 for blue side. 200 for red side. */ teamId: number; /** * Flag indicating whether or not the team destroyed the first tower. */ firstTower: boolean; /** * Number of times the team killed Vilemaw. */ vilemawKills: number; /** * Number of inhibitors the team destroyed. */ inhibitorKills: number; /** * Number of towers the team destroyed. */ towerKills: number; /** * For Dominion matches, specifies the points the team had at game end. */ dominionVictoryScore: number; /** * Boolean win */ win: boolean; /** * Number of times the team killed Dragon. */ dragonKills: number; } /** * Participants stats */ declare class MatchParticipantsStatsDto { /** * firstBloodAssist */ firstBloodAssist: boolean; /** * visionScore */ visionScore: number; /** * magicDamageDealtToChampions */ magicDamageDealtToChampions: number; /** * damageDealtToObjectives */ damageDealtToObjectives: number; /** * totalTimeCrowdControlDealt */ totalTimeCrowdControlDealt: number; /** * longestTimeSpentLiving */ longestTimeSpentLiving: number; /** * Post game rune stats. */ perk1Var1: number; /** * Post game rune stats. */ perk1Var3: number; /** * Post game rune stats. */ perk1Var2: number; /** * tripleKills */ tripleKills: number; /** * Post game rune stats. */ perk3Var3: number; /** * nodeNeutralizeAssist */ nodeNeutralizeAssist: number; /** * Post game rune stats. */ perk3Var2: number; /** * playerScore9 */ playerScore9: number; /** * playerScore8 */ playerScore8: number; /** * kills */ kills: number; /** * playerScore1 */ playerScore1: number; /** * playerScore0 */ playerScore0: number; /** * playerScore3 */ playerScore3: number; /** * playerScore2 */ playerScore2: number; /** * playerScore5 */ playerScore5: number; /** * playerScore4 */ playerScore4: number; /** * playerScore7 */ playerScore7: number; /** * playerScore6 */ playerScore6: number; /** * Post game rune stats. */ perk5Var1: number; /** * Post game rune stats. */ perk5Var3: number; /** * Post game rune stats. */ perk5Var2: number; /** * totalScoreRank */ totalScoreRank: number; /** * neutralMinionsKilled */ neutralMinionsKilled: number; /** * damageDealtToTurrets */ damageDealtToTurrets: number; /** * physicalDamageDealtToChampions */ physicalDamageDealtToChampions: number; /** * nodeCapture */ nodeCapture: number; /** * largestMultiKill */ largestMultiKill: number; /** * Post game rune stats. */ perk2Var2: number; /** * Post game rune stats. */ perk2Var3: number; /** * totalUnitsHealed */ totalUnitsHealed: number; /** * Post game rune stats. */ perk2Var1: number; /** * Post game rune stats. */ perk4Var1: number; /** * Post game rune stats. */ perk4Var2: number; /** * Post game rune stats. */ perk4Var3: number; /** * wardsKilled */ wardsKilled: number; /** * largestCriticalStrike */ largestCriticalStrike: number; /** * largestKillingSpree */ largestKillingSpree: number; /** * quadraKills */ quadraKills: number; /** * teamObjective */ teamObjective: number; /** * magicDamageDealt */ magicDamageDealt: number; /** * item2 */ item2: number; /** * item3 */ item3: number; /** * item0 */ item0: number; /** * neutralMinionsKilledTeamJungle */ neutralMinionsKilledTeamJungle: number; /** * item6 */ item6: number; /** * item4 */ item4: number; /** * item5 */ item5: number; /** * Primary path rune. */ perk1: number; /** * Primary path keystone rune. */ perk0: number; /** * Primary path rune. */ perk3: number; /** * Primary path rune. */ perk2: number; /** * Secondary path rune. */ perk5: number; /** * Secondary path rune. */ perk4: number; /** * Post game rune stats. */ perk3Var1: number; /** * damageSelfMitigated */ damageSelfMitigated: number; /** * magicalDamageTaken */ magicalDamageTaken: number; /** * firstInhibitorKill */ firstInhibitorKill: boolean; /** * trueDamageTaken */ trueDamageTaken: number; /** * nodeNeutralize */ nodeNeutralize: number; /** * assists */ assists: number; /** * combatPlayerScore */ combatPlayerScore: number; /** * Primary rune path */ perkPrimaryStyle: number; /** * goldSpent */ goldSpent: number; /** * trueDamageDealt */ trueDamageDealt: number; /** * participantId */ participantId: number; /** * totalDamageTaken */ totalDamageTaken: number; /** * physicalDamageDealt */ physicalDamageDealt: number; /** * sightWardsBoughtInGame */ sightWardsBoughtInGame: number; /** * totalDamageDealtToChampions */ totalDamageDealtToChampions: number; /** * physicalDamageTaken */ physicalDamageTaken: number; /** * totalPlayerScore */ totalPlayerScore: number; /** * win */ win: boolean; /** * objectivePlayerScore */ objectivePlayerScore: number; /** * totalDamageDealt */ totalDamageDealt: number; /** * item1 */ item1: number; /** * neutralMinionsKilledEnemyJungle */ neutralMinionsKilledEnemyJungle: number; /** * deaths */ deaths: number; /** * wardsPlaced */ wardsPlaced: number; /** * Secondary rune path */ perkSubStyle: number; /** * turretKills */ turretKills: number; /** * firstBloodKill */ firstBloodKill: boolean; /** * trueDamageDealtToChampions */ trueDamageDealtToChampions: number; /** * goldEarned */ goldEarned: number; /** * killingSprees */ killingSprees: number; /** * unrealKills */ unrealKills: number; /** * altarsCaptured */ altarsCaptured: number; /** * firstTowerAssist */ firstTowerAssist: boolean; /** * firstTowerKill */ firstTowerKill: boolean; /** * champLevel */ champLevel: number; /** * doubleKills */ doubleKills: number; /** * nodeCaptureAssist */ nodeCaptureAssist: number; /** * inhibitorKills */ inhibitorKills: number; /** * firstInhibitorAssist */ firstInhibitorAssist: boolean; /** * Post game rune stats. */ perk0Var1: number; /** * Post game rune stats. */ perk0Var2: number; /** * Post game rune stats. */ perk0Var3: number; /** * visionWardsBoughtInGame */ visionWardsBoughtInGame: number; /** * altarsNeutralized */ altarsNeutralized: number; /** * pentaKills */ pentaKills: number; /** * totalHeal */ totalHeal: number; /** * totalMinionsKilled */ totalMinionsKilled: number; /** * timeCCingOthers */ timeCCingOthers: number; } /** * Participant runes */ declare class MatchParticipantsRuneDto { runeId: number; rank: number; } interface IMatchParticipantsTimeLineMap { [key: string]: number; } declare class MatchParticipantsTimelineDto { /** * Participant's calculated lane. MID and BOT are legacy values. (Legal values: MID, MIDDLE, TOP, JUNGLE, BOT, BOTTOM) */ lane: string; /** * Participant id */ participantId: number; /** * Participant's calculated role. (Legal values: DUO, NONE, SOLO, DUO_CARRY, DUO_SUPPORT) */ role: string; /** * Creep score difference versus the calculated lane opponent(s) for a specified period. */ csDiffPerMinDeltas?: IMatchParticipantsTimeLineMap; /** * Gold for a specified period. */ goldPerMinDeltas?: IMatchParticipantsTimeLineMap; /** * Experience difference versus the calculated lane opponent(s) for a specified period. */ xpDiffPerMinDeltas?: IMatchParticipantsTimeLineMap; /** * Creeps for a specified period. */ creepsPerMinDeltas?: IMatchParticipantsTimeLineMap; /** * Experience change for a specified period */ xpPerMinDeltas?: IMatchParticipantsTimeLineMap; /** * Damage taken difference versus the calculated lane opponent(s) for a specified period. */ damageTakenDiffPerMinDeltas?: IMatchParticipantsTimeLineMap; /** * Damage taken for a specified period. */ damageTakenPerMinDeltas?: IMatchParticipantsTimeLineMap; } /** * Match participant mastery */ declare class MatchParticipantsMasteryDto { masteryId: number; rank: number; } /** * Participant */ declare class MatchParticipantDTO { /** * Participant statistics. */ stats: MatchParticipantsStatsDto; /** * Participant id */ participantId: number; /** * List of legacy Rune information. Not included for matches played with Runes Reforged. */ runes: MatchParticipantsRuneDto[]; /** * Participant timeline data. */ timeline: MatchParticipantsTimelineDto; /** * 100 for blue side. 200 for red side. */ teamId: number; /** * Second Summoner Spell id. */ spell2Id: number; /** * List of legacy Mastery information. Not included for matches played with Runes Reforged. */ masteries: MatchParticipantsMasteryDto; /** * Highest ranked tier achieved for the previous season in a specific subset of queueIds, if any, otherwise null.Used to display border in game loading screen. Please refer to the Ranked Info documentation. (Legal values: CHALLENGER, MASTER, DIAMOND, PLATINUM, GOLD, SILVER, BRONZE, UNRANKED) */ highestAchievedSeasonTier: string; /** * First Summoner Spell id. */ spell1Id: number; /** * Champion id */ championId: number; } /** * Match dto */ declare class MatchDto { /** * Please refer to the Game Constants documentation. */ seasonId: number; /** * Please refer to the Game Constants documentation. */ queueId: number; /** * Game id */ gameId: number; /** * Participant identity information. */ participantIdentities: MatchParticipantsIdentitiesDto[]; /** * The major.minor version typically indicates the patch the match was played on. */ gameVersion: string; /** * Platform where the match was played. */ platformId: string; /** * Please refer to the Game Constants documentation. */ gameMode: string; /** * Please refer to the Game Constants documentation. */ mapId: number; /** * Please refer to the Game Constants documentation. */ gameType: string; /** * Team information. */ teams: MatchTeamsDto[]; /** * Participant information. */ participants: MatchParticipantDTO[]; /** * Match duration in seconds. */ gameDuration: number; /** * Designates the timestamp when champion select ended and the loading screen appeared, NOT when the game timer was at 0:00. */ gameCreation: number; /** * Remake */ remake: boolean; } declare namespace MatchV5TimelineDTOs { interface MatchTimelineDto { metadata: Metadata; info: Info; } interface Info { frameInterval: number; frames: Frame[]; gameId: number; participants: Participant[]; } interface Frame { events: Event[]; participantFrames: { [key: string]: ParticipantFrame; }; timestamp: number; } interface Event { realTimestamp?: number; timestamp: number; type: EventType; level?: number; participantId?: number; itemId?: number; levelUpType?: LevelUpType; skillSlot?: number; afterId?: number; beforeId?: number; goldGain?: number; creatorId?: number; wardType?: WardType; assistingParticipantIds?: number[]; bounty?: number; killStreakLength?: number; killerId?: number; position?: Position; victimDamageDealt?: VictimDamage[]; victimDamageReceived?: VictimDamage[]; victimId?: number; killType?: KillType; multiKillLength?: number; buildingType?: BuildingType; laneType?: LaneType; teamId?: number; towerType?: TowerType; gameId?: number; winningTeam?: number; killerTeamId?: number; monsterSubType?: string; monsterType?: string; name?: string; } type BuildingType = 'INHIBITOR_BUILDING' | 'TOWER_BUILDING'; type KillType = 'KILL_ACE' | 'KILL_FIRST_BLOOD' | 'KILL_MULTI'; type LaneType = 'BOT_LANE' | 'MID_LANE' | 'TOP_LANE'; type LevelUpType = 'EVOLVE' | 'NORMAL'; interface Position { x: number; y: number; } type TowerType = 'BASE_TURRET' | 'INNER_TURRET' | 'NEXUS_TURRET' | 'OUTER_TURRET'; type EventType = 'BUILDING_KILL' | 'CHAMPION_KILL' | 'CHAMPION_SPECIAL_KILL' | 'DRAGON_SOUL_GIVEN' | 'ELITE_MONSTER_KILL' | 'GAME_END' | 'ITEM_DESTROYED' | 'ITEM_PURCHASED' | 'ITEM_SOLD' | 'ITEM_UNDO' | 'LEVEL_UP' | 'PAUSE_END' | 'SKILL_LEVEL_UP' | 'TURRET_PLATE_DESTROYED' | 'WARD_KILL' | 'WARD_PLACED'; interface VictimDamage { basic: boolean; magicDamage: number; name: Name; participantId: number; physicalDamage: number; spellName: string; spellSlot: number; trueDamage: number; type: VictimDamageDealtType; } enum Name { Ashe = "Ashe", Braum = "Braum", Darius = "Darius", Evelynn = "Evelynn", Graves = "Graves", Gwen = "Gwen", HAAPChaosTurret = "HA_AP_ChaosTurret", HAAPChaosTurret2 = "HA_AP_ChaosTurret2", HAAPChaosTurret3 = "HA_AP_ChaosTurret3", HAAPOrderTurret = "HA_AP_OrderTurret", HAAPOrderTurret3 = "HA_AP_OrderTurret3", HAChaosMinionMelee = "HA_ChaosMinionMelee", HAChaosMinionRanged = "HA_ChaosMinionRanged", HAChaosMinionSiege = "HA_ChaosMinionSiege", HAChaosMinionSuper = "HA_ChaosMinionSuper", HAOrderMinionMelee = "HA_OrderMinionMelee", HAOrderMinionRanged = "HA_OrderMinionRanged", HAOrderMinionSiege = "HA_OrderMinionSiege", HAOrderMinionSuper = "HA_OrderMinionSuper", Jax = "Jax", Jinx = "Jinx", Kassadin = "Kassadin", Khazix = "Khazix", Lissandra = "Lissandra", Nami = "Nami", Nidalee = "Nidalee", Pyke = "Pyke", SRUAPTurretChaos1 = "SRUAP_Turret_Chaos1", SRUAPTurretOrder1 = "SRUAP_Turret_Order1", SRUChaosMinionMelee = "SRU_ChaosMinionMelee", SRUChaosMinionRanged = "SRU_ChaosMinionRanged", SRUChaosMinionSiege = "SRU_ChaosMinionSiege", SRUKrug = "SRU_Krug", SRUKrugMini = "SRU_KrugMini", SRUOrderMinionMelee = "SRU_OrderMinionMelee", SRUOrderMinionRanged = "SRU_OrderMinionRanged", SRUOrderMinionSiege = "SRU_OrderMinionSiege", SRURazorbeakMini = "SRU_RazorbeakMini", Sylas = "Sylas", TwistedFate = "TwistedFate", Varus = "Varus", Vayne = "Vayne", Yone = "Yone" } enum VictimDamageDealtType { Minion = "MINION", Monster = "MONSTER", Other = "OTHER", Tower = "TOWER" } enum WardType { BlueTrinket = "BLUE_TRINKET", ControlWard = "CONTROL_WARD", SightWard = "SIGHT_WARD", Undefined = "UNDEFINED", YellowTrinket = "YELLOW_TRINKET" } interface ParticipantFrame { championStats: { [key: string]: number; }; currentGold: number; damageStats: { [key: string]: number; }; goldPerSecond: number; jungleMinionsKilled: number; level: number; minionsKilled: number; participantId: number; position: Position; timeEnemySpentControlled: number; totalGold: number; xp: number; } interface Participant { participantId: number; puuid: string; } interface Metadata { dataVersion: string; matchId: string; participants: string[]; } } declare namespace MatchV5DTOs { interface MatchDto { metadata: MetadataDto; info: InfoDto; } interface MetadataDto { /** Match data version. */ dataVersion: string; /** Match id. */ matchId: string; /** A list of participant PUUIDs */ participants: string[]; } interface InfoDto { /** Refer to indicate if the game ended in termination. */ endOfGameResult: string; /** Unix timestamp for when the game is created(i.e., the loading screen). */ gameCreation: number; /** Game length in milliseconds. */ gameDuration: number; /** Unix timestamp for when match ends on the game server. This timestamp can occasionally be significantly longer than when the match "ends". The most reliable way of determining the timestamp for the end of the match would be to add the max time played of any participant to the gameStartTimestamp. This field was added to match-v5 in patch 11.20 on Oct 5th, 2021. */ gameEndTimestamp: number; gameId: number; /** Refer to the Game Constants documentation. */ gameMode: string; gameName: string; /** Unix timestamp for when match actually starts. */ gameStartTimestamp: number; gameType: string; /** The first two parts can be used to determine the patch a game was played on. */ gameVersion: string; /** Refer to the Game Constants documentation. */ mapId: number; participants: ParticipantDto[]; /** Platform where the match was played. */ platformId: string; /** Refer to the Game Constants documentation. */ queueId: number; teams: TeamDto[]; /** Tournament code used to generate the match. */ tournamentCode: string; } interface ParticipantDto { assists: number; baitPings: number; baronKills: number; basicPings: number; bountyLevel: number; challenges: ChallengesDto; champExperience: number; champLevel: number; championId: number; championName: string; /** This field is currently only utilized for Kayn's transformations. (Legal values: 0 - None, 1 - Slayer, 2 - Assassin) */ championTransform: number; allInPings: number; assistMePings: number; commandPings: number; retreatPings: number; visionClearedPings: number; consumablesPurchased: number; damageDealtToBuildings: number; damageDealtToObjectives: number; damageDealtToTurrets: number; damageSelfMitigated: number; dangerPings: number; deaths: number; detectorWardsPlaced: number; doubleKills: number; dragonKills: number; eligibleForProgression: boolean; enemyMissingPings: number; enemyVisionPings: number; firstBloodAssist: boolean; firstBloodKill: boolean; firstTowerAssist: boolean; firstTowerKill: boolean; gameEndedInEarlySurrender: boolean; gameEndedInSurrender: boolean; getBackPings: number; goldEarned: number; goldSpent: number; holdPings: number; /** Both individualPosition and teamPosition are computed by the game server and are different versions of the most likely position played by a player. The individualPosition is the best guess for which position the player actually played in isolation of anything else. The teamPosition is the best guess for which position the player actually played if we add the constraint that each team must have one top player, one jungle, one middle, etc. Generally the recommendation is to use the teamPosition field over the individualPosition field. */ individualPosition: Position; inhibitorKills: number; inhibitorTakedowns: number; inhibitorsLost: number; item0: number; item1: number; item2: number; item3: number; item4: number; item5: number; item6: number; itemsPurchased: number; killingSprees: number; kills: number; lane: Lane; largestCriticalStrike: number; largestKillingSpree: number; largestMultiKill: number; longestTimeSpentLiving: number; magicDamageDealt: number; magicDamageDealtToChampions: number; magicDamageTaken: number; /** New interface */ missions: MissionsDto; needVisionPings: number; neutralMinionsKilled: number; nexusKills: number; nexusLost: number; nexusTakedowns: number; objectivesStolen: number; objectivesStolenAssists: number; onMyWayPings: number; participantId: number; pentaKills: number; perks: PerksDto; physicalDamageDealt: number; physicalDamageDealtToChampions: number; physicalDamageTaken: number; profileIcon: number; pushPings: number; puuid: string; quadraKills: number; riotIdName?: string; riotIdGameName?: string; riotIdTagline: string; role: Role; sightWardsBoughtInGame: number; spell1Casts: number; spell2Casts: number; spell3Casts: number; spell4Casts: number; summoner1Casts: number; summoner1Id: number; summoner2Casts: number; summoner2Id: number; /** @deprecated use puuid instead */ summonerId: string; summonerLevel: number; /** @deprecated use riotIdGameName and riotIdTagline instead */ summonerName: string; teamEarlySurrendered: boolean; teamId: number; /** Both individualPosition and teamPosition are computed by the game server and are different versions of the most likely position played by a player. The individualPosition is the best guess for which position the player actually played in isolation of anything else. The teamPosition is the best guess for which position the player actually played if we add the constraint that each team must have one top player, one jungle, one middle, etc. Generally the recommendation is to use the teamPosition field over the individualPosition field. */ teamPosition: Position; timeCCingOthers: number; timePlayed: number; totalAllyJungleMinionsKilled: number; totalDamageDealt: number; totalDamageDealtToChampions: number; totalDamageShieldedOnTeammates: number; totalDamageTaken: number; totalEnemyJungleMinionsKilled: number; totalHeal: number; totalHealsOnTeammates: number; totalMinionsKilled: number; totalTimeCCDealt: number; totalTimeSpentDead: number; totalUnitsHealed: number; tripleKills: number; trueDamageDealt: number; trueDamageDealtToChampions: number; trueDamageTaken: number; turretKills: number; turretTakedowns: number; turretsLost: number; unrealKills: number; visionScore: number; visionWardsBoughtInGame: number; wardsKilled: number; wardsPlaced: number; win: boolean; /** Arena only values (is otherwise set to 0)*/ PlayerScore0: number; PlayerScore1: number; PlayerScore2: number; PlayerScore3: number; PlayerScore4: number; PlayerScore5: number; PlayerScore6: number; PlayerScore7: number; PlayerScore8: number; PlayerScore9: number; PlayerScore10: number; PlayerScore11: number; playerAugment1: number; playerAugment2: number; playerAugment3: number; playerAugment4: number; playerAugment5: number; playerAugment6: number; placement: number; subteamPlacement: number; } interface ChallengesDto { "12AssistStreakCount": number; HealFromMapSources: number; InfernalScalePickup: number; SWARM_DefeatAatrox: number; SWARM_DefeatBriar: number; SWARM_DefeatMiniBosses: number; SWARM_EvolveWeapon: number; SWARM_Have3Passives: number; SWARM_KillEnemy: number; SWARM_PickupGold: number; SWARM_ReachLevel50: number; SWARM_Survive15Min: number; SWARM_WinWith5EvolvedWeapons: number; abilityUses: number; acesBefore15Minutes: number; alliedJungleMonsterKills: number; baronBuffGoldAdvantageOverThreshold?: number; baronTakedowns: number; blastConeOppositeOpponentCount: number; bountyGold: number; buffsStolen: number; completeSupportQuestInTime: number; controlWardTimeCoverageInRiverOrEnemyHalf?: number; controlWardsPlaced: number; damagePerMinute: number; damageTakenOnTeamPercentage: number; dancedWithRiftHerald: number; deathsByEnemyChamps: number; dodgeSkillShotsSmallWindow: number; doubleAces: number; dragonTakedowns: number; earliestBaron?: number; earliestDragonTakedown?: number; earlyLaningPhaseGoldExpAdvantage?: number; effectiveHealAndShielding: number; elderDragonKillsWithOpposingSoul: number; elderDragonMultikills: number; enemyChampionImmobilizations: number; enemyJungleMonsterKills: number; epicMonsterKillsNearEnemyJungler: number; epicMonsterKillsWithin30SecondsOfSpawn: number; epicMonsterSteals: number; epicMonsterStolenWithoutSmite: number; firstTurretKilled: number; firstTurretKilledTime?: number; fistBumpParticipation: number; flawlessAces: number; fullTeamTakedown: number; gameLength: number; getTakedownsInAllLanesEarlyJungleAsLaner?: number; goldPerMinute: number; hadOpenNexus: number; highestCrowdControlScore?: number; immobilizeAndKillWithAlly: number; initialBuffCount: number; initialCrabCount: number; jungleCsBefore10Minutes: number; junglerTakedownsNearDamagedEpicMonster: number; junglerKillsEarlyJungle?: number; kTurretsDestroyedBeforePlatesFall: number; kda: number; killAfterHiddenWithAlly: number; killParticipation?: number; killedChampTookFullTeamDamageSurvived: number; killingSprees: number; killsNearEnemyTurret: number; killsOnOtherLanesEarlyJungleAsLaner?: number; killsOnRecentlyHealedByAramPack: number; killsUnderOwnTurret: number; killsWithHelpFromEpicMonster: number; knockEnemyIntoTeamAndKill: number; landSkillShotsEarlyGame: number; laneMinionsFirst10Minutes: number; laningPhaseGoldExpAdvantage?: number; legendaryCount: number; legendaryItemUsed: number[]; lostAnInhibitor: number; maxCsAdvantageOnLaneOpponent?: number; maxKillDeficit: number; maxLevelLeadLaneOpponent?: number; mejaisFullStackInTime: number; moreEnemyJungleThanOpponent: number; multiKillOneSpell: number; multiTurretRiftHeraldCount: number; multikills: number; multikillsAfterAggressiveFlash: number; mythicItemUsed: number; outerTurretExecutesBefore10Minutes: number; outnumberedKills: number; outnumberedNexusKill: number; perfectDragonSoulsTaken: number; perfectGame: number; pickKillWithAlly: number; playedChampSelectPosition?: number; poroExplosions: number; quickCleanse: number; quickFirstTurret: number; quickSoloKills: number; riftHeraldTakedowns: number; saveAllyFromDeath: number; scuttleCrabKills: number; shortestTimeToAceFromFirstTakedown?: number; skillshotsDodged: number; skillshotsHit: number; snowballsHit: number; soloBaronKills: number; soloKills: number; stealthWardsPlaced: number; survivedSingleDigitHpCount: number; survivedThreeImmobilizesInFight: number; takedownOnFirstTurret: number; takedowns: number; takedownsAfterGainingLevelAdvantage: number; takedownsBeforeJungleMinionSpawn: number; takedownsFirstXMinutes: number; takedownsInAlcove: number; takedownsInEnemyFountain: number; teamBaronKills: number; teamDamagePercentage: number; teamElderDragonKills: number; teamRiftHeraldKills: number; threeWardsOneSweeperCount: number; tookLargeDamageSurvived: number; turretPlatesTaken: number; turretTakedowns: number; turretsTakenWithRiftHerald: number; twentyMinionsIn3SecondsCount: number; twoWardsOneSweeperCount: number; unseenRecalls: number; visionScoreAdvantageLaneOpponent: number; visionScorePerMinute: number; voidMonsterKill: number; wardTakedowns: number; wardTakedownsBefore20M: number; wardsGuarded: number; fastestLegendary?: number; highestChampionDamage?: number; killsOnLanersEarlyJungleAsJungler?: number; highestWardKills?: number; soloTurretsLategame?: number; fasterSupportQuestCompletion?: number; hadAfkTeammate?: number; earliestElderDragon?: number; } /** Not sure what this is about */ /** Value is only set in arena games**/ interface MissionsDto { playerScore0: number; playerScore1: number; playerScore2: number; playerScore3: number; playerScore4: number; playerScore5: number; playerScore6: number; playerScore7: number; playerScore8: number; playerScore9: number; } interface PerksDto { statPerks: PerkStatsDto; styles: PerkStyleDto[]; } interface PerkStatsDto { defense: number; flex: number; offense: number; } interface PerkStyleDto { description: Description; selections: PerkStyleSelectionDto[]; style: number; } interface PerkStyleSelectionDto { perk: number; var1: number; var2: number; var3: number; } interface TeamDto { bans: BanDto[]; objectives: ObjectivesDto; feats: FeatsDto; teamId: number; win: boolean; } interface BanDto { championId: number; pickTurn: number; } interface ObjectivesDto { baron: ObjectiveDto; champion: ObjectiveDto; dragon: ObjectiveDto; inhibitor: ObjectiveDto; riftHerald: ObjectiveDto; tower: ObjectiveDto; horde: ObjectiveDto; atakhan: ObjectiveDto; } interface ObjectiveDto { first: boolean; kills: number; } interface FeatsDto { EPIC_MONSTER_KILL: EpicMonsterKillDto; FIRST_BLOOD: EpicMonsterKillDto; FIRST_TURRET: EpicMonsterKillDto; } interface EpicMonsterKillDto { featState: number; } type Description = "primaryStyle" | "subStyle"; type Position = "" | "Invalid" | "TOP" | "JUNGLE" | "MIDDLE" | "BOTTOM" | "UTILITY"; type Role = "SOLO" | "NONE" | "CARRY" | "SUPPORT"; type Lane = "TOP" | "JUNGLE" | "MIDDLE" | "BOTTOM"; } declare namespace MatchV5ReplaysDTOs { interface MatchReplayDto { total: number; matchFileURLs: string[]; } } declare class MatchListingMatches { /** * Summoner lane */ lane: string; /** * Game identificator */ gameId: number; /** * Champion identificator */ champion: number; /** * Platform id */ platformId: string; /** * Season */ season: number; /** * Queue */ queue: number; /** * Role */ role: string; /** * Timestamp when it was played */ timestamp: number; } declare class MatchListingDto { /** * Matches listing */ matches: MatchListingMatches[]; /** * Total games */ totalGames: number; /** * Start index */ startIndex: number; /** * End index */ endIndex: number; } declare class MatchPositionDto { x: number; y: number; } /** * Match Event DTO */ declare class MatchEventDto { /** * Legal values: CHAMPION_KILL, WARD_PLACED, WARD_KILL, BUILDING_KILL, ELITE_MONSTER_KILL, ITEM_PURCHASED, ITEM_SOLD, ITEM_DESTROYED, ITEM_UNDO, SKILL_LEVEL_UP, ASCENDED_EVENT, CAPTURE_POINT, PORO_KING_SUMMON) */ type: string; participantId: number; timestamp: number; eventType?: string; towerType?: string; teamId?: number; ascendedType?: string; killerId?: number; levelUpType?: string; pointCaptured?: string; assistingParticipantIds?: number[]; wardType?: string; monsterType?: string; skillSlot?: number; victimId?: number; afterId?: number; monsterSubType?: string; laneType?: string; itemId?: number; buildingType?: string; creatorId?: number; position?: MatchPositionDto; beforeId?: number; } declare class MatchParticipantFrameDto { totalGold: number; teamScore: number; participantId: number; level: number; currentGold: number; minionsKilled: number; dominionScore: number; xp: number; jungleMinionsKilled: number; position: MatchPositionDto; } interface IParticipantFrames { [key: string]: MatchParticipantFrameDto; } /** * Match timeline frame */ declare class MatchTimeLineFrameDto { /** * Timestamp */ timestamp: number; /** * Participant frames */ participantFrames: IParticipantFrames; /** * Events */ events: MatchEventDto[]; } /** * Match time line */ declare class MatchTimelineDto { /** * Timeline frames */ frames: MatchTimeLineFrameDto[]; /** * Frame interval */ frameInterval: number; } declare class MatchQueryDTO { /** * Set of champion IDs for filtering the matchlist. */ champion?: Champions | Champions[]; /** * Set of queue IDs for filtering the matchlist. */ queue?: number | number[]; /** * Set of season IDs for filtering the matchlist. */ season?: Seasons | Seasons[]; /** * The end time to use for filtering matchlist specified as epoch milliseconds. If beginTime is specified, but not endTime, then endTime defaults to the the current unix timestamp in milliseconds (the maximum time range limitation is not observed in this specific case). If endTime is specified, but not beginTime, then beginTime defaults to the start of the account's match history returning a 400 due to the maximum time range limitation. If both are specified, then endTime should be greater than beginTime. The maximum time range allowed is one week, otherwise a 400 error code is returned. */ endTime?: number; /** * The begin time to use for filtering matchlist specified as epoch milliseconds. If beginTime is specified, but not endTime, then endTime defaults to the the current unix timestamp in milliseconds (the maximum time range limitation is not observed in this specific case). If endTime is specified, but not beginTime, then beginTime defaults to the start of the account's match history returning a 400 due to the maximum time range limitation. If both are specified, then endTime should be greater than beginTime. The maximum time range allowed is one week, otherwise a 400 error code is returned. */ beginTime?: number; /** * The end index to use for filtering matchlist. If beginIndex is specified, but not endIndex, then endIndex defaults to beginIndex+100. If endIndex is specified, but not beginIndex, then beginIndex defaults to 0. If both are specified, then endIndex must be greater than beginIndex. The maximum range allowed is 100, otherwise a 400 error code is returned. */ endIndex?: number; /** * The begin index to use for filtering matchlist. If beginIndex is specified, but not endIndex, then endIndex defaults to beginIndex+100. If endIndex is specified, but not beginIndex, then beginIndex defaults to 0. If both are specified, then endIndex must be greater than beginIndex. The maximum range allowed is 100, otherwise a 400 error code is returned. */ beginIndex?: number; } declare class CompanionDto { readonly content_ID: string; readonly skin_ID: number; readonly species: string; } declare class TraitDto { /** * Total tiers for the trait. */ tier_total: number; /** * Trait name. */ name: string; /** * Current active tier for the trait. */ tier_current: number; /** * Number of units with this trait. */ num_units: number; /** * Current style for this trait. (0 = No style, 1 = Bronze, 2 = Silver, 3 = Gold, 4 = Chromatic) */ style: number; } declare class UnitDto { /** * Unit tier. */ tier: number; /** * A list of the unit's items. Please refer to the Teamfight Tactics documentation for item ids. */ items: number[]; /** * This field was introduced in patch 9.22 with data_version 2. */ character_id: string; /** * If a unit is chosen as part of the Fates set mechanic, * the chosen trait will be indicated by this field. * Otherwise this field is excluded from the response. */ chosen?: string; /** * Unit name. */ name: string; /** * Unit rarity. This doesn't equate to the unit cost. */ rarity: number; } declare class ParticipantDto { /** * Participant placement upon elimination. */ placement: number; /** * Participant Little Legend level. Note: This is not the number of active units. */ level: number; /** * The round the participant was eliminated in. Note: If the player was eliminated in stage 2-1 their last_round would be 5. */ last_round: number; /** * The number of seconds before the participant was eliminated. */ time_eliminated: number; /** * Participant's companion. */ companion: CompanionDto; /** * A complete list of traits for the participant's active units. */ traits: TraitDto[]; /** * Number of players the participant eliminated. */ players_eliminated: number; /** * Encrypted PUUID. */ puuid: string; /** * Damage the participant dealt to other players. */ total_damage_to_players: number; /** * A list of active units for the participant. */ units: UnitDto[]; /** * Gold left after participant was eliminated. */ gold_left: number; } declare class InfoDto { /** * Unix timestamp. */ readonly game_datetime: number; /** * Participants. */ readonly participants: ParticipantDto[]; /** * Teamfight Tactics set number. */ readonly tft_set_number: number; /** * Teamfight Taxtics game variant */ readonly game_variation: string; /** * Game length in seconds. */ readonly game_length: number; /** * Please refer to the League of Legends documentation. */ readonly queue_id: number; /** * Game client version. */ readonly game_version: string; } declare class MetadataDto { /** * Match data version. */ data_version: string; /** * A list of encrypted participant PUUIDs. */ participants: string[]; /** * Match id. */ match_id: string; } declare class MatchTFTDTO { /** * Match info */ readonly info: InfoDto; /** * Match metadata */ readonly metadata: MetadataDto; } declare class ObserverDTO { /** * Key used to decrypt the spectator grid game data for playback */ encryptionKey: string; } declare class PerksDTO { /** * Primary runes path */ perkStyle: number; /** * IDs of the perks/runes assigned. */ perkIds: number[]; /** * Secondary runes path */ perkSubStyle: number; } declare class GameCustomizationObjectDTO { /** * Category identifier for Game Customization */ category: string; /** * Game Customization content */ content: string; } declare class CurrentGameParticipantDTO { /** * The ID of the profile icon used by this participant */ profileIconId: number; /** * The ID of the champion played by this participant */ championId: number; /** * @deprecated summoner name is not present anymore * The summoner name of this participant */ summonerName: string; /** * : List of Game Customizations */ gameCustomizationObjects: GameCustomizationObjectDTO[]; /** * Flag indicating whether or not this participant is a bot */ bot: boolean; /** * Perks/Runes Reforged Information */ perks: PerksDTO; /** * The ID of the second summoner spell used by this participant */ spell2Id: number; /** * The team ID of this participant, indicating the participant's team */ teamId: number; /** * The ID of the first summoner spell used by this participant */ spell1Id: number; /** * The encrypted puuid of this participant */ puuid: string; /** * The riot ID of this participant */ riotId: string; } declare class CurrentGameInfoDTO { /** * The ID of the game */ gameId: number; /** * The game start time represented in epoch milliseconds */ gameStartTime: number; /** * The ID of the platform on which the game is being played */ platformId: string; /** * The game mode */ gameMode: string; /** * The ID of the map */ mapId: number; /** * The game type */ gameType: string; /** * Banned champion information */ bannedChampions: BannedChampion[]; /** * The observer information */ observers: ObserverDTO; /** * The participant information */ participants: CurrentGameParticipantDTO[]; /** * The amount of time in seconds that has passed since the game started */ gameLength: number; /** * The queue type (queue types are documented on the Game Constants page) */ gameQueueConfigId: number; } declare class ParticipantDTO { /** * The ID of the profile icon used by this participant */ profileIconId: number; /** * The ID of the champion played by this participant */ championId: number; /** * The summoner name of this participant */ summonerName: string; /** * Flag indicating whether or not this participant is a bot */ bot: boolean; /** * The ID of the second summoner spell used by this participant */ spell2Id: number; /** * The team ID of this participant, indicating the participant's team */ teamId: number; /** * The ID of the first summoner spell used by this participant */ spell1Id: number; /** * @deprecated use puuid instead * Encrypted summoner ID of this participant */ summonerId: string; /** * The encrypted puuid of this participant */ puuid: string; /** * The ID of the summoner icon used by this participant */ riotId: string; } declare class FeaturedGameInfo { /** * The ID of the game */ gameId: number; /** * The ID of the platform on which the game is being played */ platformId: string; /** * The game mode (Legal values: CLASSIC, ODIN, ARAM, TUTORIAL, ONEFORALL, ASCENSION, FIRSTBLOOD, KINGPORO) */ gameMode: string; /** * The ID of the map */ mapId: number; /** * The game type (Legal values: CUSTOM_GAME, MATCHED_GAME, TUTORIAL_GAME) */ gameType: string; /** * Banned champion information */ bannedChampions: BannedChampion[]; /** * The observer information */ observers: ObserverDTO; /** * The participant information */ participants: ParticipantDTO[]; /** * The amount of time in seconds that has passed since the game started */ gameLength: number; /** * The queue type (queue types are documented on the Game Constants page) */ gameQueueConfigId: number; } declare class FeaturedGamesDTO { /** * The list of featured games */ gameList: FeaturedGameInfo[]; /** * The suggested interval to wait before requesting FeaturedGames again */ clientRefreshInterval: number; } declare class SpectatorNotAvailableDTO { message: string; response?: any; } declare class TFTChampionsDTO { champion: string; cost: number; traits: string[]; } declare class TFTHexesDto { name: string; description: string; } declare class TFTItemsDTO { id: number; name: string; } declare class TFTTraitsDTO { name: string; innate?: string; description?: string; sets?: number[]; } /** * Lol status service incidents updates translations */ declare class LolStatusIncidentsUpdateTranslations { locale: string; content: string; updated_at: string; } /** * Lol status service incidents update */ declare class LolStatusServiceIncidentsUpdate { severity: string; author: string; created_at: string; updated_at: string; content: string; id: string; translations: LolStatusIncidentsUpdateTranslations; } /** * Lol Status service incident */ declare class LolStatusServiceStatusIncident { /** * Is Active */ active: boolean; /** * Indicent creation date */ created_at: string; /** * Indicent id */ id: number; /** * Updates list */ updates: LolStatusServiceIncidentsUpdate; } /** * Lol Service dto */ declare class LolStatusServiceDTO { /** * Service name */ name: string; /** * Service status */ status: string; /** * Service slug */ slug: string; /** * Service incidents */ indicents: LolStatusServiceStatusIncident; } /** * Lol Status response */ declare class LolStatusDTO { /** * Lol server */ name: string; /** * Server lol key */ region_tag: string; /** * Hostname */ hostname: string; /** * Server short name */ slug: string; /** * Locales */ locales: string[]; /** * Services status */ services: LolStatusServiceDTO; } /** * Lol Status Content dto */ declare class LolStatusContentDTO { /** * Incident or Maintance status language * (e.g. `en_GB`) */ locale: string; /** * Incident or Maintance * (e.g. `Account Transfers Unavailable`) */ content: string; } /** * Lol Service dto */ declare class LolStatusUpdateDTO { /** * ID of the update * (e.g. `7919`) */ id: number; /** * Author of the update * (e.g. `Riot Games`) */ author: string; /** * Is the update notification published * (e.g. `true`) */ publish: boolean; /** * Where is the update notification visible * (e.g. `game, riotstatus`) */ publish_locations: string[]; /** * The update translations * (e.g. `content` and `locale`) * */ translations: LolStatusContentDTO; /** * When was the update created * (e.g. `2020-06-14T00:00:00.000Z`) */ created_at: string; /** * When was the update updated * (e.g. `2020-06-15T00:00:00.000Z`) */ updated_at: string; } /** * Lol Status dto */ declare class LolStatusStatusDTO { /** * Lol incident ID * (e.g. `7919`) */ id: number; /** * Status of the service * (e.g. `scheduled`, `in_progress`, `complete`) */ maintenance_status: string; /** * Severity of the service * (e.g. `info`, `warning`, `critical`) */ incident_severity: string; /** * Title of the service in locale language * (e.g. `Maintenance Notification`) */ titles: LolStatusContentDTO; /** * Updates of the incident or maintenance * (e.g. `publish_locations`, `author`...) */ updates: LolStatusUpdateDTO; /** * When was the incident created * (e.g. `2022-06-15T05:05:22.317047+00:00`) */ created_at: string; /** * When was the incident archived * (e.g. `2022-06-14T04:49:00+00:00`) */ archive_at: string; /** * When was the incident last updated * (e.g. `2022-06-14T04:49:00+00:00`) */ updated_at: string; /** * Which platforms are affected * (e.g. `windows`, `macos`) */ platforms: string[]; } /** * Lol Status Platform Data dto */ declare class LolStatusPlatformDataDTO { /** * Lol Server Region ID * (e.g. `EUW1`) */ id: string; /** * Lol Server Region name * (e.g. `EU West`) */ name: string; /** * Available languages * (e.g. `en_GB`) */ locales: string[]; /** * Lol Server maintenances * (e.g. `titles`) */ maintenances: LolStatusStatusDTO; /** * Lol Server incidents * (e.g. `updates`) */ incidents: LolStatusStatusDTO; } /** * Summoner basic info */ declare class SummonerV4DTO { /** * ID of the summoner icon associated with the summoner. */ readonly profileIconId: number; /** * Encrypted PUUID. Exact length of 78 characters. */ readonly puuid: string; /** * Summoner level associated with the summoner. */ readonly summonerLevel: number; /** * Date summoner was last modified specified as epoch milliseconds. The following events will update this timestamp: profile icon change, playing the tutorial or advanced tutorial, finishing a game, summoner name change */ readonly revisionDate: number; /** * @deprecated use puuid instead * Encrypted summoner ID. Max length 63 characters. */ readonly id: string; /** * @deprecated account ID is not present anymore * Encrypted account ID. Max length 56 characters. */ readonly accountId: string; } declare class ThirdPartyCodeDTO { /** * Verification code (if is null, don't exists) */ code: string | null; } declare namespace LeaderboardDTO { interface Leaderboard { /** Summoner puuid. */ puuid: string; /** Challenge value. */ value: number; /** Rank on leaderboard for particular challenge and rank (limited to Chall, GM, Masters). */ position: number; } } declare namespace ChallengePercentilesDTO { interface ChallengePercentile { /** Percent distribution for a challenge. */ [key: string]: number; } } declare namespace ConfigDTO { interface Config { /** Capstone & challenge id */ id: number; /** Language metadata for challenge. */ localizedNames: localizedNames; state?: string; tracking?: string; /** Unix timestamp. */ startTimestamp?: number; endTimestamp?: number; /** Leaderboard tracking. */ leaderboard: boolean; /** Level demarcation. */ thresholds: thresholdsDto; } interface thresholdsDto { [key: string]: number; } interface localizedNames { [key: string]: localizedName; } interface localizedName { description: string; name: string; shortDescription: string; } } declare namespace PercentilesDTO { interface Percentile { /** All challenges. */ [key: string]: Percentiles; } interface Percentiles { /** Percent distribution for a challenge. */ [key: string]: number; } } declare namespace PlayerDTO { interface Player { /** All challenges for a player. */ challenges: Challenge[]; preferences: Preferences; /** Summed points. */ totalPoints: TotalPoints; /** Information for each category. */ categoryPoints: CategoryPoints; } interface Challenge { challengeId: number; percentile: number; level: string; value: number; achievedTime: number; } interface Preferences { bannerAccent: string; title: string; challengeIds: number[]; } interface TotalPoints { level: string; current: number; max: number; percentile?: number; } interface CategoryPoints { [key: string]: TotalPoints; } } type dto_ApiResponseDTO = ApiResponseDTO; declare const dto_ApiResponseDTO: typeof ApiResponseDTO; type dto_BannedChampion = BannedChampion; declare const dto_BannedChampion: typeof BannedChampion; declare const dto_ChallengePercentilesDTO: typeof ChallengePercentilesDTO; type dto_ChampionMasteryDTO = ChampionMasteryDTO; declare const dto_ChampionMasteryDTO: typeof ChampionMasteryDTO; type dto_ChampionRotationV3DTO = ChampionRotationV3DTO; declare const dto_ChampionRotationV3DTO: typeof ChampionRotationV3DTO; type dto_ChampionsDataDragon = ChampionsDataDragon; declare const dto_ChampionsDataDragon: typeof ChampionsDataDragon; type dto_ChampionsDataDragonDetails = ChampionsDataDragonDetails; declare const dto_ChampionsDataDragonDetails: typeof ChampionsDataDragonDetails; type dto_ChampionsDataDragonDetailsSolo = ChampionsDataDragonDetailsSolo; declare const dto_ChampionsDataDragonDetailsSolo: typeof ChampionsDataDragonDetailsSolo; type dto_ChampionsScoreDTO = ChampionsScoreDTO; declare const dto_ChampionsScoreDTO: typeof ChampionsScoreDTO; type dto_CompanionDto = CompanionDto; declare const dto_CompanionDto: typeof CompanionDto; declare const dto_ConfigDTO: typeof ConfigDTO; type dto_CurrentGameInfoDTO = CurrentGameInfoDTO; declare const dto_CurrentGameInfoDTO: typeof CurrentGameInfoDTO; type dto_CurrentGameParticipantDTO = CurrentGameParticipantDTO; declare const dto_CurrentGameParticipantDTO: typeof CurrentGameParticipantDTO; type dto_FeaturedGameInfo = FeaturedGameInfo; declare const dto_FeaturedGameInfo: typeof FeaturedGameInfo; type dto_FeaturedGamesDTO = FeaturedGamesDTO; declare const dto_FeaturedGamesDTO: typeof FeaturedGamesDTO; type dto_GameCustomizationObjectDTO = GameCustomizationObjectDTO; declare const dto_GameCustomizationObjectDTO: typeof GameCustomizationObjectDTO; type dto_GameModesDataDragonDTO = GameModesDataDragonDTO; declare const dto_GameModesDataDragonDTO: typeof GameModesDataDragonDTO; type dto_IMatchParticipantsTimeLineMap = IMatchParticipantsTimeLineMap; type dto_IParticipantFrames = IParticipantFrames; type dto_InfoDto = InfoDto; declare const dto_InfoDto: typeof InfoDto; declare const dto_LeaderboardDTO: typeof LeaderboardDTO; type dto_LeagueItemDTO = LeagueItemDTO; declare const dto_LeagueItemDTO: typeof LeagueItemDTO; type dto_LeagueListDTO = LeagueListDTO; declare const dto_LeagueListDTO: typeof LeagueListDTO; type dto_LolStatusContentDTO = LolStatusContentDTO; declare const dto_LolStatusContentDTO: typeof LolStatusContentDTO; type dto_LolStatusDTO = LolStatusDTO; declare const dto_LolStatusDTO: typeof LolStatusDTO; type dto_LolStatusIncidentsUpdateTranslations = LolStatusIncidentsUpdateTranslations; declare const dto_LolStatusIncidentsUpdateTranslations: typeof LolStatusIncidentsUpdateTranslations; type dto_LolStatusPlatformDataDTO = LolStatusPlatformDataDTO; declare const dto_LolStatusPlatformDataDTO: typeof LolStatusPlatformDataDTO; type dto_LolStatusServiceDTO = LolStatusServiceDTO; declare const dto_LolStatusServiceDTO: typeof LolStatusServiceDTO; type dto_LolStatusServiceIncidentsUpdate = LolStatusServiceIncidentsUpdate; declare const dto_LolStatusServiceIncidentsUpdate: typeof LolStatusServiceIncidentsUpdate; type dto_LolStatusServiceStatusIncident = LolStatusServiceStatusIncident; declare const dto_LolStatusServiceStatusIncident: typeof LolStatusServiceStatusIncident; type dto_LolStatusStatusDTO = LolStatusStatusDTO; declare const dto_LolStatusStatusDTO: typeof LolStatusStatusDTO; type dto_LolStatusUpdateDTO = LolStatusUpdateDTO; declare const dto_LolStatusUpdateDTO: typeof LolStatusUpdateDTO; type dto_MapsDataDragonDTO = MapsDataDragonDTO; declare const dto_MapsDataDragonDTO: typeof MapsDataDragonDTO; type dto_MatchDto = MatchDto; declare const dto_MatchDto: typeof MatchDto; type dto_MatchEventDto = MatchEventDto; declare const dto_MatchEventDto: typeof MatchEventDto; type dto_MatchListingDto = MatchListingDto; declare const dto_MatchListingDto: typeof MatchListingDto; type dto_MatchListingMatches = MatchListingMatches; declare const dto_MatchListingMatches: typeof MatchListingMatches; type dto_MatchParticipantDTO = MatchParticipantDTO; declare const dto_MatchParticipantDTO: typeof MatchParticipantDTO; type dto_MatchParticipantFrameDto = MatchParticipantFrameDto; declare const dto_MatchParticipantFrameDto: typeof MatchParticipantFrameDto; type dto_MatchParticipantsIdentitiesDto = MatchParticipantsIdentitiesDto; declare const dto_MatchParticipantsIdentitiesDto: typeof MatchParticipantsIdentitiesDto; type dto_MatchParticipantsIdentitiesPlayerDto = MatchParticipantsIdentitiesPlayerDto; declare const dto_MatchParticipantsIdentitiesPlayerDto: typeof MatchParticipantsIdentitiesPlayerDto; type dto_MatchParticipantsMasteryDto = MatchParticipantsMasteryDto; declare const dto_MatchParticipantsMasteryDto: typeof MatchParticipantsMasteryDto; type dto_MatchParticipantsRuneDto = MatchParticipantsRuneDto; declare const dto_MatchParticipantsRuneDto: typeof MatchParticipantsRuneDto; type dto_MatchParticipantsStatsDto = MatchParticipantsStatsDto; declare const dto_MatchParticipantsStatsDto: typeof MatchParticipantsStatsDto; type dto_MatchParticipantsTimelineDto = MatchParticipantsTimelineDto; declare const dto_MatchParticipantsTimelineDto: typeof MatchParticipantsTimelineDto; type dto_MatchPositionDto = MatchPositionDto; declare const dto_MatchPositionDto: typeof MatchPositionDto; type dto_MatchQueryDTO = MatchQueryDTO; declare const dto_MatchQueryDTO: typeof MatchQueryDTO; type dto_MatchTFTDTO = MatchTFTDTO; declare const dto_MatchTFTDTO: typeof MatchTFTDTO; type dto_MatchTeamsDto = MatchTeamsDto; declare const dto_MatchTeamsDto: typeof MatchTeamsDto; type dto_MatchTimeLineFrameDto = MatchTimeLineFrameDto; declare const dto_MatchTimeLineFrameDto: typeof MatchTimeLineFrameDto; type dto_MatchTimelineDto = MatchTimelineDto; declare const dto_MatchTimelineDto: typeof MatchTimelineDto; declare const dto_MatchV5DTOs: typeof MatchV5DTOs; declare const dto_MatchV5ReplaysDTOs: typeof MatchV5ReplaysDTOs; declare const dto_MatchV5TimelineDTOs: typeof MatchV5TimelineDTOs; type dto_MetadataDto = MetadataDto; declare const dto_MetadataDto: typeof MetadataDto; type dto_MiniSeriesDTO = MiniSeriesDTO; declare const dto_MiniSeriesDTO: typeof MiniSeriesDTO; type dto_ObserverDTO = ObserverDTO; declare const dto_ObserverDTO: typeof ObserverDTO; type dto_ParticipantDTO = ParticipantDTO; declare const dto_ParticipantDTO: typeof ParticipantDTO; type dto_ParticipantDto = ParticipantDto; declare const dto_ParticipantDto: typeof ParticipantDto; declare const dto_PercentilesDTO: typeof PercentilesDTO; type dto_PerksDTO = PerksDTO; declare const dto_PerksDTO: typeof PerksDTO; declare const dto_PlayerDTO: typeof PlayerDTO; type dto_QueuesDataDragonDTO = QueuesDataDragonDTO; declare const dto_QueuesDataDragonDTO: typeof QueuesDataDragonDTO; type dto_RateLimitDto = RateLimitDto; declare const dto_RateLimitDto: typeof RateLimitDto; type dto_RealmDTO = RealmDTO; declare const dto_RealmDTO: typeof RealmDTO; type dto_RealmNTO = RealmNTO; declare const dto_RealmNTO: typeof RealmNTO; type dto_SeasonMilestone = SeasonMilestone; declare const dto_SeasonMilestone: typeof SeasonMilestone; type dto_SpectatorNotAvailableDTO = SpectatorNotAvailableDTO; declare const dto_SpectatorNotAvailableDTO: typeof SpectatorNotAvailableDTO; type dto_SummonerLeagueDto = SummonerLeagueDto; declare const dto_SummonerLeagueDto: typeof SummonerLeagueDto; type dto_SummonerV4DTO = SummonerV4DTO; declare const dto_SummonerV4DTO: typeof SummonerV4DTO; type dto_TFTChampionsDTO = TFTChampionsDTO; declare const dto_TFTChampionsDTO: typeof TFTChampionsDTO; type dto_TFTHexesDto = TFTHexesDto; declare const dto_TFTHexesDto: typeof TFTHexesDto; type dto_TFTItemsDTO = TFTItemsDTO; declare const dto_TFTItemsDTO: typeof TFTItemsDTO; type dto_TFTTraitsDTO = TFTTraitsDTO; declare const dto_TFTTraitsDTO: typeof TFTTraitsDTO; type dto_ThirdPartyCodeDTO = ThirdPartyCodeDTO; declare const dto_ThirdPartyCodeDTO: typeof ThirdPartyCodeDTO; type dto_TraitDto = TraitDto; declare const dto_TraitDto: typeof TraitDto; type dto_UnitDto = UnitDto; declare const dto_UnitDto: typeof UnitDto; declare namespace dto { export { dto_ApiResponseDTO as ApiResponseDTO, dto_BannedChampion as BannedChampion, dto_ChallengePercentilesDTO as ChallengePercentilesDTO, dto_ChampionMasteryDTO as ChampionMasteryDTO, dto_ChampionRotationV3DTO as ChampionRotationV3DTO, dto_ChampionsDataDragon as ChampionsDataDragon, dto_ChampionsDataDragonDetails as ChampionsDataDragonDetails, dto_ChampionsDataDragonDetailsSolo as ChampionsDataDragonDetailsSolo, dto_ChampionsScoreDTO as ChampionsScoreDTO, dto_CompanionDto as CompanionDto, dto_ConfigDTO as ConfigDTO, dto_CurrentGameInfoDTO as CurrentGameInfoDTO, dto_CurrentGameParticipantDTO as CurrentGameParticipantDTO, dto_FeaturedGameInfo as FeaturedGameInfo, dto_FeaturedGamesDTO as FeaturedGamesDTO, dto_GameCustomizationObjectDTO as GameCustomizationObjectDTO, dto_GameModesDataDragonDTO as GameModesDataDragonDTO, type dto_IMatchParticipantsTimeLineMap as IMatchParticipantsTimeLineMap, type dto_IParticipantFrames as IParticipantFrames, dto_InfoDto as InfoDto, dto_LeaderboardDTO as LeaderboardDTO, LeagueEntryDTO$1 as LeagueEntryDTO, dto_LeagueItemDTO as LeagueItemDTO, dto_LeagueListDTO as LeagueListDTO, dto_LolStatusContentDTO as LolStatusContentDTO, dto_LolStatusDTO as LolStatusDTO, dto_LolStatusIncidentsUpdateTranslations as LolStatusIncidentsUpdateTranslations, dto_LolStatusPlatformDataDTO as LolStatusPlatformDataDTO, dto_LolStatusServiceDTO as LolStatusServiceDTO, dto_LolStatusServiceIncidentsUpdate as LolStatusServiceIncidentsUpdate, dto_LolStatusServiceStatusIncident as LolStatusServiceStatusIncident, dto_LolStatusStatusDTO as LolStatusStatusDTO, dto_LolStatusUpdateDTO as LolStatusUpdateDTO, dto_MapsDataDragonDTO as MapsDataDragonDTO, dto_MatchDto as MatchDto, dto_MatchEventDto as MatchEventDto, dto_MatchListingDto as MatchListingDto, dto_MatchListingMatches as MatchListingMatches, dto_MatchParticipantDTO as MatchParticipantDTO, dto_MatchParticipantFrameDto as MatchParticipantFrameDto, dto_MatchParticipantsIdentitiesDto as MatchParticipantsIdentitiesDto, dto_MatchParticipantsIdentitiesPlayerDto as MatchParticipantsIdentitiesPlayerDto, dto_MatchParticipantsMasteryDto as MatchParticipantsMasteryDto, dto_MatchParticipantsRuneDto as MatchParticipantsRuneDto, dto_MatchParticipantsStatsDto as MatchParticipantsStatsDto, dto_MatchParticipantsTimelineDto as MatchParticipantsTimelineDto, dto_MatchPositionDto as MatchPositionDto, dto_MatchQueryDTO as MatchQueryDTO, dto_MatchTFTDTO as MatchTFTDTO, dto_MatchTeamsDto as MatchTeamsDto, dto_MatchTimeLineFrameDto as MatchTimeLineFrameDto, dto_MatchTimelineDto as MatchTimelineDto, dto_MatchV5DTOs as MatchV5DTOs, dto_MatchV5ReplaysDTOs as MatchV5ReplaysDTOs, dto_MatchV5TimelineDTOs as MatchV5TimelineDTOs, dto_MetadataDto as MetadataDto, dto_MiniSeriesDTO as MiniSeriesDTO, dto_ObserverDTO as ObserverDTO, dto_ParticipantDTO as ParticipantDTO, dto_ParticipantDto as ParticipantDto, dto_PercentilesDTO as PercentilesDTO, dto_PerksDTO as PerksDTO, dto_PlayerDTO as PlayerDTO, dto_QueuesDataDragonDTO as QueuesDataDragonDTO, dto_RateLimitDto as RateLimitDto, dto_RealmDTO as RealmDTO, dto_RealmNTO as RealmNTO, dto_SeasonMilestone as SeasonMilestone, dto_SpectatorNotAvailableDTO as SpectatorNotAvailableDTO, dto_SummonerLeagueDto as SummonerLeagueDto, dto_SummonerV4DTO as SummonerV4DTO, dto_TFTChampionsDTO as TFTChampionsDTO, dto_TFTHexesDto as TFTHexesDto, dto_TFTItemsDTO as TFTItemsDTO, dto_TFTTraitsDTO as TFTTraitsDTO, dto_ThirdPartyCodeDTO as ThirdPartyCodeDTO, dto_TraitDto as TraitDto, dto_UnitDto as UnitDto }; } interface IEndpoint { path: string; version: number; prefix: string; } interface IParams { [key: string]: string | number; } interface IBaseApiParams { /** * If api response is 429 (rate limits) try reattempt after needed time (default true) */ rateLimitRetry?: boolean; /** * Number of time to retry after rate limit response (default 1) */ rateLimitRetryAttempts?: number; /** * Riot games api key */ key?: string; /** * Concurrency calls to riot (default infinity) * Concurrency per method (example: summoner api, match api, etc) */ concurrency?: number; /** * BaseURL for a rate limiting proxy (default: "https://$(region).api.riotgames.com/:game") * ${region} and :game are expected but not required variables */ baseURL?: string; /** * Debug methods */ debug?: { /** * Log methods execution time (default false) */ logTime?: boolean; /** * Log urls (default false) */ logUrls?: boolean; /** * Log when is waiting for rate limits (default false) */ logRatelimits?: boolean; }; } declare enum BaseApiGames { LOL = "lol", TFT = "tft", RIOT = "riot" } declare class BaseApi { protected readonly game: BaseApiGames; private baseUrl; private key; private concurrency; private rateLimitRetry; private rateLimitRetryAttempts; private debug; constructor(); constructor(params: IBaseApiParams); /** * Base api * @param key Riot games api key */ constructor(key: string); private setParams; private getRateLimits; private getBaseUrl; private getApiUrl; private isRateLimitError; private isServiceUnavailableError; private getError; private internalRequest; private retryRateLimit; protected getParam(): IBaseApiParams; protected request(region: Region | RegionGroups, endpoint: IEndpoint, params?: IParams, forceError?: boolean, queryParams?: any): Promise>; } declare class BaseApiRiot extends BaseApi { protected readonly game: BaseApiGames; } declare class AccountDto { puuid: string; gameName: string; tagLine: string; } declare class AccountRegionDto { puuid: string; game: string; region: string; } declare class AccountV1Api extends BaseApiRiot { /** * Get by PUUID * @param puuid * */ getByPUUID(puuid: string, region: AccountAPIRegionGroups): Promise>; /** * Get by RiotId * @param gameName * @param tagLine * @param region * */ getByRiotId(gameName: string, tagLine: string, region: AccountAPIRegionGroups): Promise>; /** * Get active region of a PUUID * @param puuid * @param game * @param region * */ getActiveRegion(puuid: string, game: Games, region: AccountAPIRegionGroups): Promise>; } /** * Riot Api */ declare class RiotApi extends BaseApiRiot { /** * AccountV1 methods */ readonly Account: AccountV1Api; } declare class BaseApiLol extends BaseApi { } /** * @deprecated Use MatchV5Api instead * Match methods */ declare class MatchApi extends BaseApiLol { private generateResponse; private map; /** * Get match details * @param matchId Match id * @param region * @deprecated */ get(matchId: number, region: Regions): Promise>; /** * Summoner match listing * @param encryptedAccountId Encrypted summoner ID. Max length 63 characters. * @param region * @deprecated */ list(encryptedAccountId: string, region: Regions, query?: MatchQueryDTO): Promise>; /** * Timeline * @param matchId * @param region * @deprecated */ timeline(matchId: number, region: Regions): Promise>; } /** * League methods */ declare class LeagueApi extends BaseApiLol { /** * Get summoner leagues by PUUID * @param puuid * @param region */ byPUUID(puuid: string, region: Regions): Promise>; /** * @deprecated Use byPUUID instead * Get summoner leagues * @param encryptedSummonerId Encrypted summoner ID. Max length 63 characters. * @param region */ bySummoner(encryptedSummonerId: string, region: Regions): Promise>; /** * Top league exp * @param queue Note that the queue value must be a valid ranked queue. * @param tier * @param division * @param region * @param page defaults to 1 */ exp(queue: Queues, tier: Tiers, division: Divisions, region: Regions, page?: number): Promise>; /** * League entries * @param queue Note that the queue value must be a valid ranked queue. * @param tier * @param division * @param region * @param page defaults to 1 */ entries(queue: Queues, tier: Tiers, division: Divisions, region: Regions, page?: number): Promise>; /** * Get league by id * @param leagueId * @param region */ get(leagueId: string, region: Regions): Promise>; /** * Get challenger league by queue * @param queue Note that the queue value must be a valid ranked queue. * @param region */ getChallengerLeaguesByQueue(queue: Queues, region: Regions): Promise>; /** * Get grandmaster league by queue * @param queue Note that the queue value must be a valid ranked queue. * @param region */ getGrandMasterLeagueByQueue(queue: Queues, region: Regions): Promise>; /** * Get master league by queue * @param queue Note that the queue value must be a valid ranked queue. * @param region */ getMasterLeagueByQueue(queue: Queues, region: Regions): Promise>; } /** * Summoner methods */ declare class SummonerApi extends BaseApiLol { private parsePath; private genericRequest; /** * @deprecated use geetByPUUID instead * Get by id * @param id Summoner id * @param region Riot region */ getById(id: string, region: Regions): Promise>; /** * Get by PUUID * @param puuid * @param region Riot region */ getByPUUID(puuid: string, region: Regions): Promise>; /** * @deprecated Use getByPUUID instead * Get by account ID * @param accountId * @param region Riot region */ getByAccountID(accountId: string, region: Regions): Promise>; } /** * Third party methods */ declare class ChampionApi extends BaseApiLol { /** * Get champion rotation * @param region Riot region */ rotation(region: Regions): Promise>; /** * Champion mastery by summoner * @param puuid * @param region */ masteryByPUUID(puuid: string, region: Regions): Promise>; /** * Champion mastery by summoner * @param puuid * @param region */ masteryByPUUIDChampion(puuid: string, championId: number, region: Regions): Promise>; /** * Champions mastery score * @param puuid * @param region */ championsScore(puuid: string, region: Regions): Promise; } /** * @deprecated Use SpectatorV5Api instead * Spectator methods */ declare class SpectatorApi extends BaseApiLol { private errorHandler; /** * Get featured games * @param region */ featuredGames(region: Regions): Promise>; /** * Get summoner active game * @param summonerPUUID * @param region */ activeGame(summonerPUUID: string, region: Regions): Promise>; } declare class SpectatorV5Api extends BaseApiLol { private errorHandler; /** * Get featured games * @param region */ featuredGames(region: Regions): Promise>; /** * Get summoner active game * @param puuid * @param region */ activeGame(puuid: string, region: Regions): Promise>; } declare class StatusApi extends BaseApiLol { /** * Lol status by server * @param region Riot region * @deprecated */ get(region: Regions): Promise>; } declare class GameTypesDataDragonDTO { gametype: string; description: string; } declare class RunesReforgedDTO { id: number; key: string; icon: string; name: string; slots: [ { runes: RunesReforgedSlotsDTO[]; } ]; } declare class RunesReforgedSlotsDTO { id: number; key: string; icon: string; name: string; shortDesc: string; longDesc: string; } /** * Data Dragon is our way of centralizing League of Legends game data and assets, including champions, items, runes, summoner spells, and profile icons. All of which can be used by third-party developers. You can download a gzipped tar file (.tar.gz) for each patch which will contain all assets for that patch. * https://ddragon.Lol.com/cdn/dragontail-9.20.1.tgz * Please be aware that updating Data Dragon after each League of Legends patch is a manual process, so it is not always updated immediately after a patch. Your patience is appreciated. */ declare class DataDragonService { private request; getRealms(server: RealmServers): Promise; getVersions(): Promise; getLanguages(): Promise; /** * Runes reforged (perks) */ getRunesReforged(language?: string): Promise; getChampionList(language?: string): Promise; getChampion(): Promise; getChampion(champ: Champions | number, language?: string): Promise; getQueues(): Promise; getSeasons(): Promise<{ id: number; season: string; }[]>; getMaps(): Promise; getGameModes(): Promise; getGameTypes(): Promise; } declare class SeedApi { private readonly baseUrl; private request; matches(id: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10): Promise<{ matches: MatchDto[]; }>; } declare enum PlayerPositionClashEnum { UNSELECTED = "UNSELECTED", FILL = "FILL", TOP = "TOP", JUNGLE = "JUNGLE", MIDDLE = "MIDDLE", BOTTOM = "BOTTOM", UTILITY = "UTILITY" } declare enum PlayerRoleClashEnum { CAPTAIN = "CAPTAIN", MEMBER = "MEMBER" } /** * Generic player dto */ declare class ClashPlayerDTO { /** * Encrypted summoner id */ summonerId: string; /** * Team id */ teamId?: string; /** * Player position (Legal values: UNSELECTED, FILL, TOP, JUNGLE, MIDDLE, BOTTOM, UTILITY) */ position: PlayerPositionClashEnum; /** * Player role (Legal values: CAPTAIN, MEMBER) */ role: PlayerRoleClashEnum; } declare class ClashTeamDto { id: string; tournamentId: number; name: string; iconId: number; tier: number; /** * Summoner ID of the team captain. */ captain: string; abbreviation: string; /** * Team members. */ players: ClashPlayerDTO[]; } declare class TournamentScheduleClashDTO { id: number; registrationTime: number; startTime: number; cancelled: boolean; } declare class TournamentClashDTO { id: number; themeId: number; nameKey: string; nameKeySecondary: string; schedule: TournamentScheduleClashDTO[]; } /** * Clash api methods */ declare class ClashApi extends BaseApiLol { /** * This endpoint returns a list of active Clash players for a given summoner's PUUID. If a summoner registers for multiple tournaments at the same time (e.g., Saturday and Sunday) then both registrations would appear in this list. * @param region * @param puuid PUUID of the summoner */ playersList(puuid: string, region: Regions): Promise>; /** * Get team by id * @param region * @param teamId Team id */ getTeamById(teamId: string, region: Regions): Promise>; /** * Returns a list of active and upcoming tournaments. * @param region */ getTournaments(region: Regions): Promise>; /** * Get team tournament */ getTeamTournament(teamId: string, region: Regions): Promise>; /** * Get tournament by id */ getTournamentById(tournamentId: string | number, region: Regions): Promise>; } declare class MatchQueryV5DTO { count?: number; queue?: number; start?: number; type?: string; startTime?: number; endTime?: number; } /** * Match methods */ declare class MatchV5Api extends BaseApiLol { private generateResponse; /** * Get match details * @param matchId Match id * @param region */ get(matchId: string, region: RegionGroups): Promise>; /** * Summoner match listing * @param puuid Puuid * @param region * @returns A list of match ids */ list(puuid: string, region: RegionGroups, query?: MatchQueryV5DTO): Promise>; timeline(matchId: string, region: RegionGroups): Promise>; /** * Get available replays by puuid * @param puuid Puuid * @param region * @returns Total number of replays and list of replay URLs */ replays(puuid: string, region: RegionGroups): Promise>; } declare class StatusV4Api extends BaseApiLol { /** * Lol status by server * @param region Riot region */ get(region: Regions): Promise>; } declare class ChallengesV1Api extends BaseApiLol { /** * Get all challenge configurations. */ Configs(region: Regions): Promise>; /** * Get all challenge percentile distributions. */ Percentiles(region: Regions): Promise>; /** * Get a challenge configuration. */ ChallengeConfig(challengeId: number, region: Regions): Promise>; /** * Get Leaderboards for a challenge (Chall, GM, Masters). */ Leaderboards(challengeId: number, level: Levels, region: Regions, query?: { limit: number; }): Promise>; /** * Get a challenge percentile distribution. */ ChallengePercentiles(challengeId: number, region: Regions): Promise>; /** * Get player challenge information. */ PlayerChallenges(puuid: string, region: Regions): Promise>; } /** * Classic league of legends api */ declare class LolApi extends BaseApiLol { /** * ChallengesV1 methods */ readonly Challenges: ChallengesV1Api; /** * Match methods * @deprecated use v5 instead */ readonly Match: MatchApi; /** * MatchV5 methods */ readonly MatchV5: MatchV5Api; /** * League methods */ readonly League: LeagueApi; /** * Summoner methods * */ readonly Summoner: SummonerApi; /** * Champion mastery */ readonly Champion: ChampionApi; /** * Spectator methods */ readonly SpectatorV5: SpectatorV5Api; /** * Spectator methods * @deprecated Use SpectatorV5 instead */ readonly Spectator: SpectatorApi; /** * Status methods * @deprecated Use StatusV4 instead */ readonly Status: StatusApi; /** * StatusV4 methods */ readonly StatusV4: StatusV4Api; /** * Clash methods */ readonly Clash: ClashApi; /** * Data dragon */ readonly DataDragon: DataDragonService; /** * Seed methods */ readonly Seed: SeedApi; } declare class BaseApiTft extends BaseApi { protected readonly game: BaseApiGames; } declare class MatchTFTQueryDTO { /** * Number of TFT Matches to list */ count?: number; /** * Ignore the first respective TFT Matches. Defaults to 0. */ start?: number; /** * Epoch timestamp in seconds. The matchlist started storing timestamps on June 16th, 2021. Any matches played before June 16th, 2021 won't be included in the results if the startTime filter is set. */ startTime?: number; /** * Epoch timestamp in seconds. */ endTime?: number; } declare class MatchTFTApi extends BaseApiTft { /** * Get match by id * @param matchId * @param region */ get(matchId: string, region: RegionGroups): Promise>; /** * Get match listing * @param summonerPUUID * @param region */ list(summonerPUUID: string, region: RegionGroups, query?: MatchTFTQueryDTO): Promise>; /** * Get match listing (with details) */ listWithDetails(summonerPUUID: string, region: RegionGroups, query?: MatchTFTQueryDTO): Promise; } /** * Summoner methods */ declare class SummonerTftApi extends BaseApiTft { private parsePath; private genericRequest; /** * Get by id * @param id Summoner id * @param region Riot region */ getById(id: string, region: Regions): Promise>; /** * Get by PUUID * @param puuid * @param region Riot region */ getByPUUID(puuid: string, region: Regions): Promise>; /** * Get by PUUID * @param puuid * @param region Riot region */ getByAccountID(accountId: string, region: Regions): Promise>; } declare class TFTStaticFiles { Champions(): TFTChampionsDTO[]; Hexes(): TFTHexesDto[]; Items(): TFTItemsDTO[]; Traits(): TFTTraitsDTO[]; } declare class LeagueEntryDTO { readonly puuid: string; readonly leagueId: string; /** * @deprecated use puuid instead * Player's summonerId (Encrypted) */ readonly summonerId: string; /** * @deprecated summoner name is not present anymore */ readonly summonerName: string; readonly queueType: string; readonly tier: string; readonly rank: string; readonly leaguePoints: number; readonly wins: number; readonly losses: number; readonly hotstreak: boolean; readonly veteran: boolean; readonly freshBlood: boolean; readonly inactive: boolean; readonly miniSeries?: MiniSeriesDTO; } declare class LeagueTFTApi extends BaseApiTft { /** * @deprecated Use getByPUUID instead * Get league entries for a given summoner ID * @param encryptedSummonerId * @param region */ get(encryptedSummonerId: string, region: Regions): Promise>; /** * Get league entries for a given puuid * @param puuid * @param region */ getByPUUID(puuid: string, region: Regions): Promise>; /** * Get the master league * @param region */ getMasterLeague(region: Regions): Promise>; /** * Get the grandmaster league * @param region */ getGrandMasterLeague(region: Regions): Promise>; /** * Get the challenger league * @param region */ getChallengerLeague(region: Regions): Promise>; /** * Get league entries for given tier and division * @param region * @param tier * @param division * @param page defaults to 1 * @param queue defaults to RANKED_TFT */ getByTierDivision(region: Regions, tier: Tiers, division: Divisions, page?: number, queue?: string): Promise>; } declare class CurrentGameInfoTFTDTO { gameId: number; gameStartTime: number; platformId: string; gameMode: string; mapId: number; gameType: string; bannedChampions: BannedChampion[]; observers: ObserverDTO; participants: CurrentGameParticipantDTO[]; gameLength: number; gameQueueConfigId: number; } declare class FeaturedGamesTFTDTO { /** * The list of featured games */ gameList: FeaturedGameInfo[]; /** * The suggested interval to wait before requesting FeaturedGames again */ clientRefreshInterval: number; } declare class SpectatorTFTV5Api extends BaseApiTft { protected readonly game: BaseApiGames; /** * Get active games * @param puuid * @param region */ activeGame(puuid: string, region: Regions): Promise>; /** * Get featured games * @param region */ featuredGames(region: Regions): Promise>; } /** * TFT Api */ declare class TftApi extends BaseApiTft { /** * Match methods */ readonly Match: MatchTFTApi; /** * Summoner methods */ readonly Summoner: SummonerTftApi; /** * League methods */ readonly League: LeagueTFTApi; /** * Spectator methods */ readonly SpectatorV5: SpectatorTFTV5Api; /** * Static files */ readonly StaticFiles: TFTStaticFiles; } /** * Not api key found */ declare class ApiKeyNotFound extends Error implements IErrors { readonly status = StatusCodes.NOT_IMPLEMENTED; readonly name = "ApiKeyNotFound"; constructor(); } /** * Rate limit error */ declare class RateLimitError extends Error implements IErrors { readonly status: number; readonly rateLimits: RateLimitDto; constructor(rateLimits: RateLimitDto); } interface HttpErrorLike extends Error { response?: { status?: number; data?: any; }; } /** * Not api key found */ declare class GenericError extends Error implements IErrors { readonly status: number; readonly error: Error; readonly rateLimits: RateLimitDto; readonly body?: any; readonly name = "GenericError"; constructor(rateLimits: RateLimitDto, error: HttpErrorLike); } interface IErrors { status: number; message: string; name: string; } /** * Not api key found */ declare class ServiceUnavailable extends Error implements IErrors { readonly rateLimits: RateLimitDto; readonly error: Error; readonly status: number; readonly name = "RiotUnavailable"; constructor(rateLimits: RateLimitDto, error: Error); } declare const Constants: typeof constants; declare const Dto: typeof dto; export { ApiKeyNotFound, Constants, Dto, GenericError, type IErrors, LolApi, RateLimitError, RiotApi, ServiceUnavailable, TftApi };