import type { JudgeCallFn, JudgeCallOptions, JudgeMessage } from "../../config/types.js"; /** Options for the in-memory judge cache. */ export interface JudgeCacheOptions { /** Maximum cache entries. Evicts oldest entry when exceeded. @default 1000 */ readonly maxEntries?: number | undefined; } /** * Wraps a JudgeCallFn with in-memory memoization. * * Cache key: SHA-256 of (messages + model + maxTokens). * Only caches calls with temperature 0 (or undefined, which defaults to 0). * Non-zero temperature calls pass through uncached (non-deterministic). * * @example * ```ts * import { createCachingJudge, defineConfig } from "agent-eval-kit"; * * const cachedJudge = createCachingJudge(myJudgeCall); * defineConfig({ judge: { call: cachedJudge } }); * ``` */ export declare function createCachingJudge(judge: JudgeCallFn, options?: JudgeCacheOptions): JudgeCallFn; /** Computes a SHA-256 cache key from judge messages, model, and maxTokens. Temperature is excluded since only temperature-0 calls are cached. */ export declare function computeCacheKey(messages: readonly JudgeMessage[], options?: JudgeCallOptions): string; //# sourceMappingURL=judge-cache.d.ts.map