From 56f0e5b31b7493076c9176a2cb894fd0b3bcf8c8 Mon Sep 17 00:00:00 2001 From: Xavier Stouder Date: Tue, 27 Oct 2015 16:07:25 +0100 Subject: [PATCH] Initial commit --- riot-games-api/riot-games-api-tests.ts | 10 + riot-games-api/riot-games-api.d.ts | 1112 ++++++++++++++++++++++++ 2 files changed, 1122 insertions(+) create mode 100644 riot-games-api/riot-games-api-tests.ts create mode 100644 riot-games-api/riot-games-api.d.ts diff --git a/riot-games-api/riot-games-api-tests.ts b/riot-games-api/riot-games-api-tests.ts new file mode 100644 index 000000000..32815f2ca --- /dev/null +++ b/riot-games-api/riot-games-api-tests.ts @@ -0,0 +1,10 @@ +/// + +let champion: RiotGamesAPI.Champion.ChampionDto = { + active: true, + botEnabled: true, + botMmEnabled: false, + freeToPlay: false, + id: 42, + rankedPlayEnabled: false +} diff --git a/riot-games-api/riot-games-api.d.ts b/riot-games-api/riot-games-api.d.ts new file mode 100644 index 000000000..8be033694 --- /dev/null +++ b/riot-games-api/riot-games-api.d.ts @@ -0,0 +1,1112 @@ +// Type definitions for Riot Games API +// Project: https://developer.riotgames.com/ +// Definitions by: Xavier Stouder +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +declare module RiotGamesAPI{ + /** + * champion-v1.2 + */ + module Champion{ + interface ChampionDto{ + active: boolean, + botEnabled: boolean, + botMmEnabled: boolean, + freeToPlay: boolean, + id: number, + rankedPlayEnabled: boolean + } + interface ChampionListDto{ + champions: Array + } + } + + /** + * current-game-v1.0 + */ + module CurrentGame{ + interface CurrentGameInfo{ + bannedChampion: Array, + gameId: number, + gameLength: number, + gameMode: number, + gameQueueConfigId: number, + gameStartTime: number, + gameType: string, + mapId: number, + observers: Observer, + participants: Array + platformId: string + } + interface BannedChampion{ + championId: number, + pickTurn: number, + teamId: number + } + interface CurrentGameParticipant{ + bot: boolean, + championId: number, + masteries: Array + profileIconId: number, + runes: Array, + spell1Id: number, + spell2Id: number, + summonerId: number, + summonerName: string, + teamId: number + } + interface Observer{ + encryptionKey: string + } + interface Mastery{ + masterId: number, + rank: number + } + interface Rune{ + count: number, + runeId: number + } + } + + /** + * featured-games-v1.0 + */ + module FeaturedGames{ + interface FeaturedGames{ + clientRefreshInterval: number, + gameList: Array + } + interface FeaturedGameInfo{ + bannedChampions: Array + gameId: number, + gameLength: number, + gameMode: string, + gameQueueConfigId: number, + gameStartTime: number, + gameType: string, + mapId: number, + observers: Observer, + participants: Array, + plateformId: string + } + interface Participant{ + bot: boolean, + championId: number, + profileIconId: number, + spell1Id: number, + spell2Id: number, + summonerName: string, + teamId: number + } + interface BannedChampion{ + championId: number, + pickTurn: number, + teamId: number + } + interface Observer{ + encryptionKey: string + } + } + + /** + * game-v1.3 + */ + module Game{ + interface RecentGamesDto{ + games: Array, + summonerId: number + } + interface GameDto{ + championId: number, + createDate: number, + fellowPlayers: Array, + gameId: number, + gameMode: string, + gameType: string, + invalid: boolean, + ipEarned: number, + level: number, + mapId: number, + spell1: number, + spell2: number + stats: RawStatsDto, + subType: string, + teamId: number + } + interface PlayerDto{ + championId: number, + summonerId: number, + teamId: number + } + interface RawStatsDto{ + assists: number, + barracksKilled: number, + championsKilled: number, + combatPlayerScore: number, + consumablesPurchased: number, + damageDealtPlayer: number, + doubleKills: number, + firstBlood: number, + gold: number, + goldEarned: number, + goldSpent: number, + item0: number, + item1: number, + item2: number, + item3: number, + item4: number, + item5: number, + item6: number, + itemsPurchased: number, + killingSprees: number, + largestCriticalStrike: number, + largestKillingSpree: number, + largestMultiKill: number, + legendaryItemsCreated: number, + level: number, + magicDamageDealtPlayer: number, + magicDamageDealtToChampions: number, + magicDamageTaken: number, + minionsDenied: number, + minionsKilled: number, + neutralMinionsKilled: number, + neutralMinionsKilledEnemyJungle: number, + neutralMinionsKilledYourJungle: number, + nexusKilled: boolean, + nodeCapture: number, + nodeCaptureAssist: number, + nodeNeutralize: number, + nodeNeutralizeAssist: number, + numDeaths: number, + numItemsBought: number, + objectivePlayerScore: number, + pentaKills: number, + physicalDamageDealtPlayer: number, + physicalDamageDealtToChampions: number, + physicalDamageTaken: number, + playerPosition: number, + playerRole: number, + quadraKills: number, + sightWardsBought: number, + spell1Cast: number, + spell2Cast: number, + spell3Cast: number, + spell4Cast: number, + summonSpell1Cast: number, + summonSpell2Cast: number, + superMonsterKilled: number, + team: number, + teamObjective: number, + timePlayed: number, + totalDamageDealt: number, + totalDamageDealtToChampions: number, + totalDamageTaker: number, + totalHeal: number, + totalPlayerScore: number, + totalScoreRank: number, + totalTimeCrowdControlDealt: number, + totalUnitsHealed: number, + tripleKills: number, + trueDamageDealtPlayer: number, + trueDamageDealtToChampions: number, + trueDamageTaken: number, + turrentsKilled: number, + unrealKills: number, + victoryPointTotal: number, + visionWardsBought: number, + wardKilled: number, + wardPlaced: number, + win: boolean + } + } + + /** + * league-v2.5 + */ + module League{ + interface LeagueDto{ + entries: Array, + name: string, + participantId: string, + queue: string, + tier: string + } + interface LeagueEntryDto{ + division: string, + isFreshBlood: boolean, + isHotStreak: boolean, + isInactive: boolean, + isVeteran: boolean, + leaguePoints: number, + losses: number, + miniSeries: MiniSeriesDto, + playerOrTeamId: string, + playerOrTeamName: string, + wins: number + } + interface MiniSeriesDto{ + losses: number, + progress: string, + target: number, + wins: number + } + } + + /** + * lol-static-data-v1.2 + */ + module LolStaticData{ + interface ChampionListDto{ + data: {[str: string]: ChampionDto}, + format: string, + keys: {[str: string]: string}, + type: string, + version: string + } + interface ChampionDto{ + allytips: Array, + blurb: string, + enemytips: Array, + id: number, + image: ImageDto, + info: InfoDto, + key: string, + lore: string, + name: string, + partype: string, + passive: PassiveDto, + recommended: Array, + skins: Array, + spells: Array, + stats: StatsDto, + tags: Array, + title: string + } + interface ChampionSpellDto{ + altimages: Array, + cooldown: Array, + cooldownBurn: string, + cost: Array, + costBurn: string, + costType: string, + description: string, + effect: Array>, + effectBurn: Array + image: ImageDto, + key: string, + leveltip: LevelTipDto, + maxrank: number, + name: string, + range: Array | string, + rangeBurn: string, + resource: string, + sanitizedDescription: string, + sanitizedTooltip: string, + tooltip: string, + vars: Array + } + interface ImageDto{ + full: string, + group: string, + h: number, + sprite: string, + w: number, + x: number, + y: number + } + interface InfoDto{ + attack: number, + defense: number, + difficulty: number, + magic: number + } + interface PassiveDto{ + description: string, + image: ImageDto, + name: string, + sanitizedDescription: string + } + interface RecommendedDto{ + block: Array, + champion: string, + map: string, + mode: string, + priority: boolean, + title: string, + type: string + } + interface SkinDto{ + id: number, + name: string, + num: number + } + interface StatsDto{ + armor: number, + armorperlevel: number, + attackdamage: number, + attackdamageperlevel: number, + attackrange: number, + attackspeedoffset: number, + attackspeedperlevel: number, + crit: number, + critperlevel: number, + hp: number, + hpperlevel: number, + hpregen: number, + hpregenperlevel: number, + movespeed: number, + mp: number, + mpperlevel: number, + mpregen: number, + mpregenperlevel: number, + spellblock: number, + spellblockperlevel: number + } + interface LevelTipDto{ + effect: Array, + label: Array + } + interface SpellVarsDto{ + coeff: Array, + dyn: string, + key: string, + link: string, + ranksWith: string + } + interface BlockDto{ + items: Array, + recMath: boolean, + type: string + } + interface BlockItemDto{ + count: number, + id: number + } + interface ItemListDto{ + basic: BasicDataDto, + data: Array<{[str: string]: ItemDto}> + groups: Array, + tree: Array, + type: string, + version: string + } + interface BasicDataDto{ + colloq: string, + consumeOnFull: boolean, + consumed: boolean, + depth: number, + description: string, + from: Array, + gold: GoldDto, + group: string, + hideFromAll: boolean, + id: number, + image: ImageDto, + inStore: boolean, + into: Array, + maps: Array<{[str: string]: boolean}>, + name: string, + plaintext: string, + requiredChampion: string, + rune: MetaDataDto, + sanitizedDescription: string, + specialRecipe: number, + stacks: number, + stats: BasicDataStatsDto, + tags: Array + } + interface GroupDto{ + MaxGroupOwnable: string, + key: string + } + interface ItemDto{ + colloq: string, + consumeOnFull: boolean, + consumed: boolean, + depth: number, + description: string, + effect: Array<{[str: string]: string}>, + from: Array, + gold: GoldDto, + group: string, + hideFromAll: boolean, + id: number, + image: ImageDto, + inStore: boolean, + into: Array, + maps: Array<{[str: string]: boolean}>, + name: string, + plaintext: string, + requiredChampion: string, + rune: MetaDataDto, + sanitizedDescription: string, + specialRecipe: number, + stacks: number, + stats: BasicDataStatsDto, + tags: Array + } + interface ItemTreeDto{ + header: string, + tags: Array + } + interface BasicDataStatsDto{ + FlatArmorMod: number, + FlatAttackSpeedMod: number, + FlatBlockMod: number, + FlatCritChanceMod: number, + FlatCritDamageMod: number, + FlatEXPBonus: number, + FlatEnergyPoolMod: number, + FlatEnergyRegenMod: number, + FlatHPPoolMod: number, + FlatHPRegenMod: number, + FlatMPPoolMod: number, + FlatMPRegenMod: number, + FlatMagicDamageMod: number, + FlatMovementSpeedMod: number, + FlatPhysicalDamageMod: number, + FlatSpellBlockMod: number, + PercentArmorMod: number, + PercentAttackSpeedMod: number, + PercentBlockMod: number, + PercentCritChanceMod: number, + PercentCritDamageMod: number, + PercentDodgeMod: number, + PercentEXPBonus: number, + PercentHPPoolMod: number, + PercentHPRegenMod: number, + PercentLifeStealMod: number, + PercentMPPoolMod: number, + PercentMPRegenMod: number, + PercentMagicDamageMod: number, + PercentMovementSpeedMod: number, + PercentPhysicalDamageMod: number, + PercentSpellBlockMod: number, + PercentSpellVampMod: number, + rFlatArmorModPerLevel: number, + rFlatArmorPenetrationMod: number, + rFlatArmorPenetrationModPerLevel: number, + rFlatCritChanceModPerLevel: number, + rFlatCritDamageModPerLevel: number, + rFlatDodgeMod: number, + rFlatDodgeModPerLevel: number, + rFlatEnergyModPerLevel: number, + rFlatEnergyRegenModPerLevel: number, + rFlatGoldPer10Mod: number, + rFlatHPModPerLevel: number, + rFlatHPRegenModPerLevel: number, + rFlatMPModPerLevel: number, + rFlatMPRegenModPerLevel: number, + rFlatMagicDamageModPerLevel: number, + rFlatMagicPenetrationMod: number, + rFlatMagicPenetrationModPerLevel: number, + rFlatMovementSpeedModPerLevel: number, + rFlatPhysicalDamageModPerLevel: number, + rFlatSpellBlockModPerLevel: number, + rFlatTimeDeadMod: number, + rFlatTimeDeadModPerLevel: number, + rPercentArmorPenetrationMod: number, + rPercentArmorPenetrationModPerLevel: number, + rPercentAttackSpeedModPerLevel: number, + rPercentCooldownMod: number, + rPercentCooldownModPerLevel: number, + rPercentMagicPenetrationMod: number, + rPercentMagicPenetrationModPerLevel: number, + rPercentMovementSpeedModPerLevel: number, + rPercentTimeDeadMod: number, + rPercentTimeDeadModPerLevel: number + } + interface GoldDto{ + base: number, + purchasable: boolean, + sell: number, + total: number + } + interface MetaDataDto{ + isRune: boolean, + tier: string, + type: string + } + interface LanguageStringsDto{ + data: Array<{[str: string]: string}>, + type: string, + version: string + } + interface MapDataDto{ + data: Array<{[str: string]: MapDetailsDto}>, + type: string, + version: string + } + interface MapDetailsDto{ + image: ImageDto, + mapId: number, + mapName: string, + unpurchasableItemList: Array, + } + interface MasteryListDto{ + data: Array<{[str: string]: MasteryDto}>, + tree: MasteryTreeDto, + type: string, + version: string + } + interface MasteryDto{ + description: Array, + id: number, + image: ImageDto, + masteryTree: string, + name: string, + prereq: string, + ranks: number, + sanitizedDescription: Array + } + interface MasteryTreeDto{ + Defense: Array, + Offense: Array, + Utility: Array + } + interface MasteryTreeListDto{ + masteryTreeItems: Array + } + interface MasteryTreeItemDto{ + masteryId: number, + prereq: string + } + interface RealmDto{ + cdn: string, + css: string, + dd: string, + l: string, + lg: string, + n: Array<{[str: string]: string}>, + profileiconmax: number, + storage: string, + v: string + } + interface RuneListDto{ + basic: BasicDataDto, + data: Array<{[str: string]: RuneDto}>, + type: string, + version: string + } + interface RuneDto{ + colloq: string, + consumeOnFull: boolean, + consumed: boolean, + depth: number, + description: string, + from: Array, + group: string, + hideFromAll: boolean, + id: number, + image: ImageDto, + inStore: boolean, + into: Array, + maps: Array<{[str: string]: boolean}>, + name: string, + plaintext: string, + requiredChampion: string, + rune: MetaDataDto, + sanitizedDescription: string, + specialRecipe: number, + stacks: number, + stats: BasicDataStatsDto, + tags: Array + } + interface SummonerSpellListDto{ + data: Array<{[str: string]: SummonerSpellDto}>, + type: string, + version: string + } + interface SummonerSpellDto{ + cooldown: Array, + cooldownBurn: string, + cost: Array, + costBurn: string, + costType: string, + description: string, + effect: Array>, + effectBurn: Array, + id: number, + image: ImageDto, + key: string, + leveltip: LevelTipDto, + maxrank: number, + modes: Array, + name: string, + range: Array | string, + rangeBurn: string, + resource: string, + sanitizedDescription: string, + sanitizedTooltip: string, + summonerLevel: number, + tooltip: string, + vars: Array + } + } + + /** + * lol-status-v1.0 + */ + module LolStatus{ + interface Shard{ + hostname: string, + locales: Array, + name: string, + region_tag: string, + slug: string + } + interface ShardStatus{ + hostname: string, + locales: Array, + name: string, + region_tag: string, + services: Array + slug: string + } + interface Service{ + incidents: Array, + name: string, + slug: string, + status: string + } + interface Incident{ + active: boolean, + created_at: string, + id: number, + updates: Array + } + interface Message{ + author: string, + content: string, + created_at: string, + id: number, + severity: string, + translations: Array, + updated_at: string + } + interface Translation{ + content: string, + locale: string, + updated_at: string + } + } + + /** + * match-v2.2 + */ + module Match{ + interface MatchDetail{ + mapId: number, + matchCreation: number, + matchId: number, + matchMode: string, + matchType: string, + matchVersion: string, + participantIdentities: Array, + participants: Array, + plateformId: string, + queueType: string, + region: string, + season: string, + teams: Array, + timeline: Timeline + } + interface Participant{ + championId: number, + highestAchievedSeasonTier: string, + masteries: Array, + participantId: number, + runes: Array, + spell1Id: number, + spell2Id: number, + stats: ParticipantStats, + teamId: number, + timeline: ParticipantTimeline + } + interface ParticipantIdentity{ + participantId: number, + player: Player + } + interface Team{ + bans: Array, + baronKills: number, + dominionVictoryScore: number, + dragonKills: number, + firstBaron: boolean, + firstBlood: boolean, + firstDragon: boolean, + firstInhibitor: boolean, + firstTower: boolean, + inhibitorKills: number, + teamId: number, + towerKills: number, + vilemawKills: number, + winner: boolean + } + interface Timeline{ + frameInverval: number, + frames: Array + } + interface Mastery{ + masteryId: number, + rank: number + } + interface ParticipantStats{ + assists: number, + champLevel: number, + combatPlayerScore: number, + deaths: number, + doubleKills: number, + firstBloodAssist: boolean, + firstBloodKill: boolean, + firstInhibitorAssist: boolean, + firstInhibitorKill: boolean, + firstTowerAssist: boolean, + firstTowerKill: boolean, + goldEarned: number, + goldSpent: number, + inhibitorKills: number, + item0: number, + item1: number, + item2: number, + item3: number, + item4: number, + item5: number, + item6: number, + killingSprees: number, + kills: number, + largestCriticalStrike: number, + largestKillingSpree: number, + largestMultiKill: number, + magicDamageDealt: number, + magicDamageDealtToChampions: number, + magicDamageTaken: number, + minionsKilled: number, + neutralMinionsKilled: number, + neutralMinionsKilledEnemyJungle: number, + neutralMinionsKilledTeamJungle: number, + nodeCapture: number, + nodeCaptureAssist: number, + nodeNeutralize: number, + nodeNeutralizeAssist: number, + objectivePlayerScore: number, + pentaKills: number, + physicalDamageDealt: number, + physicalDamageDealtToChampions: number, + physicalDamageTaken: number, + quadraKills: number, + sightWardsBoughtInGame: number, + teamObjective: number, + totalDamageDealt: number, + totalDamageDealtToChampions: number, + totalDamageTaken: number, + totalHeal: number, + totalPlayerScore: number, + totalScoreRank: number, + totalTimeCrowdControlDealt: number, + totalUnitsHealed: number, + towerKills: number, + tripleKills: number, + trueDamageDealt: number, + trueDamageDealtToChampions: number, + trueDamageTaken: number, + unrealKills: number, + visionWardsBoughtInGame: number, + wardsKilled: number, + wardsPlaced: number, + winner: boolean + } + interface ParticipantTimeline{ + ancientGolemAssistsPerMinCounts: ParticipantTimelineData, + ancientGolemKillsPerMinCounts: ParticipantTimelineData, + assistedLaneDeathsPerMinDeltas: ParticipantTimelineData, + assistedLaneKillsPerMinDeltas: ParticipantTimelineData, + baronAssistsPerMinCounts: ParticipantTimelineData, + baronKillsPerMinCounts: ParticipantTimelineData, + creepsPerMinDeltas: ParticipantTimelineData, + csDiffPerMinDeltas: ParticipantTimelineData, + damageTakenDiffPerMinDeltas: ParticipantTimelineData, + damageTakenPerMinDeltas: ParticipantTimelineData, + dragonAssistsPerMinCounts: ParticipantTimelineData, + dragonKillsPerMinCounts: ParticipantTimelineData, + elderLizardAssistsPerMinCounts: ParticipantTimelineData, + elderLizardKillsPerMinCounts: ParticipantTimelineData, + goldPerMinDeltas: ParticipantTimelineData, + inhibitorAssistsPerMinCounts: ParticipantTimelineData, + inhibitorKillsPerMinCounts: ParticipantTimelineData, + lane: string, + role: string, + towerAssistsPerMinCounts: ParticipantTimelineData, + towerKillsPerMinCounts: ParticipantTimelineData, + towerKillsPerMinDeltas: ParticipantTimelineData, + vilemawAssistsPerMinCounts: ParticipantTimelineData, + vilemawKillsPerMinCounts: ParticipantTimelineData, + wardsPerMinDeltas: ParticipantTimelineData, + xpDiffPerMinDeltas: ParticipantTimelineData, + xpPerMinDeltas: ParticipantTimelineData + } + interface Rune{ + rank: number, + runeId: number + } + interface Player{ + matchHistoryUri: string, + profileIcon: number, + summonerId: number, + summonerName: string + } + interface BannedChampion{ + championId: number, + pickTurn: number + } + interface Frame{ + events: Array, + participanFrames: Array<{[str: string]: ParticipantFrame}>, + timestamp: number + } + interface ParticipantTimelineData{ + tenToTwenty: number, + thirtyToEnd: number, + twentyToThirty: number, + zeroToTen: number + } + interface Event{ + ascendedType: string, + assistingParticipantIds: Array, + buildingType: string, + creatorId: number, + eventType: string, + itemAfter: number, + itemBefore: number, + itemId: number, + killerId: number, + laneType: string, + levelUpType: string, + monsterType: string, + participantId: number, + pointCaptured: string, + position: Position, + skillSlot: number, + teamId: number, + timestamp: number, + towerType: string, + victimId: number, + wardType: string, + } + interface ParticipantFrame{ + currentGold: number, + dominionScore: number, + jungleMinionsKilled: number, + level: number, + minionsKilled: number, + participantId: number, + position: Position, + teamScore: number, + totalGold: number, + xp: number + } + interface Position{ + x: number, + y: number + } + } + + /** + * matchlist-v2.2 + */ + module MatchList{ + interface MatchList{ + endIndex: number, + matches: Array, + startIndex: number, + totalGames: number + } + interface MatchReference{ + champion: number, + lane: string, + matchId: number, + plateformId: string, + queue: string, + region: string, + role: string, + season: string, + timestamp: number + } + } + + /** + * stats-v1.3 + */ + module Stats{ + interface RankedStatsDto{ + champions: Array, + modifyDate: number, + summonerId: number, + } + interface ChampionStatsDto{ + id: number, + stats: AggregatedStatsDto + } + interface AggregatedStatsDto{ + averageAssists: number, + averageChampionsKilled: number, + averageCombatPlayerScore: number, + averageNodeCapture: number, + averageNodeCaptureAssist: number, + averageNodeNeutralize: number, + averageNodeNeutralizeAssist: number, + averageNumDeaths: number, + averageObjectivePlayerScore: number, + averageTeamObjective: number, + averageTotalPlayerScore: number, + botGamesPlayed: number, + killingSpree: number, + maxAssists: number, + maxChampionsKilled: number, + maxCombatPlayerScore: number, + maxLargestCriticalStrike: number, + maxLargestKillingSpree: number, + maxNodeCapture: number, + maxNodeCaptureAssist: number, + maxNodeNeutralize: number, + maxNodeNeutralizeAssist: number, + maxNumDeaths: number, + maxObjectivePlayerScore: number, + maxTeamObjective: number, + maxTimePlayed: number, + maxTimeSpentLiving: number, + maxTotalPlayerScore: number, + mostChampionKillsPerSession: number, + mostSpellsCast: number, + normalGamesPlayed: number, + rankedPremadeGamesPlayed: number, + rankedSoloGamesPlayed: number, + totalAssists: number, + totalChampionKills: number, + totalDamageDealt: number, + totalDamageTaken: number, + totalDeathsPerSession: number, + totalDoubleKills: number, + totalFirstBlood: number, + totalGoldEarned: number, + totalHeal: number, + totalMagicDamageDealt: number, + totalMinionsKills: number, + totalNeutralMinionsKilled: number, + totalNodeCapture: number, + totalNodeNeutralize: number, + totalPentaKills: number, + totalPhysicalDamageDealt: number, + totalQuadraKills: number, + totalSessionsLost: number, + totalSessionsPlayed: number, + totalSessionsWon: number, + totalTripleKills: number, + totalTurretsKilleds: number, + totalUnrealKills: number + } + interface PlayerStatsSummaryListDto{ + playerStatSummaries: Array, + summonerId: number + } + interface PlayerStatsSummaryDto{ + aggregatedStats: AggregatedStatsDto, + losses: number, + modifyDate: number, + playerStatSummaryType: string, + wins: number + } + } + + /** + * summoner-v1.4 + */ + module Summoner{ + interface SummonerDto{ + id: number, + name: string, + profileIconId: number, + revisionDate: number, + summonerLevel: number + } + interface MasteryPagesDto{ + pages: Array, + summonerId: number + } + interface MasteryPageDto{ + current: boolean, + id: number, + masteries: Array, + name: string + } + interface MasteryDto{ + id: number, + rank: number + } + interface RunePagesDto{ + pages: Array, + summonerId: number + } + interface RunePageDto{ + current: boolean, + id: number, + name: string, + slots: Array + } + interface RuneSlotDto{ + runeId: number, + runeSlotId: number + } + } + + /** + * team-v2.4 + */ + module Team{ + interface TeamDto{ + createDate: number, + fullId: string, + lastGameDate: number, + lastJoinDate: number, + lastJoinedRankedTeamQueueDate: number, + matchHistory: Array, + modifyDate: number, + name: string, + roster: RosterDto, + secondLastJoinDate: number, + status: string, + tag: string, + teamStatDetails: Array, + thirdLastJoinDate: number + } + interface MatchHistorySummaryDto{ + assists: number, + date: number, + deaths: number, + gameId: number, + gameMode: string, + invalid: boolean, + kills: number, + mapId: number, + opposingTeamKills: number, + opposingTeamName: string, + win: boolean + } + interface RosterDto{ + memberList: Array, + ownerId: number + } + interface TeamStatDetailDto{ + averageGamesPlayed: number, + losses: number, + teamStatType: string, + wins: number + } + interface TeamMemberInfoDto{ + inviteDate: number, + joinDate: number, + playerId: number, + status: string + } + } +} \ No newline at end of file