Paperjet/backend/app/schemas/document.py

32 lines
625 B
Python

"""Pydantic schemas for Document APIs."""
from pydantic import BaseModel
class DocumentMeta(BaseModel):
id: str
title: str
filename: str
mime_type: str
size_bytes: int
in_trash: bool
created_at: str
updated_at: str
deleted_at: str | None
model_config = {"from_attributes": True}
class DocumentListResponse(BaseModel):
items: list[DocumentMeta]
total: int
class BulkDeleteRequest(BaseModel):
ids: list[str]
class BulkRestoreRequest(BaseModel):
ids: list[str]
class DocumentUpdateRequest(BaseModel):
title: str | None = None
in_trash: bool | None = None