import type { GrawkusConfig, Message } from './types.js';
export type LifespanLevel = 'low' | 'medium' | 'high';
export interface LifespanDimension {
    id: 'compression' | 'interference' | 'revision' | 'maintenance';
    label: string;
    score: number;
    level: LifespanLevel;
    evidence: string[];
    actions: string[];
}
export interface LifespanReport {
    format: 'grawkus-lifespan-v1';
    version: 1;
    generatedAt: string;
    cwd: string;
    summary: {
        overallScore: number;
        level: LifespanLevel;
        estimatedTokens: number;
        contextWindowTokens: number;
        contextPercent: number;
        messageCount: number;
        userTurns: number;
        assistantTurns: number;
        toolMessages: number;
        toolCalls: number;
        toolErrors: number;
    };
    dimensions: LifespanDimension[];
    nextActions: string[];
}
export interface LifespanFormatOptions {
    json: boolean;
}
export declare function parseLifespanArgs(args: string): LifespanFormatOptions;
export declare function buildLifespanReport(messages: Message[], config: Pick<GrawkusConfig, 'model' | 'provider' | 'baseURL' | 'contextWindowTokens' | 'fallbackModel' | 'memory'>, cwd: string, now?: Date): LifespanReport;
export declare function formatLifespanReport(report: LifespanReport, options?: LifespanFormatOptions): string;
