import { Field } from './field'; import { League } from './league'; import { Referee } from './referee'; import { Season } from './season'; import { Association } from './association'; import { TeamCompetitor } from './competitor/team'; import { CompetitionSport } from './competition/sport'; import { AgainstRuleSet } from './ranking/againstRuleSet'; import { Identifiable } from './identifiable'; import { Single } from './sport/variant/single'; import { AgainstH2h } from './sport/variant/against/h2h'; import { AgainstGpp } from './sport/variant/against/gamesPerPlace'; import { AllInOneGame } from './sport/variant/allInOneGame'; export declare class Competition extends Identifiable { protected league: League; protected season: Season; protected startDateTime: Date; protected againstRuleSet: AgainstRuleSet; protected referees: Referee[]; protected sports: CompetitionSport[]; protected teamCompetitors: TeamCompetitor[]; constructor(league: League, season: Season); getLeague(): League; getAssociation(): Association; getSeason(): Season; getAgainstRuleSet(): AgainstRuleSet; setAgainstRuleSet(againstRuleSet: AgainstRuleSet): void; getStartDateTime(): Date; setStartDateTime(date: Date): void; getName(): string; getFields(): Field[]; getReferees(): Referee[]; getReferee(priority: number): Referee | undefined; getSports(): CompetitionSport[]; getSportVariants(): (Single | AgainstH2h | AgainstGpp | AllInOneGame)[]; getSportById(id: string | number): CompetitionSport | undefined; hasMultipleSports(): boolean; getSingleSport(): CompetitionSport; getTeamCompetitors(): TeamCompetitor[]; }