"""News module DTO """ import datetime import uuid from typing import Optional from sqlmodel import SQLModel from src.files.dto import ReadFile from src.news.models import BaseNews class CreateNews(BaseNews): """CreateNews DTO """ hero_id: uuid.UUID class UpdateNews(SQLModel): """UpdateNews DTO """ title: Optional[str] = None subtitle: Optional[str] = None long_description: Optional[dict] = None short_description: Optional[str] = None carousel: Optional[bool] = None banner: Optional[bool] = None expiry_date: Optional[datetime.datetime] = None class ReadNews(BaseNews): """ReadNews DTO """ id: uuid.UUID hero: Optional[ReadFile] = None