@rrishuyadav/react-native-encrypted-async-storage
Version:
A encryption library for ReactJS and React Native Web
55 lines (54 loc) • 1.56 kB
TypeScript
import { EncryptionAdapter, KeychainAdapter, StorageAdapter } from './types';
export declare class EncryptedAsyncStorage {
private encryption;
private keyManager;
private storageAdapter;
constructor(keychain: KeychainAdapter, encryption: EncryptionAdapter, storageAdapter: StorageAdapter);
/**
* Get an item from encrypted storage.
*/
getItem(key: string): Promise<string | null>;
/**
* Store an encrypted item in storage.
*/
setItem(key: string, value: string): Promise<void>;
/**
* Remove an item from storage.
*/
removeItem(key: string): Promise<void>;
/**
* Get all storage keys.
*/
getAllKeys(): Promise<string[]>;
/**
* Retrieve multiple encrypted items.
*/
multiGet(keys: string[]): Promise<[string, string | null][]>;
/**
* Store multiple encrypted items.
*/
multiSet(keyValuePairs: [string, string][]): Promise<void>;
/**
* Merge multiple key-value pairs with existing items.
*/
multiMerge(keyValuePairs: [string, string][]): Promise<void>;
/**
* Remove multiple items from storage.
*/
multiRemove(keys: string[]): Promise<void>;
/**
* Merge a value with an existing item.
*/
/**
* Merge a value with an existing item.
*/
mergeItem(key: string, value: string): Promise<void>;
/**
* Encrypt data based on AES or RSA configuration.
*/
private encryptData;
/**
* Decrypt data based on AES or RSA configuration.
*/
private decryptData;
}