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

from typing import Any, List, Optional

from pydantic import Field

from .base_model import BaseModel
from .enums import ContentSourceTypes


class RetrieveSources(BaseModel):
    retrieve_sources: Optional["RetrieveSourcesRetrieveSources"] = Field(
        alias="retrieveSources"
    )


class RetrieveSourcesRetrieveSources(BaseModel):
    results: Optional[List[Optional["RetrieveSourcesRetrieveSourcesResults"]]]


class RetrieveSourcesRetrieveSourcesResults(BaseModel):
    type: Optional[ContentSourceTypes]
    content: "RetrieveSourcesRetrieveSourcesResultsContent"
    text: str
    metadata: Optional[str]
    relevance: float
    start_time: Optional[Any] = Field(alias="startTime")
    end_time: Optional[Any] = Field(alias="endTime")
    page_number: Optional[int] = Field(alias="pageNumber")
    frame_number: Optional[int] = Field(alias="frameNumber")


class RetrieveSourcesRetrieveSourcesResultsContent(BaseModel):
    id: str


RetrieveSources.model_rebuild()
RetrieveSourcesRetrieveSources.model_rebuild()
RetrieveSourcesRetrieveSourcesResults.model_rebuild()
