from pydantic import BaseModel from typing import List class ICDCode(BaseModel): code: str description: str explanation: str class CPTCode(BaseModel): code: str description: str explanation: str class CodingResponse(BaseModel): icd_codes: List[ICDCode] cpt_codes: List[CPTCode] overall_summary: str class Config: json_schema_extra = { "example": { "icd_codes": [ { "code": "J20.9", "description": "Acute bronchitis, unspecified", "explanation": "Patient presents with acute bronchitis as documented in provider notes" } ], "cpt_codes": [ { "code": "99213", "description": "Office visit, established patient", "explanation": "Comprehensive examination performed as documented" } ], "overall_summary": "Patient encounter for acute bronchitis with examination and treatment" } } class FileUploadResponse(BaseModel): success: bool filename: str extracted_text_length: int pii_removed: bool pii_count: int icd_codes: List[ICDCode] cpt_codes: List[CPTCode] overall_summary: str