import type { AgentSession } from "../../core/agent-session.js"; import type { SessionStats } from "../../core/agent-session-types.js"; import type { RpcClient } from "../rpc/rpc-client.ts"; /** The engine's latest session stats for an isolated host session, or undefined before the first reply. */ export declare function getEngineSessionStats(session: AgentSession): SessionStats | undefined; /** * Caches the engine's `get_session_stats` reply for the host footer. One request * is in flight at a time; triggers that arrive meanwhile share one trailing * request. `reset()` drops the cache and discards every reply already in flight. */ export declare class EngineSessionStats { private stats; private epoch; private inFlight; private refreshQueued; private readonly listeners; private readonly client; constructor(client: Pick); get current(): SessionStats | undefined; track(session: AgentSession): void; onChange(listener: () => void): () => void; reset(): void; refresh(): void; private request; } //# sourceMappingURL=engine-session-stats.d.ts.map