""" Todo schemas module. """ from datetime import datetime from typing import Optional from pydantic import BaseModel class TodoBase(BaseModel): """ Base schema for Todo. """ title: str description: Optional[str] = None completed: bool = False class TodoCreate(TodoBase): """ Schema for creating a Todo. """ pass class TodoUpdate(BaseModel): """ Schema for updating a Todo. """ title: Optional[str] = None description: Optional[str] = None completed: Optional[bool] = None class TodoInDBBase(TodoBase): """ Base schema for Todo in DB. """ id: int created_at: datetime updated_at: datetime class Config: """ Config for the schema. """ orm_mode = True class Todo(TodoInDBBase): """ Schema for returning a Todo. """ pass