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

from typing import Any, Optional

from pydantic import Field

from .base_model import BaseModel
from .enums import EntityOwners, EntityState


class QuerySkills(BaseModel):
    skills: Optional["QuerySkillsSkills"]


class QuerySkillsSkills(BaseModel):
    results: Optional[list["QuerySkillsSkillsResults"]]


class QuerySkillsSkillsResults(BaseModel):
    id: str
    name: str
    creation_date: Any = Field(alias="creationDate")
    modified_date: Optional[Any] = Field(alias="modifiedDate")
    relevance: Optional[float]
    owner: "QuerySkillsSkillsResultsOwner"
    state: EntityState
    identifier: Optional[str]
    correlation_id: Optional[str] = Field(alias="correlationId")
    text: str
    skill_owner: Optional[EntityOwners] = Field(alias="skillOwner")
    arguments: Optional[list["QuerySkillsSkillsResultsArguments"]]
    collections: Optional[list[Optional["QuerySkillsSkillsResultsCollections"]]]


class QuerySkillsSkillsResultsOwner(BaseModel):
    id: str


class QuerySkillsSkillsResultsArguments(BaseModel):
    name: str
    description: Optional[str]
    required: Optional[bool]


class QuerySkillsSkillsResultsCollections(BaseModel):
    id: str
    name: str


QuerySkills.model_rebuild()
QuerySkillsSkills.model_rebuild()
QuerySkillsSkillsResults.model_rebuild()
