11import datetime
2- from typing import Any , Dict , List , Optional , Type , TypeVar , Union , cast
2+ from typing import TYPE_CHECKING , Any , Dict , List , Optional , Type , TypeVar , Union , cast
33
44import attr
55from dateutil .parser import isoparse
66
77from ..models .an_all_of_enum import AnAllOfEnum
88from ..models .an_enum import AnEnum
99from ..models .different_enum import DifferentEnum
10- from ..models .free_form_model import FreeFormModel
11- from ..models .model_with_union_property import ModelWithUnionProperty
1210from ..types import UNSET , Unset
1311
12+ if TYPE_CHECKING :
13+ from ..models .free_form_model import FreeFormModel
14+ from ..models .model_with_union_property import ModelWithUnionProperty
15+
16+
1417T = TypeVar ("T" , bound = "AModel" )
1518
1619
@@ -24,7 +27,7 @@ class AModel:
2427 a_camel_date_time (Union[datetime.date, datetime.datetime]):
2528 a_date (datetime.date):
2629 required_not_nullable (str):
27- one_of_models (Union[Any, FreeFormModel, ModelWithUnionProperty]):
30+ one_of_models (Union[' FreeFormModel', ' ModelWithUnionProperty', Any ]):
2831 model (ModelWithUnionProperty):
2932 any_value (Union[Unset, Any]):
3033 an_optional_allof_enum (Union[Unset, AnAllOfEnum]):
@@ -35,9 +38,9 @@ class AModel:
3538 required_nullable (Optional[str]):
3639 not_required_nullable (Union[Unset, None, str]):
3740 not_required_not_nullable (Union[Unset, str]):
38- nullable_one_of_models (Union[FreeFormModel, ModelWithUnionProperty, None]):
39- not_required_one_of_models (Union[FreeFormModel, ModelWithUnionProperty, Unset]):
40- not_required_nullable_one_of_models (Union[FreeFormModel, ModelWithUnionProperty, None, Unset, str]):
41+ nullable_one_of_models (Union[' FreeFormModel', ' ModelWithUnionProperty' , None]):
42+ not_required_one_of_models (Union[' FreeFormModel', ' ModelWithUnionProperty' , Unset]):
43+ not_required_nullable_one_of_models (Union[' FreeFormModel', ' ModelWithUnionProperty' , None, Unset, str]):
4144 nullable_model (Optional[ModelWithUnionProperty]):
4245 not_required_model (Union[Unset, ModelWithUnionProperty]):
4346 not_required_nullable_model (Union[Unset, None, ModelWithUnionProperty]):
@@ -47,12 +50,12 @@ class AModel:
4750 a_camel_date_time : Union [datetime .date , datetime .datetime ]
4851 a_date : datetime .date
4952 required_not_nullable : str
50- one_of_models : Union [Any , FreeFormModel , ModelWithUnionProperty ]
51- model : ModelWithUnionProperty
53+ one_of_models : Union [" FreeFormModel" , " ModelWithUnionProperty" , Any ]
54+ model : " ModelWithUnionProperty"
5255 a_nullable_date : Optional [datetime .date ]
5356 required_nullable : Optional [str ]
54- nullable_one_of_models : Union [FreeFormModel , ModelWithUnionProperty , None ]
55- nullable_model : Optional [ModelWithUnionProperty ]
57+ nullable_one_of_models : Union [" FreeFormModel" , " ModelWithUnionProperty" , None ]
58+ nullable_model : Optional [" ModelWithUnionProperty" ]
5659 an_allof_enum_with_overridden_default : AnAllOfEnum = AnAllOfEnum .OVERRIDDEN_DEFAULT
5760 any_value : Union [Unset , Any ] = UNSET
5861 an_optional_allof_enum : Union [Unset , AnAllOfEnum ] = UNSET
@@ -61,12 +64,15 @@ class AModel:
6164 attr_1_leading_digit : Union [Unset , str ] = UNSET
6265 not_required_nullable : Union [Unset , None , str ] = UNSET
6366 not_required_not_nullable : Union [Unset , str ] = UNSET
64- not_required_one_of_models : Union [FreeFormModel , ModelWithUnionProperty , Unset ] = UNSET
65- not_required_nullable_one_of_models : Union [FreeFormModel , ModelWithUnionProperty , None , Unset , str ] = UNSET
66- not_required_model : Union [Unset , ModelWithUnionProperty ] = UNSET
67- not_required_nullable_model : Union [Unset , None , ModelWithUnionProperty ] = UNSET
67+ not_required_one_of_models : Union [" FreeFormModel" , " ModelWithUnionProperty" , Unset ] = UNSET
68+ not_required_nullable_one_of_models : Union [" FreeFormModel" , " ModelWithUnionProperty" , None , Unset , str ] = UNSET
69+ not_required_model : Union [Unset , " ModelWithUnionProperty" ] = UNSET
70+ not_required_nullable_model : Union [Unset , None , " ModelWithUnionProperty" ] = UNSET
6871
6972 def to_dict (self ) -> Dict [str , Any ]:
73+ from ..models .free_form_model import FreeFormModel
74+ from ..models .model_with_union_property import ModelWithUnionProperty
75+
7076 an_enum_value = self .an_enum_value .value
7177
7278 an_allof_enum_with_overridden_default = self .an_allof_enum_with_overridden_default .value
@@ -218,6 +224,9 @@ def to_dict(self) -> Dict[str, Any]:
218224
219225 @classmethod
220226 def from_dict (cls : Type [T ], src_dict : Dict [str , Any ]) -> T :
227+ from ..models .free_form_model import FreeFormModel
228+ from ..models .model_with_union_property import ModelWithUnionProperty
229+
221230 d = src_dict .copy ()
222231 an_enum_value = AnEnum (d .pop ("an_enum_value" ))
223232
@@ -244,7 +253,7 @@ def _parse_a_camel_date_time(data: object) -> Union[datetime.date, datetime.date
244253
245254 required_not_nullable = d .pop ("required_not_nullable" )
246255
247- def _parse_one_of_models (data : object ) -> Union [Any , FreeFormModel , ModelWithUnionProperty ]:
256+ def _parse_one_of_models (data : object ) -> Union [" FreeFormModel" , " ModelWithUnionProperty" , Any ]:
248257 try :
249258 if not isinstance (data , dict ):
250259 raise TypeError ()
@@ -261,7 +270,7 @@ def _parse_one_of_models(data: object) -> Union[Any, FreeFormModel, ModelWithUni
261270 return one_of_models_type_1
262271 except : # noqa: E722
263272 pass
264- return cast (Union [Any , FreeFormModel , ModelWithUnionProperty ], data )
273+ return cast (Union [" FreeFormModel" , " ModelWithUnionProperty" , Any ], data )
265274
266275 one_of_models = _parse_one_of_models (d .pop ("one_of_models" ))
267276
@@ -310,7 +319,7 @@ def _parse_one_of_models(data: object) -> Union[Any, FreeFormModel, ModelWithUni
310319
311320 not_required_not_nullable = d .pop ("not_required_not_nullable" , UNSET )
312321
313- def _parse_nullable_one_of_models (data : object ) -> Union [FreeFormModel , ModelWithUnionProperty , None ]:
322+ def _parse_nullable_one_of_models (data : object ) -> Union [" FreeFormModel" , " ModelWithUnionProperty" , None ]:
314323 if data is None :
315324 return data
316325 try :
@@ -329,7 +338,7 @@ def _parse_nullable_one_of_models(data: object) -> Union[FreeFormModel, ModelWit
329338
330339 nullable_one_of_models = _parse_nullable_one_of_models (d .pop ("nullable_one_of_models" ))
331340
332- def _parse_not_required_one_of_models (data : object ) -> Union [FreeFormModel , ModelWithUnionProperty , Unset ]:
341+ def _parse_not_required_one_of_models (data : object ) -> Union [" FreeFormModel" , " ModelWithUnionProperty" , Unset ]:
333342 if isinstance (data , Unset ):
334343 return data
335344 try :
@@ -360,7 +369,7 @@ def _parse_not_required_one_of_models(data: object) -> Union[FreeFormModel, Mode
360369
361370 def _parse_not_required_nullable_one_of_models (
362371 data : object ,
363- ) -> Union [FreeFormModel , ModelWithUnionProperty , None , Unset , str ]:
372+ ) -> Union [" FreeFormModel" , " ModelWithUnionProperty" , None , Unset , str ]:
364373 if data is None :
365374 return data
366375 if isinstance (data , Unset ):
@@ -395,7 +404,7 @@ def _parse_not_required_nullable_one_of_models(
395404 return not_required_nullable_one_of_models_type_1
396405 except : # noqa: E722
397406 pass
398- return cast (Union [FreeFormModel , ModelWithUnionProperty , None , Unset , str ], data )
407+ return cast (Union [" FreeFormModel" , " ModelWithUnionProperty" , None , Unset , str ], data )
399408
400409 not_required_nullable_one_of_models = _parse_not_required_nullable_one_of_models (
401410 d .pop ("not_required_nullable_one_of_models" , UNSET )
0 commit comments