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

from __future__ import annotations

from typing import List, Union

from msgspec import Struct, UnsetType, convert, field
from typing_extensions import TypeAlias

from . import Foo as Foo_1

Foo: TypeAlias = str


class Bar(Struct):
    foo: Union[Foo_1, UnsetType] = field(
        default_factory=lambda: convert({'text': 'abc', 'number': 123}, type=Foo_1)
    )
    baz: Union[List[Foo_1], UnsetType] = field(
        default_factory=lambda: convert(
            [{'text': 'abc', 'number': 123}, {'text': 'efg', 'number': 456}],
            type=list[Foo_1],
        )
    )
    nested_foo: Union[Foo, UnsetType] = 'default foo'
