from pydantic_xml import BaseXmlModel, attr, element from typing import TypedDict from pydantic import BaseModel class AEMDFile(TypedDict): emdrId: str localUid: str registrationDate: str registrationDateTime: str storeTillDate: str DocKind: str IsSemd: bool class AEMDReturnFile(TypedDict): emdrId: str registrationDate: str DocKind: str IsSemd: bool isCached: bool class AEMDDemandContent(TypedDict): messageId: str emdrId: str vitaId: str class Notifications(TypedDict): notifications: list[dict[str, str | bool]] class Complaints(BaseModel): complaints: str NS = 'urn:hl7-org:v3' class TextElement(BaseXmlModel, tag='text', ns=NS): representation: str = attr() media_type: str = attr(name='mediaType') content: str class NonXMLBody(BaseXmlModel, tag='nonXMLBody', ns=NS): text: TextElement = element() class Component(BaseXmlModel, tag='component', ns=NS): non_xml_body: NonXMLBody = element(tag='nonXMLBody') class ClinicalDocument(BaseXmlModel, tag='ClinicalDocument', ns=NS): component: Component = element() class DownloadFile(BaseModel): link: str