import { VerificationCheck } from '../types/check.js'; /** * OBv3 missing-`Result.status` check. * * For every `credentialSubject.result[i]` whose linked * `ResultDescription` has `resultType === 'Status'`, asserts that the * `Result` carries a non-empty `status` value. * * Spec anchor: OBv3 §B.1.16 / §B.1.18. * * The check is **non-fatal** — a missing status is informative but * does not invalidate the credential's signature or status. * * Comparison policy: * - `resultType` comparison is **case-sensitive** (`=== 'Status'`). * OBv3 vocabulary tokens are spec-defined as exact strings; we do * not normalize case. * - `status: ''` (empty string) is treated as **missing**. The * spec's intent is "did the issuer record a status value"; an * empty string passes type but conveys no information. * * Skipped when: * - The subject has no verifiable credential. * - `credentialSubject` cannot be parsed under the OB shape. * - There are no `credentialSubject.result` entries. * - The credential has no `achievement.resultDescription[]` (no way * to know which results expect Status semantics). * * Out of scope (intentional non-flagging): * - A `Result` that is missing `resultDescription` entirely. Without * a target lookup this check cannot determine whether Status * semantics were intended; a future * `OB_RESULT_REQUIRES_RESULT_DESCRIPTION` check could cover that * case. */ export declare const obv3MissingResultStatusCheck: VerificationCheck; //# sourceMappingURL=missing-result-status-check.d.ts.map