export interface SessionRecord { sessionId: string; startedAt: string; endedAt?: string; durationSeconds?: number; model?: string; source?: string; inputTokens: number; outputTokens: number; estimatedCostUsd?: number; messageCount: number; toolCallCount: number; toolCalls?: string; } export interface ModelBreakdown { model: string; sessions: number; totalInputTokens: number; totalOutputTokens: number; estimatedCostUsd: number; } export interface PlatformBreakdown { platform: string; sessions: number; totalInputTokens: number; totalOutputTokens: number; } export interface ToolBreakdown { tool: string; count: number; percentage: number; } export interface ActivityPattern { byDay: Record; byHour: Record; busiestDay: string; busiestHour: number; activeDays: number; maxStreak: number; } export interface TopSession { label: string; sessionId: string; value: number; date: string; } export interface InsightsReport { days: number; sourceFilter?: string; empty: boolean; generatedAt: string; overview: { totalSessions: number; totalInputTokens: number; totalOutputTokens: number; estimatedCostUsd: number; totalDurationSeconds: number; avgSessionDurationSeconds: number; totalMessages: number; totalToolCalls: number; dateRange?: { start: string; end: string; }; }; models: ModelBreakdown[]; platforms: PlatformBreakdown[]; tools: ToolBreakdown[]; activity: ActivityPattern; topSessions: TopSession[]; } export declare class InsightsEngine { private sessions; constructor(sessions?: SessionRecord[]); generate(days?: number, sourceFilter?: string): InsightsReport; private computeOverview; private computeModelBreakdown; private computePlatformBreakdown; private computeToolBreakdown; private computeActivityPatterns; private computeTopSessions; private emptyActivity; formatTerminal(report: InsightsReport): string; formatGateway(report: InsightsReport): string; } //# sourceMappingURL=insights.d.ts.map