Skip to content

Commit 3069c63

Browse files
authored
fix: Update types for newer typescript versions (aws#394)
1 parent c396a20 commit 3069c63

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

modules/material-management-browser/src/browser_cryptographic_materials_manager.ts

+7-4
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ import {
1818
KeyringWebCrypto,
1919
GetEncryptionMaterials,
2020
GetDecryptMaterials,
21+
AwsEsdkJsKeyUsage,
22+
AwsEsdkJsCryptoKeyPair,
2123
} from '@aws-crypto/material-management'
2224

2325
import { ENCODED_SIGNER_KEY } from '@aws-crypto/serialize'
@@ -133,14 +135,15 @@ export class WebCryptoDefaultCryptographicMaterialsManager
133135

134136
const webCryptoAlgorithm = { name: 'ECDSA', namedCurve }
135137
const extractable = false
136-
const usages = ['sign']
138+
const usages = ['sign'] as AwsEsdkJsKeyUsage[]
137139
const format = 'raw'
138140

139-
const { publicKey, privateKey } = await subtle.generateKey(
141+
const { publicKey, privateKey } = (await subtle.generateKey(
140142
webCryptoAlgorithm,
141143
extractable,
142144
usages
143-
)
145+
)) as AwsEsdkJsCryptoKeyPair
146+
144147
const publicKeyBytes = await subtle.exportKey(format, publicKey)
145148
const compressPoint = SignatureKey.encodeCompressPoint(
146149
new Uint8Array(publicKeyBytes),
@@ -178,7 +181,7 @@ export class WebCryptoDefaultCryptographicMaterialsManager
178181
const subtle = getNonZeroByteBackend(backend)
179182
const webCryptoAlgorithm = { name: 'ECDSA', namedCurve }
180183
const extractable = false
181-
const usages = ['verify']
184+
const usages = ['verify'] as AwsEsdkJsKeyUsage[]
182185
const format = 'raw'
183186

184187
const publicKeyBytes = VerificationKey.decodeCompressPoint(

modules/material-management/src/types.ts

+5
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,11 @@ export interface AwsEsdkJsCryptoKey {
3535
readonly usages: AwsEsdkJsKeyUsage[]
3636
}
3737

38+
export interface AwsEsdkJsCryptoKeyPair {
39+
readonly publicKey: AwsEsdkJsCryptoKey
40+
readonly privateKey: AwsEsdkJsCryptoKey
41+
}
42+
3843
export type MixedBackendCryptoKey = {
3944
nonZeroByteCryptoKey: AwsEsdkJsCryptoKey
4045
zeroByteCryptoKey: AwsEsdkJsCryptoKey

0 commit comments

Comments
 (0)