# coding: utf-8 """ AWS Docs API API for AWS Docs # noqa: E501 The version of the OpenAPI document: 1.0.0 Generated by: https://openapi-generator.tech """ from datetime import date, datetime # noqa: F401 import decimal # noqa: F401 import functools # noqa: F401 import io # noqa: F401 import re # noqa: F401 import typing # noqa: F401 import uuid # noqa: F401 import frozendict # noqa: F401 from api_python_client import schemas # noqa: F401 class DocumentMetadata( schemas.ComposedBase, schemas.DictSchema ): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. Metadata about a document """ class MetaOapg: required = { "statusTransitionLog", "name", "documentId", "location", } class properties: documentId = schemas.StrSchema name = schemas.StrSchema @classmethod @property def location(cls) -> typing.Type['S3Location']: return S3Location class statusTransitionLog( schemas.ListSchema ): class MetaOapg: @classmethod @property def items(cls) -> typing.Type['StatusTransition']: return StatusTransition def __new__( cls, arg: typing.Union[typing.Tuple['StatusTransition'], typing.List['StatusTransition']], _configuration: typing.Optional[schemas.Configuration] = None, ) -> 'statusTransitionLog': return super().__new__( cls, arg, _configuration=_configuration, ) def __getitem__(self, i: int) -> 'StatusTransition': return super().__getitem__(i) @classmethod @property def ingestionExecution(cls) -> typing.Type['IngestionExecution']: return IngestionExecution numberOfPages = schemas.IntSchema numberOfClassifiedForms = schemas.IntSchema url = schemas.StrSchema __annotations__ = { "documentId": documentId, "name": name, "location": location, "statusTransitionLog": statusTransitionLog, "ingestionExecution": ingestionExecution, "numberOfPages": numberOfPages, "numberOfClassifiedForms": numberOfClassifiedForms, "url": url, } @classmethod @property @functools.cache def all_of(cls): # we need this here to make our import statements work # we must store _composed_schemas in here so the code is only run # when we invoke this method. If we kept this at the class # level we would get an error because the class level # code would be run when this module is imported, and these composed # classes don't exist yet because their module has not finished # loading return [ CreateUpdateDetails, ] statusTransitionLog: MetaOapg.properties.statusTransitionLog name: MetaOapg.properties.name documentId: MetaOapg.properties.documentId location: 'S3Location' @typing.overload def __getitem__(self, name: typing.Literal["documentId"]) -> MetaOapg.properties.documentId: ... @typing.overload def __getitem__(self, name: typing.Literal["name"]) -> MetaOapg.properties.name: ... @typing.overload def __getitem__(self, name: typing.Literal["location"]) -> 'S3Location': ... @typing.overload def __getitem__(self, name: typing.Literal["statusTransitionLog"]) -> MetaOapg.properties.statusTransitionLog: ... @typing.overload def __getitem__(self, name: typing.Literal["ingestionExecution"]) -> 'IngestionExecution': ... @typing.overload def __getitem__(self, name: typing.Literal["numberOfPages"]) -> MetaOapg.properties.numberOfPages: ... @typing.overload def __getitem__(self, name: typing.Literal["numberOfClassifiedForms"]) -> MetaOapg.properties.numberOfClassifiedForms: ... @typing.overload def __getitem__(self, name: typing.Literal["url"]) -> MetaOapg.properties.url: ... @typing.overload def __getitem__(self, name: str) -> schemas.UnsetAnyTypeSchema: ... def __getitem__(self, name: typing.Union[typing.Literal["documentId", "name", "location", "statusTransitionLog", "ingestionExecution", "numberOfPages", "numberOfClassifiedForms", "url", ], str]): # dict_instance[name] accessor return super().__getitem__(name) @typing.overload def get_item_oapg(self, name: typing.Literal["documentId"]) -> MetaOapg.properties.documentId: ... @typing.overload def get_item_oapg(self, name: typing.Literal["name"]) -> MetaOapg.properties.name: ... @typing.overload def get_item_oapg(self, name: typing.Literal["location"]) -> 'S3Location': ... @typing.overload def get_item_oapg(self, name: typing.Literal["statusTransitionLog"]) -> MetaOapg.properties.statusTransitionLog: ... @typing.overload def get_item_oapg(self, name: typing.Literal["ingestionExecution"]) -> typing.Union['IngestionExecution', schemas.Unset]: ... @typing.overload def get_item_oapg(self, name: typing.Literal["numberOfPages"]) -> typing.Union[MetaOapg.properties.numberOfPages, schemas.Unset]: ... @typing.overload def get_item_oapg(self, name: typing.Literal["numberOfClassifiedForms"]) -> typing.Union[MetaOapg.properties.numberOfClassifiedForms, schemas.Unset]: ... @typing.overload def get_item_oapg(self, name: typing.Literal["url"]) -> typing.Union[MetaOapg.properties.url, schemas.Unset]: ... @typing.overload def get_item_oapg(self, name: str) -> typing.Union[schemas.UnsetAnyTypeSchema, schemas.Unset]: ... def get_item_oapg(self, name: typing.Union[typing.Literal["documentId", "name", "location", "statusTransitionLog", "ingestionExecution", "numberOfPages", "numberOfClassifiedForms", "url", ], str]): return super().get_item_oapg(name) def __new__( cls, *args: typing.Union[dict, frozendict.frozendict, ], statusTransitionLog: typing.Union[MetaOapg.properties.statusTransitionLog, tuple, ], name: typing.Union[MetaOapg.properties.name, str, ], documentId: typing.Union[MetaOapg.properties.documentId, str, ], location: 'S3Location', ingestionExecution: typing.Union['IngestionExecution', schemas.Unset] = schemas.unset, numberOfPages: typing.Union[MetaOapg.properties.numberOfPages, int, schemas.Unset] = schemas.unset, numberOfClassifiedForms: typing.Union[MetaOapg.properties.numberOfClassifiedForms, int, schemas.Unset] = schemas.unset, url: typing.Union[MetaOapg.properties.url, str, schemas.Unset] = schemas.unset, _configuration: typing.Optional[schemas.Configuration] = None, **kwargs: typing.Union[schemas.AnyTypeSchema, dict, frozendict.frozendict, str, date, datetime, uuid.UUID, int, float, decimal.Decimal, None, list, tuple, bytes], ) -> 'DocumentMetadata': return super().__new__( cls, *args, statusTransitionLog=statusTransitionLog, name=name, documentId=documentId, location=location, ingestionExecution=ingestionExecution, numberOfPages=numberOfPages, numberOfClassifiedForms=numberOfClassifiedForms, url=url, _configuration=_configuration, **kwargs, ) from api_python_client.model.create_update_details import CreateUpdateDetails from api_python_client.model.ingestion_execution import IngestionExecution from api_python_client.model.s3_location import S3Location from api_python_client.model.status_transition import StatusTransition