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

from typing import List, Optional

from pydantic import Field

from .base_model import BaseModel
from .fragments import PageInfoFull, SimpleModuleInstanceFull


class ModuleInstances(BaseModel):
    me: "ModuleInstancesMe"


class ModuleInstancesMe(BaseModel):
    account: Optional["ModuleInstancesMeAccount"]


class ModuleInstancesMeAccount(BaseModel):
    module_instances: "ModuleInstancesMeAccountModuleInstances"


class ModuleInstancesMeAccountModuleInstances(BaseModel):
    edges: List["ModuleInstancesMeAccountModuleInstancesEdges"]
    page_info: "ModuleInstancesMeAccountModuleInstancesPageInfo" = Field(
        alias="pageInfo"
    )


class ModuleInstancesMeAccountModuleInstancesEdges(BaseModel):
    cursor: str
    node: "ModuleInstancesMeAccountModuleInstancesEdgesNode"


class ModuleInstancesMeAccountModuleInstancesEdgesNode(SimpleModuleInstanceFull):
    pass


class ModuleInstancesMeAccountModuleInstancesPageInfo(PageInfoFull):
    pass


ModuleInstances.model_rebuild()
ModuleInstancesMe.model_rebuild()
ModuleInstancesMeAccount.model_rebuild()
ModuleInstancesMeAccountModuleInstances.model_rebuild()
ModuleInstancesMeAccountModuleInstancesEdges.model_rebuild()
ModuleInstancesMeAccountModuleInstancesEdgesNode.model_rebuild()
ModuleInstancesMeAccountModuleInstancesPageInfo.model_rebuild()
