/**
 * Evaluates trust for graph writers using signed evidence.
 *
 * Reads trust record chains via TrustChainPort, builds trust state,
 * evaluates writer policies, and returns TrustAssessment.
 *
 * @module domain/services/audit/TrustEvaluationService
 */
import type TrustChainPort from '../../../ports/TrustChainPort.ts';
import { TrustAssessment } from '../../trust/TrustAssessment.ts';
type TrustAssessmentStatus = 'configured' | 'pinned' | 'error' | 'not_configured';
type TrustCrypto = {
    verifySignature: (params: {
        algorithm: string;
        publicKeyBase64: string;
        signatureBase64: string;
        payload: Uint8Array;
    }) => boolean;
    computeKeyFingerprint: (publicKeyBase64: string) => string;
};
export type TrustEvaluationOptions = {
    pin?: string;
    mode?: string;
    writerIds?: string[];
    source?: string;
    sourceDetail?: string | null;
    status?: TrustAssessmentStatus;
};
/**
 * Evaluates trust for graph writers using the trust record chain.
 */
export default class TrustEvaluationService {
    private readonly _trustChain;
    private readonly _trustCrypto;
    private readonly _listWriterIds;
    constructor(opts: {
        trustChain?: TrustChainPort;
        trustCrypto?: TrustCrypto;
        listWriterIds: (graphName: string) => Promise<string[]>;
    });
    evaluateTrust(graphName: string, options?: TrustEvaluationOptions): Promise<TrustAssessment>;
    private _checkPreconditions;
    private _failWith;
    private _readRecords;
    private _buildNotConfiguredAssessment;
    private _evaluateWithState;
    private _buildTrustState;
}
export {};
