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

from typing import Any, List, Optional

from .base_model import BaseModel
from .enums import ProductStatus


class ListProducts(BaseModel):
    products: "ListProductsProducts"


class ListProductsProducts(BaseModel):
    edges: List["ListProductsProductsEdges"]
    pageInfo: "ListProductsProductsPageInfo"


class ListProductsProductsEdges(BaseModel):
    node: "ListProductsProductsEdgesNode"


class ListProductsProductsEdgesNode(BaseModel):
    id: str
    title: str
    handle: str
    vendor: str
    productType: str
    status: ProductStatus
    createdAt: Any
    updatedAt: Any
    publishedAt: Optional[Any]


class ListProductsProductsPageInfo(BaseModel):
    hasNextPage: bool
    hasPreviousPage: bool
    startCursor: Optional[str]
    endCursor: Optional[str]


ListProducts.model_rebuild()
ListProductsProducts.model_rebuild()
ListProductsProductsEdges.model_rebuild()
