/** * PGP Key Storage * * IndexedDB-based storage for encrypted PGP private keys. * The encrypted private key is stored locally on the device and never sent to servers. * * Issue #1374 */ import type { PGPKeyStorage, StoredPGPPrivateKey } from "./types"; /** * Generate storage key for a user's PGP private key */ export declare function getStorageKey(userId: string): string; /** * Store an encrypted PGP private key in IndexedDB * * @param record - The encrypted private key record to store */ export declare function storePGPPrivateKey(record: StoredPGPPrivateKey): Promise; /** * Retrieve an encrypted PGP private key from IndexedDB * * @param userId - User's Cognito sub * @returns The encrypted private key record or null if not found */ export declare function getPGPPrivateKey(userId: string): Promise; /** * Delete an encrypted PGP private key from IndexedDB * * @param userId - User's Cognito sub */ export declare function deletePGPPrivateKey(userId: string): Promise; /** * Check if an encrypted PGP private key exists for a user * * @param userId - User's Cognito sub * @returns true if a key exists */ export declare function hasPGPPrivateKey(userId: string): Promise; /** * Create a PGPKeyStorage implementation using IndexedDB */ export declare function createIndexedDBPGPKeyStorage(): PGPKeyStorage;