import type { SpecialistRole } from '../../types/multi-teammate-review.js';
export interface SpecialistDescriptor {
    role: SpecialistRole;
    modelId: string;
    promptHash: string;
}
export interface HeterogeneityDuplicate {
    a: SpecialistRole;
    b: SpecialistRole;
    modelId: string;
    promptHash: string;
}
export interface HeterogeneityResult {
    ok: boolean;
    duplicates: HeterogeneityDuplicate[];
}
/**
 * Check that no two specialists share identical (modelId, promptHash).
 *
 * If any pair of specialists is identical, the panel would produce trivially
 * aligned critique — which defeats the multi-teammate review purpose.
 *
 * Returns { ok: true, duplicates: [] } when all pairs are distinct.
 * Returns { ok: false, duplicates: [...] } listing every duplicate pair found.
 */
export declare function checkHeterogeneity(specialists: SpecialistDescriptor[]): HeterogeneityResult;
//# sourceMappingURL=heterogeneity-gate.d.ts.map