from pydantic import BaseModel from typing import Optional from datetime import datetime from decimal import Decimal class DestinationBase(BaseModel): name: str country: str city: str description: Optional[str] = None latitude: Optional[Decimal] = None longitude: Optional[Decimal] = None category: Optional[str] = None rating: Optional[Decimal] = None image_url: Optional[str] = None class DestinationCreate(DestinationBase): pass class DestinationUpdate(BaseModel): name: Optional[str] = None country: Optional[str] = None city: Optional[str] = None description: Optional[str] = None latitude: Optional[Decimal] = None longitude: Optional[Decimal] = None category: Optional[str] = None rating: Optional[Decimal] = None image_url: Optional[str] = None class DestinationResponse(DestinationBase): id: int created_at: datetime updated_at: Optional[datetime] = None class Config: from_attributes = True