File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -228,18 +228,17 @@ export function decrypt<T extends MaybeStream<Data>>(options: DecryptOptions & {
228228 string
229229} > ;
230230
231- export function verify < T extends MaybeStream < Data > > ( options : VerifyOptions & { message : Message < T > , format : 'binary ' } ) : Promise < VerifyMessageResult & {
232- data :
231+ export function verify ( options : VerifyOptions & { message : CleartextMessage , format ? : 'utf8 ' } ) : Promise < VerifyMessageResult < string > > ;
232+ export function verify < T extends MaybeStream < Data > > ( options : VerifyOptions & { message : Message < T > , format : 'binary' } ) : Promise < VerifyMessageResult <
233233 T extends WebStream < infer X > ? WebStream < Uint8Array > :
234234 T extends NodeStream < infer X > ? NodeStream < Uint8Array > :
235235 Uint8Array
236- } > ;
237- export function verify < T extends MaybeStream < Data > > ( options : VerifyOptions & { message : Message < T > } ) : Promise < VerifyMessageResult & {
238- data :
236+ > > ;
237+ export function verify < T extends MaybeStream < Data > > ( options : VerifyOptions & { message : Message < T > } ) : Promise < VerifyMessageResult <
239238 T extends WebStream < infer X > ? WebStream < string > :
240239 T extends NodeStream < infer X > ? NodeStream < string > :
241240 string
242- } > ;
241+ > > ;
243242
244243/** Class that represents an OpenPGP message. Can be an encrypted message, signed message, compressed message or literal message
245244 */
@@ -721,8 +720,8 @@ interface DecryptMessageResult {
721720 filename : string ;
722721}
723722
724- interface VerifyMessageResult {
725- data : MaybeStream < Data > ;
723+ interface VerifyMessageResult < T extends MaybeStream < Data > = MaybeStream < Data > > {
724+ data : T ;
726725 signatures : VerificationResult [ ] ;
727726}
728727
Original file line number Diff line number Diff line change @@ -113,6 +113,12 @@ import {
113113
114114 // Sign cleartext message (armored)
115115 const cleartextMessage = await createCleartextMessage ( { text : 'hello' } ) ;
116+ const verificationResult = await verify ( { message : cleartextMessage , verificationKeys : publicKey } ) ;
117+ const verifiedCleartextData : string = verificationResult . data ;
118+ expect ( verifiedCleartextData ) . to . equal ( cleartextMessage . getText ( ) ) ;
119+ // @ts -expect-error Binary output not available for cleartext messages
120+ try { await verify ( { message : cleartextMessage , verificationKeys : publicKey , format : 'binary' } ) } catch ( e ) { }
121+
116122 const clearSignedArmor = await sign ( { signingKeys : privateKeys , message : cleartextMessage } ) ;
117123 expect ( clearSignedArmor ) . to . include ( '-----BEGIN PGP SIGNED MESSAGE-----' ) ;
118124 const clearSignedObject : CleartextMessage = await sign ( { signingKeys : privateKeys , message : cleartextMessage , format : 'object' } ) ;
You can’t perform that action at this time.
0 commit comments