import { Competition } from '../competition'; import { RoundNumberMapper } from '../round/number/mapper'; import { Structure } from '../structure'; import { PlanningMapper } from '../planning/mapper'; import { JsonStructure } from './json'; import { PlaceMap } from '../place/mapper'; import { CompetitionSportMap, CompetitionSportMapper } from '../competition/sport/mapper'; import { JsonPoule } from '../poule/json'; import { RoundNumber } from '../round/number'; import { JsonRound } from '../round/json'; import { Round } from '../qualify/group'; import { CategoryMapper } from '../category/mapper'; import { JsonCategory } from '../category/json'; import * as i0 from "@angular/core"; export declare class StructureMapper { private competitionSportMapper; private roundNumberMapper; private categoryMapper; private planningMapper; protected poulesMap: JsonPoulesMap; protected placeMap: PlaceMap; constructor(competitionSportMapper: CompetitionSportMapper, roundNumberMapper: RoundNumberMapper, categoryMapper: CategoryMapper, planningMapper: PlanningMapper); toObject(json: JsonStructure, competition: Competition): Structure; planningToObject(json: JsonStructure, structure: Structure, competitionSportMap: CompetitionSportMap): void; protected planningToRoundNumber(roundNumber: RoundNumber, competitionSportMap: CompetitionSportMap): void; toJson(structure: Structure): JsonStructure; protected initMaps(jsonCategories: JsonCategory[], rootRounds: Round[]): void; protected initJsonPoulesMap(jsonRounds: JsonRound[], roundNumberAsValue: number): void; protected initPlaceMap(rounds: Round[]): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } interface JsonPoulesMap { [key: number]: JsonPoule[]; } export {};