/** * Fingerprint Reference Conversion Functions (v0.11.3+) * * Pure string manipulation functions for converting between Wire 0.1 * string form ("alg:hex64") and Wire 0.2 object form ({ alg, value, key_id? }). * * These are opaque references. The schema validates format only. * Issuers compute values externally; verifiers MUST NOT assume * they can recompute the reference. * * Lives in Layer 1 (@peac/schema) because it is pure string manipulation, * not cryptographic computation. Zero dependencies, zero I/O. */ /** * Wire 0.2 object form of a fingerprint reference */ export interface FingerprintRefObject { /** Hash algorithm: 'sha256' or 'hmac-sha256' */ alg: string; /** Base64url-encoded value */ value: string; /** Optional key identifier (for hmac-sha256 references) */ key_id?: string; } /** * Maximum length for fingerprint reference string form. * "hmac-sha256:" (12) + 64 hex chars = 76 chars max. */ export declare const MAX_FINGERPRINT_REF_LENGTH = 76; /** * Parse a Wire 0.1 string form fingerprint reference ("alg:hex64") * into a Wire 0.2 object form ({ alg, value }). * * The hex value is converted to base64url for the object form. * * @param s - String form: "sha256:<64 hex chars>" or "hmac-sha256:<64 hex chars>" * @returns Object form with base64url value, or null if invalid */ export declare function stringToFingerprintRef(s: string): FingerprintRefObject | null; /** * Convert a Wire 0.2 object form fingerprint reference back to * the Wire 0.1 string form ("alg:hex64"). * * The base64url value is converted back to hex for the string form. * * @param obj - Object form with alg and base64url value * @returns String form "alg:<64 hex chars>", or null if invalid */ export declare function fingerprintRefToString(obj: FingerprintRefObject): string | null; //# sourceMappingURL=fingerprint-ref.d.ts.map