UNPKG

@myria/leaderboard-ts-sdk

Version:

Myria Leaderboard typescripts SDK which will manage leaderboard for game developers

42 lines (41 loc) 2.72 kB
import { CreateLeaderboardParams, InitLeaderboardParams, LeaderboardData, IQueryScoreParams, IQueryScoreByPlayerParams, IScoreByUserResp, IPostScoreParams, IPostScoreResponse, IQueryScoresResp, IQueryLeaderboardsParams, GetLeaderboardDetailsInfo, SetGameMetadataParams, SetConfigMetadataParams, SetGlobalMetadataParams, IUpdateUserInfoParams, IUserLeaderboard } from '../types/ILeaderboard.types'; import { APIResponseType, RewardDistributionConfigParams, RewardDistributionData, RewardInCurrentPeriod, RewardInPeriod, GetRewardsByPeriod, RewardDistribution } from '../types'; import { CommonPaginateDataTypes } from '../types/ICommon.types'; declare class LeaderboardManager { private env; private apiKey; private leaderboardAPI; constructor(params: InitLeaderboardParams); createLeaderboard(leaderboardParams: CreateLeaderboardParams): Promise<LeaderboardData | null>; deleteLeaderboardById(leaderboardId: number): Promise<boolean>; getLeaderboards(params: IQueryLeaderboardsParams): Promise<APIResponseType<CommonPaginateDataTypes<LeaderboardData[]>>>; /** * * @param queryScoreParams * limit */ queryScoresByLeaderboardId(queryScoreParams: IQueryScoreParams): Promise<APIResponseType<CommonPaginateDataTypes<IQueryScoresResp> | null>>; /** * * @param queryScoreByUserIdParams * limit */ getScoresByPlayerId(queryScoreByUserIdParams: IQueryScoreByPlayerParams): Promise<APIResponseType<IScoreByUserResp | null>>; /** * * @param postScoreParams * limit */ postPlayerScore(postScoreParams: IPostScoreParams): Promise<APIResponseType<IPostScoreResponse>>; createOrUpdateRewardDistributionConfig(createRewardConfig: RewardDistributionConfigParams): Promise<RewardDistribution>; getSimplifiedRewardConfig(getLeaderboardDetailsParams: GetLeaderboardDetailsInfo, period?: number): Promise<RewardDistribution>; getRewardDistributionInfo(getLeaderboardDetailsParams: GetLeaderboardDetailsInfo): Promise<RewardDistributionData>; getRewardsInCurrrentPeriod(getLeaderboardDetailsParams: GetLeaderboardDetailsInfo): Promise<RewardInCurrentPeriod>; getRewardsWithPeriod(getRewardWithPeriod: GetRewardsByPeriod): Promise<RewardInPeriod>; getLeaderboardDetailsInfo(getLeaderboardDetailsParams: GetLeaderboardDetailsInfo): Promise<LeaderboardData>; setGameMetadata(params: SetGameMetadataParams): Promise<LeaderboardData>; setConfigMetadata(params: SetConfigMetadataParams): Promise<LeaderboardData>; setGlobalMetadata(params: SetGlobalMetadataParams): Promise<LeaderboardData>; updateUserInfo(params: IUpdateUserInfoParams): Promise<IUserLeaderboard>; } export { LeaderboardManager };