from dataclasses import dataclass from datetime import datetime from enum import Enum class ReportType(Enum): CONTENT = "content" CONTENT_STATS = "content_stats" FULL_AUDIT = "full_audit" @property def label(self) -> str: return { ReportType.CONTENT: "Content Analysis", ReportType.CONTENT_STATS: "Content + Stats", ReportType.FULL_AUDIT: "Full Audit", }[self] @property def description(self) -> str: return { ReportType.CONTENT: "Topics, tone, themes, content strategy", ReportType.CONTENT_STATS: "Above + posting frequency, engagement patterns", ReportType.FULL_AUDIT: "All above + sentiment, audience insights, recommendations", }[self] @dataclass class ChannelMessage: id: int date: datetime text: str views: int | None = None forwards: int | None = None replies: int | None = None