"""Common schemas for pagination, errors, etc.""" from __future__ import annotations from pydantic import BaseModel class ErrorResponse(BaseModel): detail: str code: str | None = None fields: dict[str, str] | None = None class HealthResponse(BaseModel): status: str version: str class NotificationResponse(BaseModel): id: str type: str title: str body: str | None = None read_at: str | None = None created_at: str | None = None class NotificationListResponse(BaseModel): items: list[NotificationResponse] total: int page: int page_size: int class UnreadCountResponse(BaseModel): count: int class NotificationPreferenceUpdate(BaseModel): is_enabled: bool class NotificationTypeResponse(BaseModel): type_key: str plugin_name: str category: str label: str description: str | None = None is_enabled_by_default: bool is_enabled: bool class NotificationPreferenceResponse(BaseModel): type_key: str is_enabled: bool