/** * Usage data — wraps `codexbar usage` for every agent in * `config.agents.definitions` that has a `usage` block configured. The * orchestrator's dispatcher consumes the per-agent snapshot to gate work by * `orchestrator.sessionLimitPercentage`. There is no CLI surface for usage — * `codexbar` itself is the user-facing inspection tool. */ import type { ResolvedConfig } from "./config.ts"; interface NormalizedUsage { session: number | null; sessionEndDuration: number | null; weekly: number | null; weekEndDuration: number | null; /** Set when the snapshot is fail-closed because codexbar could not be read. */ unavailableReason?: string; } export type UsageByAgent = Record; /** * Synthetic snapshot used when codexbar can't be read for a agent. Both * window fractions are pinned to Infinity so the dispatcher's * `session * 100 > sessionLimitPercentage` check fires at every legal * threshold — `sessionLimitPercentage: 100` would otherwise accept * `session: 1` (100 > 100 is false), reopening the very gate this entry * exists to close. */ export declare const EXHAUSTED_USAGE: NormalizedUsage; export declare function gatedAgents(config: ResolvedConfig): string[]; export declare function getUsageByAgent(config: ResolvedConfig, signal?: AbortSignal): Promise; export {}; //# sourceMappingURL=usage.d.ts.map