Skip to content

Commit 8ef0bdd

Browse files
authoredJul 16, 2021
Merge branch 'master' into snyk-upgrade-2ea8e5c83885746b0f13e95b25debd67
2 parents 557e15c + bd315cf commit 8ef0bdd

File tree

2 files changed

+28
-1
lines changed

2 files changed

+28
-1
lines changed
 

‎index.d.ts

+7-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,13 @@ declare namespace JwksRsa {
3030
timeout?: number;
3131
requestAgent?: HttpAgent | HttpsAgent;
3232
fetcher?(jwksUri: string): Promise<{ keys: any }>;
33-
getKeysInterceptor?(): Promise<SigningKey[]>;
33+
getKeysInterceptor?(): Promise<JSONWebKey[]>;
34+
}
35+
36+
interface JSONWebKey {
37+
kid: string,
38+
alg: string,
39+
[key: string]: any
3440
}
3541

3642
interface CertSigningKey {

‎tests/ts-definitions.tests.ts

+21
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,25 @@ describe('typescript definition', () => {
2323
expect(key).to.contain('-----BEGIN PUBLIC KEY');
2424
});
2525
});
26+
27+
describe('getKeysInterceptor', async () => {
28+
const keySetResponse = {
29+
keys: [
30+
{
31+
alg: 'RS256',
32+
kty: 'RSA',
33+
use: 'sig',
34+
kid: 'NkFCNEE1NDFDNTQ5RTQ5OTE1QzRBMjYyMzY0NEJCQTJBMjJBQkZCMA'
35+
}
36+
]
37+
};
38+
39+
const client = new jwksRsa.JwksClient({
40+
jwksUri: `${jwksHost}/.well-known/jwks.json`,
41+
getKeysInterceptor: () => Promise.resolve(keySetResponse.keys)
42+
});
43+
44+
const key = await client.getSigningKey('NkFCNEE1NDFDNTQ5RTQ5OTE1QzRBMjYyMzY0NEJCQTJBMjJBQkZCMA');
45+
expect(key.kid).to.equal('NkFCNEE1NDFDNTQ5RTQ5OTE1QzRBMjYyMzY0NEJCQTJBMjJBQkZCMA');
46+
});
2647
});

0 commit comments

Comments
 (0)
Please sign in to comment.