from pydantic import BaseModel, Field from typing import Optional, List class EntrepriseSearch(BaseModel): """Modèle de réponse pour une entreprise trouvée""" company_name: str = Field(..., description="Raison sociale complète") siren: str = Field(..., description="Numéro SIREN (9 chiffres)") vat_number: str = Field(..., description="Numéro de TVA intracommunautaire") address: str = Field(..., description="Adresse complète du siège") naf_code: str = Field(..., description="Code NAF/APE") is_active: bool = Field(..., description="True si entreprise active") siret_siege: Optional[str] = Field(None, description="SIRET du siège") code_postal: Optional[str] = None ville: Optional[str] = None class EntrepriseSearchResponse(BaseModel): """Réponse globale de la recherche""" total_results: int results: List[EntrepriseSearch] query: str