import type { WitnessAttestation, WitnessPool, WitnessPoolConfig, DiversityScore, WitnessConsensusResult } from '../types/oracle-witness.js';
export declare function createWitnessPool(config: WitnessPoolConfig): WitnessPool;
export declare function createAttestation(params: {
    witnessId: string;
    publicKey: string;
    privateKey: string;
    provider: string;
    modelFamily: string;
    observation: string;
    confidence: number;
}): WitnessAttestation;
export declare function verifyWitnessAttestation(att: WitnessAttestation): boolean;
export declare function addAttestation(pool: WitnessPool, att: WitnessAttestation): WitnessPool;
export declare function computeDiversityScore(attestations: WitnessAttestation[]): DiversityScore;
export declare function evaluateWitnessConsensus(pool: WitnessPool, config?: {
    minAgreementRatio?: number;
    minWeightedConfidence?: number;
}): WitnessConsensusResult;
/**
 * Check if adding a hypothetical witness would increase the pool's diversity.
 * Used by routing/scheduling to decide which oracle to query next.
 */
export declare function wouldIncreaseDiversity(pool: WitnessPool, candidateProvider: string, candidateModelFamily: string): boolean;
//# sourceMappingURL=oracle-witness.d.ts.map