@microsoft/useragent-sdk
Version:
SDK for building decentralized identity wallets and enterprise agents.
30 lines (29 loc) • 1.03 kB
TypeScript
import IKeyStore, { KeyStoreListItem } from './IKeyStore';
import IKeyContainer from '../keys/IKeyContainer';
/**
* Class defining methods and properties for a light KeyStore
*/
export default class KeyStoreInMemory implements IKeyStore {
private store;
/**
* Returns the key container associated with the specified
* key identifier.
* @param keyReference for which to return the key.
* @param [publicKeyOnly] True if only the public key is needed.
*/
get(keyReference: string, publicKeyOnly?: boolean): Promise<IKeyContainer>;
private publicKeysOnly;
/**
* Lists all keys with their corresponding key ids
*/
list(): Promise<{
[name: string]: KeyStoreListItem;
}>;
/**
* Saves the specified key to the key store using
* the key identifier.
* @param keyIdentifier for the key being saved.
* @param key being saved to the key store.
*/
save(keyIdentifier: string, key: IKeyContainer): Promise<void>;
}