@jlenon7/zedjs
Version:
Riot API Library for NodeJS
99 lines (97 loc) • 3.07 kB
text/typescript
import { endpointsV4 } from '../../../endpoints/endpoints'
import { SummonerLeagueDto } from '../../../models-dto/league/summoner-league/summoner-league.dto'
import { LeagueEntryDTO } from '../../../models-dto/league/league-exp/league-entry.dto'
import { Queues, Tiers, Divisions, Regions } from '../../../constants'
import { LeagueListDTO } from '../../../models-dto/league/league-item/league-list.dto'
import { BaseApiLol } from '../base/base.api.lol'
/**
* League methods
*/
export class LeagueApi extends BaseApiLol {
/**
* Get summoner leagues
* @param encryptedSummonerId Encrypted summoner ID. Max length 63 characters.
* @param region
*/
public async bySummoner (encryptedSummonerId: string, region: Regions) {
const params = {
encryptedSummonerId
}
return this.request<SummonerLeagueDto[]>(region, endpointsV4.SummonerLeague, params)
}
/**
* Top league exp
* @param queue Note that the queue value must be a valid ranked queue.
* @param tier
* @param division
* @param region
*/
public async exp (queue: Queues, tier: Tiers, division: Divisions, region: Regions) {
const params = {
queue,
tier,
division
}
return this.request<LeagueEntryDTO>(region, endpointsV4.LeagueExp, params)
}
/**
* 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
*/
public async entries (queue: Queues, tier: Tiers, division: Divisions, region: Regions, page: number = 1) {
const params = {
queue,
tier,
division
}
return this.request<LeagueEntryDTO>(region, endpointsV4.LeagueEntries, params, false, { page })
}
/**
* Get league by id
* @param leagueId
* @param region
*/
public async get (leagueId: string, region: Regions) {
const params = {
leagueId
}
return this.request<LeagueListDTO>(region, endpointsV4.League, params)
}
/**
* Get challenger league by queue
* @param queue Note that the queue value must be a valid ranked queue.
* @param region
*/
public async getChallengerLeaguesByQueue (queue: Queues, region: Regions) {
const params = {
queue
}
return this.request<LeagueListDTO>(region, endpointsV4.ChallengerLeaguesByQueue, params)
}
/**
* Get grandmaster league by queue
* @param queue Note that the queue value must be a valid ranked queue.
* @param region
*/
public async getGrandMasterLeagueByQueue (queue: Queues, region: Regions) {
const params = {
queue
}
return this.request<LeagueListDTO>(region, endpointsV4.GrandMasterLeaguesByQueue, params)
}
/**
* Get master league by queue
* @param queue Note that the queue value must be a valid ranked queue.
* @param region
*/
public async getMasterLeagueByQueue (queue: Queues, region: Regions) {
const params = {
queue
}
return this.request<LeagueListDTO>(region, endpointsV4.MasterLeaguesByQueue, params)
}
}