/** Token classes for one day or the total (byte-shape of the endpoint JSON). */ export interface MeteringTokens { output: number; input: number; cacheWrite: number; cacheRead: number; } export interface MeteringDay { date: string; activeMs: { thinking: number; messaging: number; toolUse: number; }; idleMs: number; turns: number; tools: number; tokens: MeteringTokens; costGBP: { opus: number; sonnet: number; }; } export interface MeteringSummary { sessionId: string; days: MeteringDay[]; totals: Omit; corrOutputVsActive: number; pricing: { opusPriceDate: string; usdPerGbp: number; tokenizerFactor: number; }; } export interface SessionMeteringParams { sessionId: string; /** Loopback manager base — `http://127.0.0.1:${CLAUDE_SESSION_MANAGER_PORT}`. * Defaults from env at call time. */ managerBase?: string; /** Test hook — defaults to global `fetch`. */ fetchImpl?: typeof fetch; } export interface SessionMeteringResult { ok: boolean; status: number; summary?: MeteringSummary; error?: string; } export declare function sessionMetering(params: SessionMeteringParams): Promise; /** Markdown table matching the operator usage modal's columns, so the agent * surface and the modal present the same figures. */ export declare function renderMeteringTable(s: MeteringSummary): string; //# sourceMappingURL=session-metering.d.ts.map