/** * TracingTokenCache * * Wraps a {@link TokenCache} implementation and emits an OpenTelemetry span * around each public method. The wrapped operation set is snapshotted at * construction so later property replacement or accessor behavior cannot * change the cache boundary underneath the proxy. */ import type { CacheStats, TokenCache, TokenCacheEntry } from "./types.js"; export interface TracingTokenCacheOptions { /** Span name prefix, e.g. "cache.extension" produces "cache.extension.get". */ spanPrefix?: string; /** Whether closing this wrapper also closes the wrapped cache. */ closeInner?: boolean; } export declare class TracingTokenCache implements TokenCache { private readonly operations; private readonly prefix; private readonly closeInner; private closed; private closePromise; constructor(inner: TokenCache, options?: TracingTokenCacheOptions); get(key: string): Promise; set(key: string, entry: TokenCacheEntry): Promise; delete(key: string): Promise; clear(): Promise; has(key: string): Promise; stats(): Promise; close(): Promise; private assertOpen; } //# sourceMappingURL=tracing-cache.d.ts.map