meta-log-db
Version:
Native database package for Meta-Log (ProLog, DataLog, R5RS)
58 lines • 2.24 kB
TypeScript
/**
* Storage Encryption Utilities
*
* Provides encryption/decryption for IndexedDB storage using BIP32/39/44 derived keys
*/
/**
* Encrypt data using AES-GCM
*
* @param data - Data to encrypt (string)
* @param key - CryptoKey for encryption
* @returns Encrypted data as base64 string (includes IV)
*/
export declare function encryptData(data: string, key: CryptoKey): Promise<string>;
/**
* Decrypt data using AES-GCM
*
* @param encrypted - Encrypted data as base64 string (includes IV)
* @param key - CryptoKey for decryption
* @returns Decrypted data as string
*/
export declare function decryptData(encrypted: string, key: CryptoKey): Promise<string>;
/**
* Encrypt data using mnemonic-derived key
*
* @param data - Data to encrypt
* @param mnemonic - BIP39 mnemonic phrase
* @param purpose - Storage purpose for key derivation
* @returns Encrypted data as base64 string
*/
export declare function encryptDataWithMnemonic(data: string, mnemonic: string, purpose?: 'local' | 'published' | 'contributor' | 'ephemeral'): Promise<string>;
/**
* Decrypt data using mnemonic-derived key
*
* @param encrypted - Encrypted data as base64 string
* @param mnemonic - BIP39 mnemonic phrase
* @param purpose - Storage purpose for key derivation
* @returns Decrypted data as string
*/
export declare function decryptDataWithMnemonic(encrypted: string, mnemonic: string, purpose?: 'local' | 'published' | 'contributor' | 'ephemeral'): Promise<string>;
/**
* Encrypt file content for storage
*
* @param content - File content to encrypt
* @param mnemonic - BIP39 mnemonic phrase
* @param purpose - Storage purpose
* @returns Encrypted content
*/
export declare function encryptFileContent(content: string, mnemonic: string, purpose?: 'local' | 'published' | 'contributor' | 'ephemeral'): Promise<string>;
/**
* Decrypt file content from storage
*
* @param encrypted - Encrypted file content
* @param mnemonic - BIP39 mnemonic phrase
* @param purpose - Storage purpose
* @returns Decrypted content
*/
export declare function decryptFileContent(encrypted: string, mnemonic: string, purpose?: 'local' | 'published' | 'contributor' | 'ephemeral'): Promise<string>;
//# sourceMappingURL=storage-encryption.d.ts.map