/**
 * Exit Stats Storage
 *
 * Stores session statistics to be displayed after the CLI exits.
 * This allows the stats to be printed to stdout after Ink unmounts,
 * ensuring they appear at the bottom of the terminal.
 */
import type { SessionMetadata } from '@dexto/core';
type ExitTokenUsage = NonNullable<SessionMetadata['tokenUsage']>;
export interface ExitSessionStats {
    sessionId?: string;
    duration?: string;
    messageCount: {
        total: number;
        user: number;
        assistant: number;
    };
    tokenUsage?: NonNullable<SessionMetadata['tokenUsage']>;
    estimatedCost?: SessionMetadata['estimatedCost'];
    modelStats?: NonNullable<SessionMetadata['modelStats']>;
    usageNote?: string;
}
export declare function setExitStats(stats: ExitSessionStats): void;
export declare function getExitStats(): ExitSessionStats | null;
export declare function clearExitStats(): void;
export declare function hasMeaningfulTokenUsage(tokenUsage: SessionMetadata['tokenUsage'] | undefined): tokenUsage is ExitTokenUsage;
export {};
//# sourceMappingURL=exit-stats.d.ts.map