diff --git a/types/openpgp/index.d.ts b/types/openpgp/index.d.ts index b671f8484e..81b28c36a8 100644 --- a/types/openpgp/index.d.ts +++ b/types/openpgp/index.d.ts @@ -1,8 +1,9 @@ -// Type definitions for openpgp 4.0.0 +// Type definitions for openpgp 4.0.1 // Project: http://openpgpjs.org/ // Definitions by: Guillaume Lacasa // Errietta Kostala // Daniel Montesinos +// Carlos Villavicencio // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped export as namespace openpgp; @@ -269,7 +270,17 @@ export namespace cleartext { verify(keys: Array): Array; } - function readArmored(armoredText: string): CleartextMessage; + /** creates new message object from binary data + @param bytes + */ + function fromBinary(bytes: string): CleartextMessage; + + /** creates new message object from text + @param text + */ + function fromText(text: string): CleartextMessage; + + function readArmored(armoredText: string): Promise; } export namespace config { @@ -514,7 +525,7 @@ export namespace key { @param armoredText text to be parsed */ - function readArmored(armoredText: string): KeyResult; + function readArmored(armoredText: string): Promise; } export namespace message { @@ -580,7 +591,7 @@ export namespace message { @param armoredText text to be parsed */ - function readArmored(armoredText: string): Message; + function readArmored(armoredText: string): Promise; /** * reads an OpenPGP message as byte array and returns a message object diff --git a/types/openpgp/openpgp-tests.ts b/types/openpgp/openpgp-tests.ts index bb34505055..e0495520e4 100644 --- a/types/openpgp/openpgp-tests.ts +++ b/types/openpgp/openpgp-tests.ts @@ -19,27 +19,51 @@ openpgp.generateKey(options).then(function (keypair) { var spubkey = '-----BEGIN PGP PUBLIC KEY BLOCK ... END PGP PUBLIC KEY BLOCK-----'; -var publicKey = openpgp.key.readArmored(spubkey); -openpgp.encrypt({ - message: openpgp.message.fromText('Hello, World!'), - publicKeys: publicKey.keys -}).then(function (pgpMessage) { +openpgp.key.readArmored(spubkey) + .then(function (publicKey) { + return { + message: openpgp.message.fromText('Hello, World!'), + publicKeys: publicKey.keys + }; + }) + .then(openpgp.encrypt) + .then(function (pgpMessage) { + // success + }) + .catch(function (error) { + // failure + }); + +var sprivkey = '-----BEGIN PGP PRIVATE KEY BLOCK ... END PGP PRIVATE KEY BLOCK-----'; +var pgpMessageStr = '-----BEGIN PGP MESSAGE ... END PGP MESSAGE-----'; + +openpgp.message.readArmored(pgpMessageStr).then(function(pgpMessage) { + const options = { + message: pgpMessage + }; + return openpgp.decrypt(options); +}).then(function (plaintext) { // success }).catch(function (error) { // failure }); -var sprivkey = '-----BEGIN PGP PRIVATE KEY BLOCK ... END PGP PRIVATE KEY BLOCK-----'; -var privateKey = openpgp.key.readArmored(sprivkey).keys[0]; -privateKey.decrypt('passphrase'); +const promises: [Promise, Promise] = [ + openpgp.key.readArmored(sprivkey), + openpgp.message.readArmored(pgpMessageStr) +]; -var pgpMessageStr = '-----BEGIN PGP MESSAGE ... END PGP MESSAGE-----'; -var pgpMessage = openpgp.message.readArmored(pgpMessageStr); - -openpgp.decrypt({ - privateKeys: privateKey, - message: pgpMessage +Promise.all(promises).then(function (values) { + const keyObject: openpgp.key.KeyResult = values[0]; + const pgpMessage: openpgp.message.Message = values[1]; + const privateKey = keyObject.keys[0]; + privateKey.decrypt('passphrase'); + const options = { + privateKeys: privateKey, + message: pgpMessage + }; + return openpgp.decrypt(options); }).then(function (plaintext) { // success }).catch(function (error) {