# Generated by ariadne-codegen on 2023-06-06 10:49
# Source: graphql/queries.graphql

from typing import List, Optional

from pydantic import Field

from .base_model import BaseModel


class GetSingleCompetitorResultsByLimit(BaseModel):
    get_single_competitor_results_by_limit: Optional[
        "GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimit"
    ] = Field(alias="getSingleCompetitorResultsByLimit")


class GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimit(BaseModel):
    parameters: Optional[
        "GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimitParameters"
    ]
    disciplines: Optional[
        List[
            Optional[
                "GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimitDisciplines"
            ]
        ]
    ]
    results: Optional[
        List[
            Optional[
                "GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimitResults"
            ]
        ]
    ]


class GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimitParameters(
    BaseModel
):
    results_by_limits_discipline: Optional[str] = Field(
        alias="resultsByLimitsDiscipline"
    )
    results_by_limits_start_date: Optional[str] = Field(
        alias="resultsByLimitsStartDate"
    )
    results_by_limits_end_date: Optional[str] = Field(alias="resultsByLimitsEndDate")
    results_by_limits_only_regular: Optional[bool] = Field(
        alias="resultsByLimitsOnlyRegular"
    )


class GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimitDisciplines(
    BaseModel
):
    id: Optional[str]
    name: Optional[str]


class GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimitResults(
    BaseModel
):
    result: Optional[str]
    count: Optional[int]
    total_count: Optional[int] = Field(alias="totalCount")


GetSingleCompetitorResultsByLimit.update_forward_refs()
GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimit.update_forward_refs()
GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimitParameters.update_forward_refs()
GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimitDisciplines.update_forward_refs()
GetSingleCompetitorResultsByLimitGetSingleCompetitorResultsByLimitResults.update_forward_refs()
