/**
 * Live output-token throughput.
 *
 * Computes a rolling tokens-per-second readout from a session transcript's raw
 * content. This is the single source of truth for the throughput number the
 * Fleet shows next to a running agent — the extension used to carry its
 * own copy of this math (`computeOutputTokensPerSec`); it now reads `tokPerSec`
 * straight off `agents sessions --active --json` instead (issue #741).
 */
/** Agents whose transcript formats report per-turn output-token usage. */
export type ThroughputAgent = 'claude' | 'codex' | 'gemini';
/** Rolling window (seconds) the throughput average is computed over. */
export declare const DEFAULT_THROUGHPUT_WINDOW_SEC = 60;
/**
 * Output-token throughput (tokens/sec) over the last `windowSec` seconds.
 *
 * Sums output tokens (plus reasoning/thoughts tokens when the format reports
 * them separately) from entries whose timestamp falls within the window, and
 * divides by the window length.
 *
 * Formats:
 *   - Claude: JSONL. Each assistant turn is `{type: 'assistant', timestamp,
 *     message: {usage: {output_tokens}}}`.
 *   - Codex:  JSONL. Each token_count event is `{type: 'event_msg', timestamp,
 *     payload: {type: 'token_count', info: {last_token_usage: {output_tokens,
 *     reasoning_output_tokens}}}}`. `last_token_usage` is per-turn (not cumulative).
 *   - Gemini: single JSON object. `{messages: [{type: 'gemini', timestamp,
 *     tokens: {output, thoughts}}]}`. Caller must pass the whole file.
 */
export declare function computeTokPerSec(sessionContent: string, agent: ThroughputAgent, windowSec?: number, now?: number): number;
