from pydantic import BaseModel, Field from typing import Dict, List, Optional class MayoSearchResult(BaseModel): order_id: str # eg 0001/2025 client: str prod_list: str # eg STY-25 url: str # url whole order guitars_url: List[str] = Field(default_factory=list) # urls concrete guitars class MayoGuitarDetails(BaseModel): order_number: str # eg 0001/2025/1 completion_date: str # eg 2025-01-31 client: str model: str spec: Dict[str, Dict[str, List[str]]] class MayoResponse(BaseModel): order_number: str # eg 0001/2025/1 completion_date: str # eg 2025-01-31 prod_list: str # eg STY-25 url: str # url of a specific guitar client: str # reciever model: str # guitar model spec: Dict[str, Dict[str, List[str]]] # specification