# Generated by ariadne-codegen
# Source: ../graphql

from typing import List, Optional

from pydantic import Field

from .base_model import BaseModel


class LocationUpsert(BaseModel):
    location_upsert: Optional["LocationUpsertLocationUpsert"] = Field(
        alias="locationUpsert"
    )


class LocationUpsertLocationUpsert(BaseModel):
    location: Optional["LocationUpsertLocationUpsertLocation"]


class LocationUpsertLocationUpsertLocation(BaseModel):
    id: str
    name: Optional[str]
    title: Optional[str]
    description: Optional[str]
    address: Optional[str]
    zip_code: Optional[str] = Field(alias="zipCode")
    city: Optional[str]
    country: Optional[str]
    devices: Optional[List[Optional["LocationUpsertLocationUpsertLocationDevices"]]]
    lon: Optional[float]
    lat: Optional[float]


class LocationUpsertLocationUpsertLocationDevices(BaseModel):
    id: str
    hostname: Optional[str]
    ip: Optional[str]


LocationUpsert.model_rebuild()
LocationUpsertLocationUpsert.model_rebuild()
LocationUpsertLocationUpsertLocation.model_rebuild()
