/**
 * Session Summary Generator
 *
 * Provides end-of-session summaries including:
 * - Task accomplishments
 * - Tool usage statistics
 * - Token/cost metrics
 * - Duration and performance
 */
export interface ToolUsage {
    name: string;
    calls: number;
    successCount: number;
    failureCount: number;
    totalDurationMs: number;
}
export interface SessionMetrics {
    startTime: Date;
    endTime: Date;
    durationMs: number;
    messageCount: {
        user: number;
        assistant: number;
        total: number;
    };
    tokenCount: {
        input: number;
        output: number;
        total: number;
    };
    cost: {
        input: number;
        output: number;
        total: number;
    };
    toolUsage: ToolUsage[];
    filesModified: string[];
    filesCreated: string[];
    errors: number;
    checkpointsCreated: number;
}
export interface SessionSummary {
    metrics: SessionMetrics;
    highlights: string[];
    warnings: string[];
    suggestions: string[];
}
/**
 * Generate session summary from metrics
 */
export declare function generateSessionSummary(metrics: SessionMetrics): SessionSummary;
/**
 * Format session summary for display
 */
export declare function formatSessionSummary(summary: SessionSummary): string;
/**
 * Format compact session summary (one line)
 */
export declare function formatCompactSummary(summary: SessionSummary): string;
/**
 * Create metrics from session data
 */
export declare function createSessionMetrics(data: {
    startTime: Date;
    messages: Array<{
        type: string;
        tokenCount?: number;
    }>;
    toolCalls: Array<{
        name: string;
        success: boolean;
        durationMs: number;
    }>;
    filesModified: string[];
    filesCreated: string[];
    errors: number;
    checkpoints: number;
    inputTokens: number;
    outputTokens: number;
    costPerInputToken: number;
    costPerOutputToken: number;
}): SessionMetrics;
export default generateSessionSummary;
