///
// This is the interface that a module that has logger as a dependency gets to
// use.
interface PgpKey {
uids :string[];
}
interface VerifyDecryptResult {
data :ArrayBuffer;
signedBy :string[];
}
interface PgpProvider {
// Standard freedom crypto API
setup(passphrase:string, userid:string) :Promise;
exportKey() :Promise;
signEncrypt(data:ArrayBuffer, encryptKey?:string,
sign?:boolean) :Promise;
verifyDecrypt(data:ArrayBuffer,
verifyKey?:string) :Promise;
armor(data:ArrayBuffer, type?:string) :Promise;
dearmor(data:string) :Promise;
}