from typing import Optional from pydantic import BaseModel, Field class UpdateBrandRequest(BaseModel): brand_name: str = Field(..., description="Brand name") logo_url: str = Field(..., description="Brand Logo url") proof_id_url: Optional[str] = Field(None, description="Agent-Brand Proof id url") lat: Optional[float] = Field(None, description="Latitude") long: Optional[float] = Field(None, description="Longitude") class UpdatePromptsRequest(BaseModel): prompts: dict = Field(..., description="Prompts") class RefreshRequest(BaseModel): refresh_token: str = Field(..., description="Refresh token") class UserExistsRequest(BaseModel): email: Optional[str] = Field(None, description="email") phone: Optional[str] = Field(None, description="phone") class LoginRequest(BaseModel): email: str = Field(..., description="Email address") password: str = Field(..., description="Password") class LoginPasswordlessRequest(BaseModel): phone: str = Field(..., description="Phone number") class VerifyPasswordlessRequest(BaseModel): phone: str = Field(..., description="Phone number") token: str = Field(..., description="otp") class RegisterRequest(BaseModel): first_name: str last_name: str email: str phone: str category_id: int # password_hash: str uuid: Optional[str] = Field(None, description="uuid") class VerifyRequest(BaseModel): uuid: str