from pydantic import BaseModel, Field from typing import Optional from datetime import datetime import uuid class RentMonitoringBase(BaseModel): property_address: str property_type: str bedrooms: int bathrooms: int square_feet: float rent_amount: float listing_url: str listing_source: str is_available: bool = Field(True) class RentMonitoringCreate(RentMonitoringBase): pass class RentMonitoringUpdate(RentMonitoringBase): property_address: Optional[str] = None property_type: Optional[str] = None bedrooms: Optional[int] = None bathrooms: Optional[int] = None square_feet: Optional[float] = None rent_amount: Optional[float] = None listing_url: Optional[str] = None listing_source: Optional[str] = None is_available: Optional[bool] = None class RentMonitoringSchema(RentMonitoringBase): id: uuid.UUID created_at: datetime updated_at: datetime class Config: orm_mode = True