import { type JudgeLLM } from './adapters'; export type PairwiseWinner = 'a' | 'b' | 'tie'; export type PairwiseResult = { ok: true; winner: PairwiseWinner; rationale: string; cacheHit: boolean; costUsd: number; latencyMs: number; } | { ok: false; error: string; }; export type ComparePairInput = { taskType: string; input: string; outputA: string; outputB: string; variantIdA?: string | null; variantIdB?: string | null; judgeLLM?: JudgeLLM; }; export declare function comparePair(params: ComparePairInput): Promise; export declare function updateElo(ratingA: number, ratingB: number, outcome: number, k?: number): { newA: number; newB: number; }; export type RecordMatchInput = { taskType: string; variantIdA: string; variantIdB: string; winner: PairwiseWinner; input?: string; k?: number; }; export type MatchResult = { matchId: string; eloA: number; eloB: number; }; export declare function recordPairwiseMatch(params: RecordMatchInput): MatchResult; export type BradleyTerryResult = Record; export declare function fitBradleyTerry(matches: Array<{ a: string; b: string; winner: PairwiseWinner; }>, opts?: { iterations?: number; tolerance?: number; }): BradleyTerryResult;