from typing import Optional, Dict, List, Any from pydantic import BaseModel class Diagnostic(BaseModel): severity: str message: str class ProblemObject(BaseModel): schemaVersion: str status: str confidence: float domain: Optional[str] problemType: Optional[str] intent: Optional[str] entities: Dict[str, Any] parameters: Dict[str, Any] constraints: Dict[str, Any] missing: List[str] ambiguities: List[Any] diagnostics: List[Diagnostic] metadata: Dict[str, Any]