noa-receipt
Version:
NOA Agent Action Receipt — open, offline-verifiable provenance for AI-agent actions. The governance/receipt organ only; the NOA brain is separate and proprietary.
33 lines (32 loc) • 1.2 kB
TypeScript
import type { Keyring } from "./keys.js";
export declare const SIGNING_KEY_LIFECYCLE_SPEC = "noa.signing-key-lifecycle/0.1";
export interface SigningKeyLifecycleEntry {
readonly publicKey: string;
readonly retiredAt: string | null;
}
export interface SigningKeyLifecycle {
readonly spec: typeof SIGNING_KEY_LIFECYCLE_SPEC;
readonly keys: Readonly<Record<string, SigningKeyLifecycleEntry>>;
}
export interface ParsedVerificationKeyring {
readonly keyring: Keyring;
readonly retiredKids: Readonly<Record<string, true>>;
readonly lifecycle: boolean;
}
export type ParseVerificationKeyringResult = {
readonly ok: true;
readonly value: ParsedVerificationKeyring;
} | {
readonly ok: false;
readonly reason: string;
};
export declare function parseVerificationKeyring(document: Uint8Array | string, label?: string): ParseVerificationKeyringResult;
export type ResolveVerificationKeyResult = {
readonly ok: true;
readonly publicKey: string;
readonly lifecycle: boolean;
} | {
readonly ok: false;
readonly reason: string;
};
export declare function resolveVerificationKey(document: Uint8Array | string, kid: string): ResolveVerificationKeyResult;