UNPKG

cost-claude

Version:

Claude Code cost monitoring, analytics, and optimization toolkit

43 lines 1.31 kB
import { ClaudeMessage } from '../types/index.js'; import { JSONLParser } from '../core/jsonl-parser.js'; import { CostCalculator } from '../core/cost-calculator.js'; export interface SessionAnalysis { sessionId: string; duration: number; totalCost: number; messageCount: number; userMessageCount: number; assistantMessageCount: number; costBreakdown: { inputTokensCost: number; outputTokensCost: number; cacheCreationCost: number; cacheReadCost: number; }; efficiency: { cacheHitRate: number; avgResponseTime: number; costPerMinute: number; tokensPerMessage: number; }; timeline: MessageTimeline[]; } export interface MessageTimeline { timestamp: string; type: string; cost: number; cumulativeCost: number; summary: string; } export declare class SessionAnalyzer { private parser; private calculator; constructor(parser: JSONLParser, calculator: CostCalculator); analyzeSession(messages: ClaudeMessage[], sessionId: string): Promise<SessionAnalysis | null>; private calculateTotalCost; private calculateCostBreakdown; private calculateEfficiency; private buildTimeline; private extractSummary; } //# sourceMappingURL=session-analyzer.d.ts.map