import uuid from datetime import datetime from typing import Optional from pydantic import BaseModel, ConfigDict class PageBase(BaseModel): title: str slug: str body: str = "" meta_title: Optional[str] = None meta_description: Optional[str] = None og_image_url: Optional[str] = None published: bool = False class PageCreate(PageBase): pass class PageUpdate(BaseModel): title: Optional[str] = None slug: Optional[str] = None body: Optional[str] = None meta_title: Optional[str] = None meta_description: Optional[str] = None og_image_url: Optional[str] = None published: Optional[bool] = None class PageResponse(PageBase): id: uuid.UUID created_at: datetime updated_at: datetime model_config = ConfigDict(from_attributes=True)