import type { EscrowHold, EscrowFulfillmentCondition } from '../types/escrow.js';
import type { DisputeArtifact, DisputeBond, DisputeOverlay, DisputeSubject } from '../types/dispute.js';
import type { TypedEvidence } from '../types/evidence.js';
import type { WitnessAttestation, WitnessObservationBasis } from '../types/gateway.js';
export declare function createEscrowHold(input: {
    initiatorAgentId: string;
    counterpartyAgentId: string;
    delegationId: string;
    amount: {
        value: number;
        currency: string;
    };
    fulfillmentCondition: EscrowFulfillmentCondition;
    expiresInSeconds: number;
    gatewayId: string;
    initiatorPrivateKey: string;
    gatewayPrivateKey: string;
}): EscrowHold;
export declare function verifyEscrowHold(escrow: EscrowHold, initiatorPublicKey: string, gatewayPublicKey: string): {
    valid: boolean;
    errors: string[];
};
export declare function createDisputeArtifact(input: {
    claimantId: string;
    claimantPrivateKey: string;
    bond: DisputeBond;
    subject: DisputeSubject;
    challengedArtifactId: string;
    challengedArtifactType: 'receipt' | 'escrow' | 'deliverable' | 'delegation';
    claim: string;
    evidence: TypedEvidence[];
    respondentId: string;
    resolutionTTLSeconds: number;
    freezeScope: {
        escrowIds: string[];
        actionScopes?: string[];
    };
    freezeSeverity: 'hard' | 'soft' | 'warning';
    gatewayId: string;
    gatewayPrivateKey: string;
}): DisputeArtifact;
export declare function verifyDisputeArtifact(dispute: DisputeArtifact, claimantPublicKey: string, gatewayPublicKey: string): {
    valid: boolean;
    errors: string[];
};
export declare function createWitnessAttestation(input: {
    witnessId: string;
    witnessPrivateKey: string;
    witnessRole: WitnessAttestation['witnessRole'];
    receiptId: string;
    receiptHash: string;
    attestation: WitnessAttestation['attestation'];
    observationBasis: WitnessObservationBasis;
    predictionError?: WitnessAttestation['predictionError'];
}): WitnessAttestation;
export declare function verifyWitnessAttestation(att: WitnessAttestation, witnessPublicKey: string): boolean;
export declare function evaluateDisputeOverlay(activeDisputes: DisputeArtifact[], requestedScope: string, agentId: string): DisputeOverlay;
//# sourceMappingURL=transactional.d.ts.map