UNPKG

twisted

Version:
1,977 lines (1,937 loc) 113 kB
/** * 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<RegionGroups, RegionGroups.SEA>; 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<T> { readonly rateLimits?: RateLimitDto; readonly response: T; } declare class SeasonMilestone { requireGradeCounts: Record<string, number>; 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; /** * <td>Post game rune stats.</td> */ perk1Var1: number; /** * <td>Post game rune stats.</td> */ perk1Var3: number; /** * <td>Post game rune stats.</td> */ perk1Var2: number; /** * tripleKills */ tripleKills: number; /** * <td>Post game rune stats.</td> */ perk3Var3: number; /** * nodeNeutralizeAssist */ nodeNeutralizeAssist: number; /** * <td>Post game rune stats.</td> */ 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; /** * <td>Post game rune stats.</td> */ perk5Var1: number; /** * <td>Post game rune stats.</td> */ perk5Var3: number; /** * <td>Post game rune stats.</td> */ perk5Var2: number; /** * totalScoreRank */ totalScoreRank: number; /** * neutralMinionsKilled */ neutralMinionsKilled: number; /** * damageDealtToTurrets */ damageDealtToTurrets: number; /** * physicalDamageDealtToChampions */ physicalDamageDealtToChampions: number; /** * nodeCapture */ nodeCapture: number; /** * largestMultiKill */ largestMultiKill: number; /** * <td>Post game rune stats.</td> */ perk2Var2: number; /** * <td>Post game rune stats.</td> */ perk2Var3: number; /** * totalUnitsHealed */ totalUnitsHealed: number; /** * <td>Post game rune stats.</td> */ perk2Var1: number; /** * <td>Post game rune stats.</td> */ perk4Var1: number; /** * <td>Post game rune stats.</td> */ perk4Var2: number; /** * <td>Post game rune stats.</td> */ 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; /** * <td>Primary path rune.</td> */ perk1: number; /** * <td>Primary path keystone rune.</td> */ perk0: number; /** * <td>Primary path rune.</td> */ perk3: number; /** * <td>Primary path rune.</td> */ perk2: number; /** * <td>Secondary path rune.</td> */ perk5: number; /** * <td>Secondary path rune.</td> */ perk4: number; /** * <td>Post game rune stats.</td> */ perk3Var1: number; /** * damageSelfMitigated */ damageSelfMitigated: number; /** * magicalDamageTaken */ magicalDamageTaken: number; /** * firstInhibitorKill */ firstInhibitorKill: boolean; /** * trueDamageTaken */ trueDamageTaken: number; /** * nodeNeutralize */ nodeNeutralize: number; /** * assists */ assists: number; /** * combatPlayerScore */ combatPlayerScore: number; /** * <td>Primary rune path</td> */ 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; /** * <td>Secondary rune path</td> */ 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; /** * <td>Post game rune stats.</td> */ perk0Var1: number; /** * <td>Post game rune stats.</td> */ perk0Var2: number; /** * <td>Post game rune stats.</td> */ 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; causedGameEndFromIGNBSurrender: boolean; consumablesPurchased: number; damageDealtToBuildings: number; damageDealtToEpicMonsters: 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; gameEndedInIGNBSurrender: 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; positionAssignedByMatchmaking: string; profileIcon: number; pushPings: number; puuid: string; quadraKills: number; riotIdName?: string; riotIdGameName?: string; riotIdTagline: string; role: Role; selectedRolePreferences: string; 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; teamIGNBSurrendered: boolean; /** 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; wasSevereTransgressor: boolean; wasPremadeWithIGNBGameEndCauser: boolean; wasPremadeWithSevereTransgressor: boolean; 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; fistBumpParticipa