# generated by datamodel-codegen:
#   filename:  complex_input.json
#   timestamp: 2019-07-26T00:00:00+00:00

from __future__ import annotations

from typing import Any

from pydantic import BaseModel, RootModel


class Model(RootModel[Any]):
    root: Any


class Address(BaseModel):
    street: str | None = None
    city: str | None = None


class Address1(BaseModel):
    street: str | None = None
    apartment: str | None = None


class Employee(BaseModel):
    name: str | None = None
    address: Address1 | None = None


class Company(BaseModel):
    address: Address | None = None
    employees: list[Employee] | None = None


class Address2(BaseModel):
    street: str | None = None
    country: str | None = None


class Customer(BaseModel):
    address: Address2 | None = None


class Address3(BaseModel):
    street: str | None = None
    zone: str | None = None


class Warehouse(BaseModel):
    address: Address3 | None = None


class Details(BaseModel):
    description: str | None = None


class Product(BaseModel):
    name: str | None = None
    details: Details | None = None


class Item(BaseModel):
    product: Product | None = None
    quantity: int | None = None


class Order(BaseModel):
    items: list[Item] | None = None
