export declare type AuthCryptoKeyPair = { privateJWKey: JsonWebKey; publicJWKey: JsonWebKey; }; export declare type AuthSignatureData = { timestamp: number; }; /** * Returns true if crypto API is available */ export declare const cryptoExists: () => boolean; /** * Generate a key pair -- a secret key for client and a server key for InteropService * * @returns {Promise} the key pair in JSON Web Key format */ export declare function authGenerateKeys(): Promise<{ err: string | undefined; keys: AuthCryptoKeyPair; }>; /** * Return a signature for data provided using provided key. * * @param jwKey JKT key, which was provided by generateKey in AuthCryptoKeyPair.appClientSecretKey * @param dataToEncrypt * @returns */ export declare function authSignature(jwKey: JsonWebKey, dataToSign: AuthSignatureData): Promise<{ err: string | undefined; signature: string; }>; /** * Return verify result of signed data. * * @param serverKey JKT key, which was provided by generateKey in AuthCryptoKeyPair.appServerKey * @param dataToEncrypt * @returns */ export declare function authVerify(publicKey: JsonWebKey, signatureString: string, signedData: AuthSignatureData): Promise<{ err: string | undefined; verificationResult: boolean; }>; /** * Return verify result of signed JSON Web Token. * * @param serverKey JKT key, which was provided by generateKey in AuthCryptoKeyPair.appServerKey * @param dataToEncrypt * @returns */ export declare function authVerifyJWT(publicKey: JsonWebKey, jwtString: string): Promise<{ err: string | undefined; verificationResult: boolean; }>; export declare function createKeys(): Promise; export declare function authExamples(): Promise; export declare function authRawExamples(): Promise; //# sourceMappingURL=AuthSignVerify.d.ts.map