import { VerificationCheck } from '../types/check.js'; /** * OBv3 `Result.achievedLevel` validity check. * * Validates that every `credentialSubject.result[i].achievedLevel` * value is one of the `id`s declared in the * `RubricCriterionLevel[]` of the `ResultDescription` that the * result references via `Result.resultDescription`. * * Spec anchor: OBv3 §B.1.16. * * The check is **non-fatal** — an out-of-set or unresolvable * `achievedLevel` is informative but does not invalidate the * credential's signature or status. * * 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[]` (nothing * to validate against). * * Out of scope (intentional non-flagging — see plan Phase 3): * - A `Result` that carries `achievedLevel` but is missing * `resultDescription` entirely. This is a different rule * ("missing reference"); the `result-ref` check only flags * *unresolvable* references, not absent ones, and this check * follows the same convention. * - A `RubricCriterionLevel` entry that has no `id`. It is not * addressable, so it is filtered out of the valid-level set; a * future shape-validity check can flag malformed level entries. */ export declare const obv3AchievedLevelCheck: VerificationCheck; //# sourceMappingURL=achieved-level-check.d.ts.map