@rrishuyadav/react-native-encrypted-async-storage
Version:
A encryption library for ReactJS and React Native Web
32 lines (31 loc) • 928 B
TypeScript
import { KeychainAdapter, EncryptionAdapter, keypair } from './types';
export declare class KeyManager {
private keychain;
private encryption;
private encryptionKey;
constructor(keychain: KeychainAdapter, encryption: EncryptionAdapter);
/**
* Retrieve AES encryption key, generate if not available.
*/
getEncryptionKey(): Promise<string | keypair>;
/**
* Retrieve RSA encryption keypair, generate if not available.
*/
getRSAEncryptionKey(): Promise<keypair>;
/**
* Generate and persist AES encryption key.
*/
setEncryptionKey(): Promise<string>;
/**
* Generate and persist RSA encryption keypair.
*/
setRSAEncryptionKey(): Promise<keypair>;
/**
* Common method to retrieve a key from Keychain.
*/
private getKeyFromKeychain;
/**
* Common method to save a key to Keychain.
*/
private saveKeyToKeychain;
}