import type { AuthorityValidationResult } from '../authority-delegation/types.js'; import type { LifecycleStateResult } from './types.js'; export interface LifecycleMappingOptions { /** draft-03 chain verification reports a delegation whose `time.not_before` has not been * reached as `invalid` with failure code `NOT_YET_VALID`. One reading of the six-value * vocabulary calls that a validly issued grant whose enabling date has not arrived, * whose remedy is to wait, which would be `not_yet_effective` rather than `invalid`. * * **Default `false`: the mapping keeps the chain's own reading.** The concept document * has not decided this one. The `activation-not-established` fixture puts a grant time * facet and an activation-condition date at the same instant and records the split as a * finding about the proposed text rather than asserting either answer: "the text does * not say whether a waiting grant should be invalid, not yet effective, or something * else." This module is the shared base several other proposed lifecycle surfaces build * on, so it does not embed a contested reading as a default. Settling it belongs to the * activation-condition surface, which is where a condition distinct from the time facet * gets a representation at all. * * Set `true` to take the CAND-04 reading. It then applies ONLY when `NOT_YET_VALID` is * the sole failure code in the result. A result carrying it alongside any other failure * still maps to `invalid` on that other failure, because something more than the date is * wrong. * * Concept source: aeoess/agent-authority-lifecycle, invariant candidate CAND-04. * Proposed. */ readonly notYetValidAsNotYetEffective?: boolean; } /** * Express an `AuthorityValidationResult` in the six-value lifecycle vocabulary. * * | chain state | lifecycle verdict | * |-----------------|---------------------------------------------------------------| * | `valid` | `valid`, reason `CHAIN_VALID` | * | `invalid` | `invalid`, reason = the first failure code. `NOT_YET_VALID` | * | | included, unless the caller opts into the CAND-04 reading | * | `indeterminate` | `not_established`, reason = the first failure code, `missing` | * | | from that code | * | `unsupported` | `not_established`, reason = the first failure code, `missing` | * | | `['source']` | * * `unsupported` mapping to `not_established` is a judgment call worth naming. Draft-03 * keeps `unsupported` as its own value, and this vocabulary has no member for it. A * verifier that declines to judge a record it does not recognise has not reached a * conclusion about the artifact, which is the evidential sense of not established, and the * missing limb is source: the record is unrecognised. The original chain result is * unchanged and still says `unsupported`, so nothing is lost by reporting both. * * Reported alongside the chain result, never in place of it. * Proposed. Concept source: aeoess/agent-authority-lifecycle. */ export declare function mapAuthorityValidationToLifecycle(result: AuthorityValidationResult, options?: LifecycleMappingOptions): LifecycleStateResult; //# sourceMappingURL=map.d.ts.map