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;
}
