/** * Proof Bundle Verification * CVF-US-007: Verify proof bundles for trust tier computation * POH-US-003: Validate proof bundles against PoH schema, verify receipts * with clawproxy DID, verify event-chain hash linkage, and * return trust tier based on validated components. * * Validates: * - Proof bundle payload against PoH schema (proof_bundle.v1) * - URM (Universal Resource Manifest) structure * - Event chain hash linkage and run_id consistency * - Gateway receipt envelopes (cryptographic verification) * - Attestations * * Computes trust tier based on which components are present and valid. * Fail-closed: unknown or malformed payloads always result in 'unknown' tier. */ import type { ProofBundleVerificationResult, VerificationError } from './types.js'; export interface ProofBundleVerifierOptions { /** Allowlisted gateway receipt signer DIDs (did:key:...). */ allowlistedReceiptSignerDids?: readonly string[]; /** Allowlisted attester DIDs for proof bundle attestations (did:key:...). */ allowlistedAttesterDids?: readonly string[]; /** * Optional materialized URM document (JSON object). * * POH-US-015: If provided, clawverify will: * - validate the URM against the strict schema (urm.v1) * - hash it (SHA-256 over JSON bytes) and compare to payload.urm.resource_hash_b64u * * If the proof bundle contains a URM reference but no `urm` is provided, * verification fails closed (result.status=INVALID). */ urm?: unknown; } /** * Verify a proof bundle envelope * * Acceptance Criteria: * - Validate URM + event chain + receipts + attestations * - Fail closed on unknown schema/version * - Return computed trust tier */ export declare function verifyProofBundle(envelope: unknown, options?: ProofBundleVerifierOptions): Promise<{ result: ProofBundleVerificationResult; error?: VerificationError; }>; //# sourceMappingURL=verify-proof-bundle.d.ts.map