UNPKG

brackets-model

Version:

The types needed by brackets-manager.js and brackets-viewer.js

86 lines (85 loc) 2.18 kB
import { StageSettings } from './input'; import { MatchResults } from './other'; import { Id, StageType } from './unions'; /** * A participant of a stage (team or individual). */ export interface Participant { /** ID of the participant. */ id: Id; /** ID of the tournament this participant belongs to. */ tournament_id: Id; /** Name of the participant. */ name: string; } /** * A stage, which can be a round-robin stage or a single/double elimination stage. */ export interface Stage { /** ID of the stage. */ id: Id; /** ID of the tournament this stage belongs to. */ tournament_id: Id; /** Name of the stage. */ name: string; /** Type of the stage. */ type: StageType; /** Settings of the stage. */ settings: StageSettings; /** The number of the stage in its tournament. */ number: number; } /** * A group of a stage. */ export interface Group { /** ID of the group. */ id: Id; /** ID of the parent stage. */ stage_id: Id; /** The number of the group in its stage. */ number: number; } /** * A round of a group. */ export interface Round { /** ID of the round. */ id: Id; /** ID of the parent stage. */ stage_id: Id; /** ID of the parent group. */ group_id: Id; /** The number of the round in its group. */ number: number; } /** * A match of a round. */ export interface Match extends MatchResults { /** ID of the match. */ id: Id; /** ID of the parent stage. */ stage_id: Id; /** ID of the parent group. */ group_id: Id; /** ID of the parent round. */ round_id: Id; /** The number of the match in its round. */ number: number; /** The count of match games this match has. Can be `0` if it's a simple match, or a positive number for "Best Of" matches. */ child_count: number; } /** * A game of a match. */ export interface MatchGame extends MatchResults { /** ID of the match game. */ id: Id; /** ID of the parent stage. */ stage_id: Id; /** ID of the parent match. */ parent_id: Id; /** The number of the match game in its parent match. */ number: number; }