UNPKG

@trophyso/node

Version:
37 lines (36 loc) 1.9 kB
import type * as TrophyApi from "../index"; /** * A leaderboard to create. */ export interface CreateLeaderboardRequestItem { /** The leaderboard name. */ name: string; /** The leaderboard key. Only alphanumeric characters, hyphens, and underscores are permitted. */ key: string; /** The leaderboard description. */ description?: string; /** The initial user-facing status. Defaults to `inactive`. Use `scheduled` for leaderboards that should be active in the future and `finished` only when creating a leaderboard with an end date in the past. */ status?: TrophyApi.CreateLeaderboardRequestItemStatus; /** What the leaderboard ranks by. */ rankBy: TrophyApi.CreateLeaderboardRequestItemRankBy; /** The metric ID to rank by when `rankBy` is `metric`. */ metricId?: string; /** The points system ID to rank by when `rankBy` is `points`. */ pointsSystemId?: string; /** The maximum number of participants. Defaults to `1000`. */ maxParticipants?: number; /** The leaderboard start date in YYYY-MM-DD format. Defaults to today when omitted. */ 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 active user attributes to break rankings down by. */ breakdownAttributes?: string[]; /** How often the leaderboard repeats. Omit for a non-recurring leaderboard. Streak leaderboards cannot repeat. */ runUnit?: TrophyApi.CreateLeaderboardRequestItemRunUnit; /** The number of `runUnit`s between repeats. Required when `runUnit` is set. */ runInterval?: number; }