export interface InteractionOutcome {
    toolName: string;
    requestHash: string;
    responseHash: string;
    status: 'success' | 'failure' | 'partial';
    summary: string;
    /** Optional spend amount attributed to this interaction */
    spend?: {
        amount: number;
        currency: string;
    };
}
export interface BilateralReceipt {
    receiptId: string;
    version: '1.0';
    requestingAgentId: string;
    servingAgentId: string;
    delegationId?: string;
    outcome: InteractionOutcome;
    requestedAt: string;
    completedAt: string;
    agreedAt: string;
    requestingAgentSignature: string;
    servingAgentSignature: string;
    gatewaySignature?: string;
    evidenceCommitments?: EvidenceCommitment[];
    /**
     * Optional audience binding. When present, this receipt is bound to the named
     * recipient identifier(s); a verifier rejects it when presented to any other
     * recipient (see src/v2/audience-binding). Additive and versioned: a receipt
     * that OMITS this field signs and serializes byte-for-byte as before, so
     * existing receipts remain valid. Both co-signers sign over it when present.
     */
    aud?: import('../v2/audience-binding/types.js').AudienceBinding;
    fieldDisclosureProfile?: unknown;
}
export interface EvidenceCommitment {
    type: string;
    credentialHash: string;
    issuerKid?: string;
    jwks?: string;
    pass?: boolean;
    committedAt: string;
}
export type RevocationReason = 'key_rotation' | 'compromise' | 'decommission' | 'policy_violation' | 'manual';
export interface BilateralReceiptVerification {
    valid: boolean;
    requestingAgentSignatureValid: boolean;
    servingAgentSignatureValid: boolean;
    gatewaySignatureValid: boolean | null;
    outcomeConsistent: boolean;
    timingValid: boolean;
    errors: string[];
}
export interface CompromiseWindowCheck {
    status: 'safe' | 'warn' | 'error';
    reason: string;
    proofTimestamp: string;
    revokedAt: string;
    compromisedSince?: string;
}
//# sourceMappingURL=bilateral-receipt.d.ts.map