from typing import TypedDict

from pydantic import BaseModel, Field


class FileModel(BaseModel):
    data: str


class RequestModel(BaseModel):
    relatesToMessage: str
    file: FileModel


class BodyModel(BaseModel):
    sendDocumentFileRequest: RequestModel


class EnvelopeModel(BaseModel):
    body: BodyModel = Field(..., alias='s:Body')


class Remd(BaseModel):
    Envelope: EnvelopeModel = Field(..., alias='s:Envelope')


class AEMDFileData(TypedDict):
    data: str
