Public declaration syntax from forge-ts/packages/forge-identity/src/persistence.ts Original source SHA-256: dd3d9ba2a3e09fa3e5f0abb6c22a7f6e78d1dd094021b4e23fcb756a70dc6797 Function bodies and constant values are omitted. This is not the complete implementation. Source line 28 export interface ProtectedSigningKey { /** Protection scheme identifier (for example `aws-kms-envelope`). */ scheme: string; /** Opaque serialized payload for the selected scheme. */ payload: string; /** Optional key reference for KMS or secure-store lookups. */ keyId?: string; } Source line 40 export interface IdentityKeyProtector { /** * Protects a signing key before persistence. * * Implementations should encrypt, seal, or securely externalize the key. */ protect(signingKey: Uint8Array): Promise; /** * Restores a protected signing key from persisted storage. * * Implementations must return the raw Ed25519 signing key bytes. */ unprotect(protectedSigningKey: ProtectedSigningKey): Promise; } Source line 87 export async function saveIdentity( identity: ForgeAgentIdentity, protector?: IdentityKeyProtector ): Promise; Source line 134 export async function loadIdentity( json: string, protector?: IdentityKeyProtector, bridge?: CryptoBridge ): Promise;