import type { ProviderAuthProviderStatus } from "@mono-agent/agent-contracts"; import type { RunSummary } from "@mono-agent/observability"; interface ProviderObservation { readonly verifiedAt?: string; readonly failure?: NonNullable; } export interface ProviderAuthObservationTracker { /** Capture the current credential generation before this run can reach a provider. */ runStarted(runId: string): void; observe(summary: RunSummary): void; get(providerId: string): ProviderObservation | undefined; /** Retain observations only for the agent's current bounded used-provider set. */ retainProviders(providerIds: readonly string[]): void; /** Invalidate proof for the replaced credential while retaining only unrelated availability evidence. */ credentialPersisted(providerId: string): void; recordSuccess(providerId: string, model: string, observedAt?: string): void; recordFailure(providerId: string, model: string, kind: "provider_auth" | "provider_unavailable", observedAt?: string): void; invalidate(providerId: string, observedAt?: string): void; } export declare function createProviderAuthObservationTracker(now?: () => number): ProviderAuthObservationTracker; export {}; //# sourceMappingURL=provider-auth-observations.d.ts.map