import type React from 'react'; import type { FleetEntry } from '../app-state.js'; export interface FleetMonitorProps { entries: Record; /** Fleet-wide accumulated cost. */ totalCost: number; /** Fleet-wide token totals, when available. */ totalTokens?: { input: number; output: number; }; /** Concurrency ceiling for the gauge. */ maxConcurrent?: number | undefined; /** 1s clock tick so elapsed times + sparklines stay live. */ nowTick: number; /** Active or completed collaborative debugging session. */ collabSession?: { sessionId: string | null; bugCount: number; planCount: number; evalCount: number; overallVerdict: 'approve' | 'needs_revision' | 'reject' | null; timeline: Array<{ at: number; icon: string; color: string; text: string; }>; startedAt: number | null; } | null; } /** * Bucket recent tool executions into a fixed number of time bins ending at * `now`, returning a per-bin count. Drives the per-agent activity sparkline * in the Agents (live) monitor; exported here because it was historically * defined alongside the fleet monitor. */ export declare function bucketActivity(recentTools: ReadonlyArray<{ at: number; }>, now: number, bins?: number, binMs?: number): number[]; /** Render a numeric series as a unicode sparkline. */ export declare function sparkline(values: number[]): string; /** * Compact `provider:model` label for the monitors. Strips any `provider/` * prefix from the model id and keeps it terminal-friendly. Returns '' when * neither is known (e.g. a leader entry before the first request resolves). * Shared by the Agents (Ctrl+G) and Fleet (Ctrl+F) monitors. */ export declare function fmtModelLabel(provider?: string, model?: string): string; /** * Fleet orchestration dashboard (Ctrl+F). Concurrency gauge, fleet totals, * a compact one-line-per-agent table, and a recent-events timeline. Live * per-agent context (current tool / streaming tail) lives in the Agents * monitor (Ctrl+G) — this view is for "how the fleet is doing overall". * * Prunes terminal agents older than TERMINAL_TTL_MS from the table and * timeline to prevent unbounded growth in long-running sessions. */ export declare function FleetMonitor({ entries, totalCost, totalTokens, maxConcurrent, nowTick, collabSession, }: FleetMonitorProps): React.ReactElement; //# sourceMappingURL=fleet-monitor.d.ts.map