/**
 * Adapter factories — lift each existing agent-eval primitive into the
 * Analyst contract without re-implementing it.
 *
 * Five primitives, five factories. Each one:
 *   - Builds an Analyst with a stable id (caller chooses; defaults
 *     given), a sensible default `inputKind`, a version derived from
 *     the wrapped primitive's version + an adapter revision, and an
 *     `analyze()` that calls the primitive and lifts its output to
 *     AnalystFinding[] using `makeFinding()`.
 *   - Maps severities: the existing `Severity` ('critical' | 'major' |
 *     'minor' | 'info') projects onto AnalystSeverity ('critical' |
 *     'high' | 'medium' | 'low' | 'info'); 'major' → 'high', 'minor' →
 *     'medium'. Domain analysts that want finer-grained mapping override.
 *
 * Adapters never own state. Calling the same factory twice with the
 * same primitive instance is safe.
 */
import type { Severity as LayerSeverity, MultiLayerVerifier, VerifyOptions } from '../multi-layer-verifier';
import { RunCritic, type RunTrace } from '../run-critic';
import { type SemanticConceptJudgeInput, type SemanticConceptJudgeOptions } from '../semantic-concept-judge';
import type { JudgeFn, JudgeInput, TCloud } from '../types';
import type { Analyst, AnalystSeverity } from './types';
export declare function liftSeverity(s: LayerSeverity): AnalystSeverity;
export interface VerifierAdapterOpts<Env> {
    id?: string;
    area?: string;
    verifier: MultiLayerVerifier<Env>;
    /**
     * The verifier expects an `env` per run. Adapters take it from
     * `AnalystRunInputs.custom[<id>]` via the registry's 'custom' routing.
     */
    options?: Omit<VerifyOptions<Env>, 'env'>;
}
export declare function createVerifierAdapter<Env>(opts: VerifierAdapterOpts<Env>): Analyst<Env>;
export interface RunCriticAdapterOpts {
    id?: string;
    area?: string;
    critic?: RunCritic;
    /** Optional threshold below which a dimension is reported as a finding. Default 0.5. */
    threshold?: number;
}
export declare function createRunCriticAdapter(opts?: RunCriticAdapterOpts): Analyst<RunTrace>;
export interface JudgeAdapterOpts {
    id?: string;
    area?: string;
    judge: JudgeFn;
    /** TCloud handle the JudgeFn calls. */
    tcloud: TCloud;
    /** Optional cost classification — most judges call an LLM. */
    cost?: Analyst['cost'];
    /** Optional threshold below which a JudgeScore becomes a finding. Default 6 (on 0-10 scale). */
    threshold?: number;
}
export declare function createJudgeAdapter(opts: JudgeAdapterOpts): Analyst<JudgeInput>;
export interface SemanticConceptJudgeAdapterOpts {
    id?: string;
    area?: string;
    options?: SemanticConceptJudgeOptions;
}
export declare function createSemanticConceptJudgeAdapter(opts?: SemanticConceptJudgeAdapterOpts): Analyst<SemanticConceptJudgeInput>;
//# sourceMappingURL=adapters.d.ts.map