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

from __future__ import annotations

from enum import Enum

from pydantic import BaseModel


class CountryWithTitle(Enum):
    USA = {'title': 'USA', 'code': 'US'}
    CANADA = {'title': 'CANADA', 'code': 'CA'}


class CountryWithName(Enum):
    USA = {'name': 'USA', 'code': 'US'}
    CANADA = {'name': 'CANADA', 'code': 'CA'}


class CountryWithConst(Enum):
    us_value = {'const': 'us_value'}
    ca_value = {'const': 'ca_value'}


class CountryNoIdentifier(Enum):
    value_0 = {'code': 'US'}
    value_1 = {'code': 'CA'}


class CountryDuplicateTitle(Enum):
    SAME = {'title': 'SAME', 'code': 'US'}
    SAME_1 = {'title': 'SAME', 'code': 'CA'}


class EnumObjectTest(BaseModel):
    country_with_title: CountryWithTitle | None = None
    country_with_name: CountryWithName | None = None
    country_with_const: CountryWithConst | None = None
    country_no_identifier: CountryNoIdentifier | None = None
    country_duplicate_title: CountryDuplicateTitle | None = None
