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

from __future__ import annotations

from typing import Any, List, Optional, Union

from pydantic import BaseModel, Field, conint

from .definitions import friends, pet
from .definitions.drink import coffee, tea


class Person(BaseModel):
    first_name: str = Field(..., description="The person's first name.")
    last_name: str = Field(..., description="The person's last name.")
    age: Optional[conint(ge=0)] = Field(None, description='Age in years.')
    pets: Optional[List[pet.Pet]] = None
    friends: Optional[friends.Friends] = None
    comment: Optional[Any] = None
    drink: Optional[List[Union[coffee.Coffee, tea.Tea]]] = None
