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

from typing import Any, List, Optional

from pydantic import Field

from .base_model import BaseModel


class GetLatestRecords(BaseModel):
    get_latest_records: Optional["GetLatestRecordsGetLatestRecords"] = Field(
        alias="getLatestRecords"
    )


class GetLatestRecordsGetLatestRecords(BaseModel):
    module_title: Optional[str] = Field(alias="moduleTitle")
    module_subtitle: Optional[str] = Field(alias="moduleSubtitle")
    records: Optional[List[Optional["GetLatestRecordsGetLatestRecordsRecords"]]]


class GetLatestRecordsGetLatestRecordsRecords(BaseModel):
    record_type: Optional[str] = Field(alias="recordType")
    mark: Optional[str]
    event_name: Optional[str] = Field(alias="eventName")
    competitor: Optional["GetLatestRecordsGetLatestRecordsRecordsCompetitor"]
    date: Optional[Any]
    location: Optional[str]
    country_name: Optional[str] = Field(alias="countryName")


class GetLatestRecordsGetLatestRecordsRecordsCompetitor(BaseModel):
    name: Optional[str]
    id: Optional[int]
    url_slug: Optional[str] = Field(alias="urlSlug")
    country_url_slug: Optional[str] = Field(alias="countryUrlSlug")
    birth_date: Optional[Any] = Field(alias="birthDate")
    team_members: Optional[
        List[Optional["GetLatestRecordsGetLatestRecordsRecordsCompetitorTeamMembers"]]
    ] = Field(alias="teamMembers")


class GetLatestRecordsGetLatestRecordsRecordsCompetitorTeamMembers(BaseModel):
    id: Optional[int]
    name: Optional[str]
    iaaf_id: Optional[int] = Field(alias="iaafId")
    url_slug: Optional[str] = Field(alias="urlSlug")


GetLatestRecords.update_forward_refs()
GetLatestRecordsGetLatestRecords.update_forward_refs()
GetLatestRecordsGetLatestRecordsRecords.update_forward_refs()
GetLatestRecordsGetLatestRecordsRecordsCompetitor.update_forward_refs()
GetLatestRecordsGetLatestRecordsRecordsCompetitorTeamMembers.update_forward_refs()
