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

from typing import Any, Optional

from pydantic import Field

from .base_model import BaseModel
from .enums import ContentTypes, FileTypes, ObservableTypes


class PreviewFeed(BaseModel):
    preview_feed: Optional["PreviewFeedPreviewFeed"] = Field(alias="previewFeed")


class PreviewFeedPreviewFeed(BaseModel):
    is_complete: bool = Field(alias="isComplete")
    item_count: Any = Field(alias="itemCount")
    estimated_bytes: Optional[Any] = Field(alias="estimatedBytes")
    content_type_summary: Optional[list["PreviewFeedPreviewFeedContentTypeSummary"]] = (
        Field(alias="contentTypeSummary")
    )
    observable_type_summary: Optional[
        list["PreviewFeedPreviewFeedObservableTypeSummary"]
    ] = Field(alias="observableTypeSummary")
    warnings: Optional[list[str]]


class PreviewFeedPreviewFeedContentTypeSummary(BaseModel):
    content_type: ContentTypes = Field(alias="contentType")
    file_type: Optional[FileTypes] = Field(alias="fileType")
    item_count: Any = Field(alias="itemCount")
    total_bytes: Optional[Any] = Field(alias="totalBytes")


class PreviewFeedPreviewFeedObservableTypeSummary(BaseModel):
    observable_type: ObservableTypes = Field(alias="observableType")
    item_count: Any = Field(alias="itemCount")


PreviewFeed.model_rebuild()
PreviewFeedPreviewFeed.model_rebuild()
