/**
* tokens:stats command - Show token compression statistics from run journals
*
* Usage:
* babysitter tokens:stats [runId] [--json] [--all] [--runs-dir
]
*
* With runId: reads journal for that run, finds COMPRESSION_APPLIED events, prints table
* With --all: aggregates across all runs in the runs directory
* With --json: outputs JSON instead of table
*/
export interface CompressionEventData {
runId: string;
effectId?: string;
sessionId?: string;
layer: "1a" | "1b" | "2" | "3";
tool: "imptokens" | "rtk" | "open-thetokenco";
contentType: "user_prompt" | "bash_output" | "agent_task_context" | "task_result" | "process_library_file";
originalTokens: number;
compressedTokens: number;
tokensSaved: number;
reductionPct: number;
durationMs?: number;
model?: string;
[key: string]: unknown;
}
export interface CompressionEvent {
type: "COMPRESSION_APPLIED";
recordedAt: string;
checksum?: string;
data: CompressionEventData;
}
export interface JournalEventRaw {
type: string;
recordedAt?: string;
checksum?: string;
data?: unknown;
}
export interface RunCompressionStats {
runId: string;
date: string;
eventCount: number;
originalTokens: number;
compressedTokens: number;
tokensSaved: number;
reductionPct: number;
byLayer: Record;
}
export interface LayerStats {
eventCount: number;
originalTokens: number;
compressedTokens: number;
tokensSaved: number;
}
export interface AggregateStats {
totalRuns: number;
totalEvents: number;
totalOriginalTokens: number;
totalCompressedTokens: number;
totalTokensSaved: number;
overallReductionPct: number;
runs: RunCompressionStats[];
}
export interface TokensStatsOptions {
runId?: string;
all?: boolean;
json?: boolean;
runsDir?: string;
}
export declare function handleTokensStats(options: TokensStatsOptions): Promise;
//# sourceMappingURL=tokensStats.d.ts.map