"""Pydantic schemas for Dashboard endpoints.""" from __future__ import annotations from datetime import datetime from pydantic import BaseModel, ConfigDict from app.models.activity import ActivityType class KPIOut(BaseModel): """Headline KPIs for the org dashboard.""" open_deals_count: int pipeline_value: float won_this_month: int conversion_rate: float class ActivityFeedItem(BaseModel): """One item in the activity feed.""" model_config = ConfigDict(from_attributes=True) id: int type: ActivityType subject: str body: str | None = None account_id: int | None = None contact_id: int | None = None deal_id: int | None = None owner_id: int completed_at: datetime | None = None due_date: datetime | None = None created_at: datetime __all__ = ["ActivityFeedItem", "KPIOut"]