@trophyso/node
Version:
NodeJS SDK for the Trophy API
39 lines (38 loc) • 1.58 kB
TypeScript
import type * as TrophyApi from "../index";
/**
* A leaderboard returned from the admin leaderboards endpoints.
*/
export interface AdminLeaderboard {
/** The UUID of the leaderboard. */
id: string;
/** The leaderboard name. */
name: string;
/** The leaderboard key. */
key: string;
/** The leaderboard description. */
description?: string;
/** The current user-facing status of the leaderboard. */
status: TrophyApi.AdminLeaderboardStatus;
/** What the leaderboard ranks by. */
rankBy: TrophyApi.AdminLeaderboardRankBy;
/** The metric ID used when `rankBy` is `metric`. */
metricId?: string;
/** The points system ID used when `rankBy` is `points`. */
pointsSystemId?: string;
/** The maximum number of participants. */
maxParticipants?: number;
/** The leaderboard start date in YYYY-MM-DD format. */
start: string;
/** The optional leaderboard end date in YYYY-MM-DD format. */
end?: string;
/** When set, ranking only counts activity at or after this time of day in the user's timezone (HH:mm format). */
startTime?: string;
/** When set, ranking only counts activity before this time of day in the user's timezone (HH:mm format). */
endTime?: string;
/** The UUIDs of the user attributes used for ranking breakdowns. */
breakdownAttributes: string[];
/** The recurrence unit when the leaderboard repeats. */
runUnit?: TrophyApi.AdminLeaderboardRunUnit;
/** The number of recurrence units between leaderboard runs. */
runInterval?: number;
}