Skip to content

Commit e21e51f

Browse files
committed
chore: Update from Typescript
The way that fields were emitted by Typescript changed. `declare` will make Typescript not emit the field. This means that `readOnlyProperty` will correctly add the filed. See: https://www.typescriptlang.org/tsconfig#useDefineForClassFields
1 parent 53a7d8e commit e21e51f

20 files changed

+152
-99
lines changed

modules/caching-materials-manager-browser/src/caching_materials_manager_browser.ts

+6-6
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,12 @@ const cacheKeyHelpers = buildCryptographicMaterialsCacheKeyHelpers(
3232

3333
export class WebCryptoCachingMaterialsManager
3434
implements CachingMaterialsManager<WebCryptoAlgorithmSuite> {
35-
readonly _cache!: CryptographicMaterialsCache<WebCryptoAlgorithmSuite>
36-
readonly _backingMaterialsManager!: WebCryptoMaterialsManager
37-
readonly _partition!: string
38-
readonly _maxBytesEncrypted!: number
39-
readonly _maxMessagesEncrypted!: number
40-
readonly _maxAge!: number
35+
declare readonly _cache: CryptographicMaterialsCache<WebCryptoAlgorithmSuite>
36+
declare readonly _backingMaterialsManager: WebCryptoMaterialsManager
37+
declare readonly _partition: string
38+
declare readonly _maxBytesEncrypted: number
39+
declare readonly _maxMessagesEncrypted: number
40+
declare readonly _maxAge: number
4141

4242
constructor(input: CachingMaterialsManagerInput<WebCryptoAlgorithmSuite>) {
4343
const backingMaterialsManager =

modules/caching-materials-manager-browser/test/caching_materials_manager_browser.test.ts

+30-5
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,36 @@ describe('WebCryptoCachingMaterialsManager', () => {
4343
expect(test._backingMaterialsManager).to.be.instanceOf(
4444
WebCryptoDefaultCryptographicMaterialsManager
4545
)
46-
expect(test._cache).to.equal(cache)
47-
expect(test._partition).to.equal(partition)
48-
expect(test._maxAge).to.equal(maxAge)
49-
expect(test._maxBytesEncrypted).to.equal(maxBytesEncrypted)
50-
expect(test._maxMessagesEncrypted).to.equal(maxMessagesEncrypted)
46+
expect(test).to.haveOwnPropertyDescriptor('_cache', {
47+
value: cache,
48+
writable: false,
49+
enumerable: true,
50+
configurable: false,
51+
})
52+
expect(test).to.haveOwnPropertyDescriptor('_partition', {
53+
value: partition,
54+
writable: false,
55+
enumerable: true,
56+
configurable: false,
57+
})
58+
expect(test).to.haveOwnPropertyDescriptor('_maxAge', {
59+
value: maxAge,
60+
writable: false,
61+
enumerable: true,
62+
configurable: false,
63+
})
64+
expect(test).to.haveOwnPropertyDescriptor('_maxBytesEncrypted', {
65+
value: maxBytesEncrypted,
66+
writable: false,
67+
enumerable: true,
68+
configurable: false,
69+
})
70+
expect(test).to.haveOwnPropertyDescriptor('_maxMessagesEncrypted', {
71+
value: maxMessagesEncrypted,
72+
writable: false,
73+
enumerable: true,
74+
configurable: false,
75+
})
5176
})
5277

5378
it('Precondition: A partition value must exist for WebCryptoCachingMaterialsManager.', () => {

modules/caching-materials-manager-node/src/caching_materials_manager_node.ts

+6-6
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,12 @@ const cacheKeyHelpers = buildCryptographicMaterialsCacheKeyHelpers(
3333

3434
export class NodeCachingMaterialsManager
3535
implements CachingMaterialsManager<NodeAlgorithmSuite> {
36-
readonly _cache!: CryptographicMaterialsCache<NodeAlgorithmSuite>
37-
readonly _backingMaterialsManager!: NodeMaterialsManager
38-
readonly _partition!: string
39-
readonly _maxBytesEncrypted!: number
40-
readonly _maxMessagesEncrypted!: number
41-
readonly _maxAge!: number
36+
declare readonly _cache: CryptographicMaterialsCache<NodeAlgorithmSuite>
37+
declare readonly _backingMaterialsManager: NodeMaterialsManager
38+
declare readonly _partition: string
39+
declare readonly _maxBytesEncrypted: number
40+
declare readonly _maxMessagesEncrypted: number
41+
declare readonly _maxAge: number
4242

4343
constructor(input: CachingMaterialsManagerInput<NodeAlgorithmSuite>) {
4444
const backingMaterialsManager =

modules/caching-materials-manager-node/test/caching_materials_manager_node.test.ts

+30-5
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,36 @@ describe('NodeCachingMaterialsManager', () => {
4242
expect(test._backingMaterialsManager).to.be.instanceOf(
4343
NodeDefaultCryptographicMaterialsManager
4444
)
45-
expect(test._cache).to.equal(cache)
46-
expect(test._partition).to.equal(partition)
47-
expect(test._maxAge).to.equal(maxAge)
48-
expect(test._maxBytesEncrypted).to.equal(maxBytesEncrypted)
49-
expect(test._maxMessagesEncrypted).to.equal(maxMessagesEncrypted)
45+
expect(test).to.haveOwnPropertyDescriptor('_cache', {
46+
value: cache,
47+
writable: false,
48+
enumerable: true,
49+
configurable: false,
50+
})
51+
expect(test).to.haveOwnPropertyDescriptor('_partition', {
52+
value: partition,
53+
writable: false,
54+
enumerable: true,
55+
configurable: false,
56+
})
57+
expect(test).to.haveOwnPropertyDescriptor('_maxAge', {
58+
value: maxAge,
59+
writable: false,
60+
enumerable: true,
61+
configurable: false,
62+
})
63+
expect(test).to.haveOwnPropertyDescriptor('_maxBytesEncrypted', {
64+
value: maxBytesEncrypted,
65+
writable: false,
66+
enumerable: true,
67+
configurable: false,
68+
})
69+
expect(test).to.haveOwnPropertyDescriptor('_maxMessagesEncrypted', {
70+
value: maxMessagesEncrypted,
71+
writable: false,
72+
enumerable: true,
73+
configurable: false,
74+
})
5075
})
5176

5277
it('Precondition: A partition value must exist for NodeCachingMaterialsManager.', () => {

modules/kms-keyring-browser/src/kms_mrk_discovery_keyring_browser.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ export class AwsKmsMrkAwareSymmetricDiscoveryKeyringBrowser extends AwsKmsMrkAwa
2424
WebCryptoAlgorithmSuite,
2525
KMS
2626
>(KeyringWebCrypto as Newable<KeyringWebCrypto>) {
27-
readonly client!: KMS
27+
declare client: KMS
2828

2929
constructor({
3030
client,

modules/kms-keyring-browser/src/kms_mrk_keyring_browser.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ export class AwsKmsMrkAwareSymmetricKeyringBrowser extends AwsKmsMrkAwareSymmetr
2424
WebCryptoAlgorithmSuite,
2525
KMS
2626
>(KeyringWebCrypto as Newable<KeyringWebCrypto>) {
27-
readonly client!: KMS
28-
readonly keyId!: string
29-
readonly grantTokens?: string[]
27+
declare client: KMS
28+
declare keyId: string
29+
declare grantTokens?: string[]
3030

3131
constructor({
3232
client,

modules/kms-keyring/src/kms_keyring.ts

+6-6
Original file line numberDiff line numberDiff line change
@@ -70,12 +70,12 @@ export function KmsKeyringClass<
7070
Client extends AwsEsdkKMSInterface
7171
>(BaseKeyring: Newable<Keyring<S>>): KmsKeyRingConstructible<S, Client> {
7272
class KmsKeyring extends BaseKeyring implements KmsKeyRing<S, Client> {
73-
public keyIds!: ReadonlyArray<string>
74-
public generatorKeyId?: string
75-
public clientProvider!: KmsClientSupplier<Client>
76-
public grantTokens?: string[]
77-
public isDiscovery!: boolean
78-
public discoveryFilter?: Readonly<{
73+
public declare keyIds: ReadonlyArray<string>
74+
public declare generatorKeyId?: string
75+
public declare clientProvider: KmsClientSupplier<Client>
76+
public declare grantTokens?: string[]
77+
public declare isDiscovery: boolean
78+
public declare discoveryFilter?: Readonly<{
7979
accountIDs: readonly string[]
8080
partition: string
8181
}>

modules/kms-keyring/src/kms_mrk_discovery_keyring.ts

+6-5
Original file line numberDiff line numberDiff line change
@@ -71,11 +71,12 @@ export function AwsKmsMrkAwareSymmetricDiscoveryKeyringClass<
7171
//# MUST implement that AWS Encryption SDK Keyring interface (../keyring-
7272
//# interface.md#interface)
7373
extends BaseKeyring
74-
implements IAwsKmsMrkAwareSymmetricDiscoveryKeyring<S, Client> {
75-
public client!: Client
76-
public clientRegion!: string
77-
public grantTokens?: string[]
78-
public discoveryFilter?: Readonly<{
74+
implements IAwsKmsMrkAwareSymmetricDiscoveryKeyring<S, Client>
75+
{
76+
public declare client: Client
77+
public declare clientRegion: string
78+
public declare grantTokens?: string[]
79+
public declare discoveryFilter?: Readonly<{
7980
accountIDs: readonly string[]
8081
partition: string
8182
}>

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

+1-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export type WebCryptoGetDecryptMaterials = GetDecryptMaterials<WebCryptoAlgorith
4141
*/
4242
export class WebCryptoDefaultCryptographicMaterialsManager
4343
implements WebCryptoMaterialsManager {
44-
readonly keyring!: KeyringWebCrypto
44+
declare readonly keyring: KeyringWebCrypto
4545
constructor(keyring: KeyringWebCrypto) {
4646
/* Precondition: keyrings must be a KeyringWebCrypto. */
4747
needs(keyring instanceof KeyringWebCrypto, 'Unsupported type.')

modules/material-management-node/src/node_cryptographic_materials_manager.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ export type NodeGetDecryptMaterials = GetDecryptMaterials<NodeAlgorithmSuite>
3636
*/
3737
export class NodeDefaultCryptographicMaterialsManager
3838
implements NodeMaterialsManager {
39-
readonly keyring!: KeyringNode
39+
declare readonly keyring: KeyringNode
4040
constructor(keyring: KeyringNode) {
4141
/* Precondition: keyrings must be a KeyringNode. */
4242
needs(keyring instanceof KeyringNode, 'Unsupported type.')

modules/material-management/src/algorithm_suites.ts

+19-19
Original file line numberDiff line numberDiff line change
@@ -332,25 +332,25 @@ type AlgorithmSuiteValues = AesGcm &
332332
Partial<Omit<AlgCommittedSigned, keyof AesGcm>>
333333

334334
export abstract class AlgorithmSuite implements AlgorithmSuiteValues {
335-
id!: AlgorithmSuiteIdentifier
336-
name!: AlgorithmSuiteName
337-
messageFormat!: MessageFormat
338-
encryption!: NodeEncryption | WebCryptoEncryption
339-
keyLength!: KeyLength
340-
keyLengthBytes!: number
341-
ivLength!: IvLength
342-
tagLength!: TagLength
343-
cacheSafe!: boolean
344-
kdf?: KDF
345-
kdfHash?: NodeHash | WebCryptoHash
346-
signatureCurve?: NodeECDHCurve | WebCryptoECDHCurve
347-
signatureHash?: NodeHash | WebCryptoHash
348-
type!: AlgorithmSuiteTypeNode | AlgorithmSuiteTypeWebCrypto
349-
suiteDataLength?: SuiteDataLength
350-
commitmentHash?: NodeHash | WebCryptoHash
351-
commitmentLength?: CommitmentLength
352-
saltLengthBytes?: HKDFSaltLengthBytes
353-
commitment!: Commitment
335+
declare id: AlgorithmSuiteIdentifier
336+
declare name: AlgorithmSuiteName
337+
declare messageFormat: MessageFormat
338+
declare encryption: NodeEncryption | WebCryptoEncryption
339+
declare keyLength: KeyLength
340+
declare keyLengthBytes: number
341+
declare ivLength: IvLength
342+
declare tagLength: TagLength
343+
declare cacheSafe: boolean
344+
declare kdf?: KDF
345+
declare kdfHash?: NodeHash | WebCryptoHash
346+
declare signatureCurve?: NodeECDHCurve | WebCryptoECDHCurve
347+
declare signatureHash?: NodeHash | WebCryptoHash
348+
declare type: AlgorithmSuiteTypeNode | AlgorithmSuiteTypeWebCrypto
349+
declare suiteDataLength?: SuiteDataLength
350+
declare commitmentHash?: NodeHash | WebCryptoHash
351+
declare commitmentLength?: CommitmentLength
352+
declare saltLengthBytes?: HKDFSaltLengthBytes
353+
declare commitment: Commitment
354354
constructor(suiteValues: AlgUnion) {
355355
needs(
356356
this.constructor !== AlgorithmSuite,

modules/material-management/src/encrypted_data_key.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,10 @@ export interface IEncryptedDataKey
3939
}> {}
4040

4141
export class EncryptedDataKey {
42-
readonly providerInfo!: string
43-
readonly providerId!: string
44-
readonly encryptedDataKey!: Uint8Array
45-
readonly rawInfo?: Uint8Array
42+
declare readonly providerInfo: string
43+
declare readonly providerId: string
44+
declare readonly encryptedDataKey: Uint8Array
45+
declare readonly rawInfo?: Uint8Array
4646

4747
constructor(edkInput: IEncryptedDataKey) {
4848
const { providerInfo, providerId, encryptedDataKey, rawInfo } = edkInput

modules/material-management/src/multi_keyring.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ immutableClass(MultiKeyringNode)
3030
export class MultiKeyringWebCrypto
3131
extends KeyringWebCrypto
3232
implements MultiKeyring<WebCryptoAlgorithmSuite> {
33-
public readonly generator?: KeyringWebCrypto
34-
public readonly children!: ReadonlyArray<KeyringWebCrypto>
33+
public declare readonly generator?: KeyringWebCrypto
34+
public declare readonly children: ReadonlyArray<KeyringWebCrypto>
3535

3636
constructor(input: MultiKeyringInput<WebCryptoAlgorithmSuite>) {
3737
super()

modules/material-management/src/node_algorithms.ts

+9-8
Original file line numberDiff line numberDiff line change
@@ -268,15 +268,16 @@ const nodeAlgorithms: NodeAlgorithms = Object.freeze({
268268

269269
export class NodeAlgorithmSuite
270270
extends AlgorithmSuite
271-
implements NodeAlgorithmSuiteValues {
272-
messageFormat!: MessageFormat
273-
encryption!: NodeEncryption
274-
commitment!: Commitment
275-
kdfHash?: NodeHash
276-
signatureCurve?: NodeECDHCurve
277-
signatureHash?: NodeHash
271+
implements NodeAlgorithmSuiteValues
272+
{
273+
declare messageFormat: MessageFormat
274+
declare encryption: NodeEncryption
275+
declare commitment: Commitment
276+
declare kdfHash?: NodeHash
277+
declare signatureCurve?: NodeECDHCurve
278+
declare signatureHash?: NodeHash
278279
type: AlgorithmSuiteTypeNode = 'node'
279-
commitmentHash?: NodeHash
280+
declare commitmentHash?: NodeHash
280281
constructor(id: AlgorithmSuiteIdentifier) {
281282
super(nodeAlgorithms[id])
282283
Object.setPrototypeOf(this, NodeAlgorithmSuite.prototype)

modules/material-management/src/signature_key.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ import { AwsEsdkJsCryptoKey } from './types'
2424
*/
2525

2626
export class SignatureKey {
27-
public readonly privateKey!: string | AwsEsdkJsCryptoKey
28-
public readonly compressPoint!: Uint8Array
29-
public readonly signatureCurve!: NodeECDHCurve | WebCryptoECDHCurve
27+
public declare readonly privateKey: string | AwsEsdkJsCryptoKey
28+
public declare readonly compressPoint: Uint8Array
29+
public declare readonly signatureCurve: NodeECDHCurve | WebCryptoECDHCurve
3030
constructor(
3131
privateKey: Uint8Array | AwsEsdkJsCryptoKey,
3232
compressPoint: Uint8Array,

modules/material-management/src/web_crypto_algorithms.ts

+9-8
Original file line numberDiff line numberDiff line change
@@ -321,15 +321,16 @@ const supportedWebCryptoAlgorithms: SupportedWebCryptoAlgorithms = Object.freeze
321321

322322
export class WebCryptoAlgorithmSuite
323323
extends AlgorithmSuite
324-
implements WebCryptoAlgorithmSuiteValues {
325-
messageFormat!: MessageFormat
326-
encryption!: WebCryptoEncryption
327-
commitment!: Commitment
328-
kdfHash?: WebCryptoHash
329-
signatureCurve?: WebCryptoECDHCurve
330-
signatureHash?: WebCryptoHash
324+
implements WebCryptoAlgorithmSuiteValues
325+
{
326+
declare messageFormat: MessageFormat
327+
declare encryption: WebCryptoEncryption
328+
declare commitment: Commitment
329+
declare kdfHash?: WebCryptoHash
330+
declare signatureCurve?: WebCryptoECDHCurve
331+
declare signatureHash?: WebCryptoHash
331332
type: AlgorithmSuiteTypeWebCrypto = 'webCrypto'
332-
commitmentHash?: WebCryptoHash
333+
declare commitmentHash?: WebCryptoHash
333334
constructor(id: AlgorithmSuiteIdentifier) {
334335
super(webCryptoAlgorithms[id])
335336
/* Precondition: Browsers do not support 192 bit keys so the AlgorithmSuiteIdentifier is removed.

modules/raw-aes-keyring-browser/src/raw_aes_keyring_browser.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,10 @@ export type RawAesKeyringWebCryptoInput = {
5656
}
5757

5858
export class RawAesKeyringWebCrypto extends KeyringWebCrypto {
59-
public keyNamespace!: string
60-
public keyName!: string
61-
_wrapKey!: WrapKey<WebCryptoAlgorithmSuite>
62-
_unwrapKey!: UnwrapKey<WebCryptoAlgorithmSuite>
59+
public declare keyNamespace: string
60+
public declare keyName: string
61+
declare _wrapKey: WrapKey<WebCryptoAlgorithmSuite>
62+
declare _unwrapKey: UnwrapKey<WebCryptoAlgorithmSuite>
6363

6464
constructor(input: RawAesKeyringWebCryptoInput) {
6565
super()

modules/raw-aes-keyring-node/src/raw_aes_keyring_node.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,10 @@ export type RawAesKeyringNodeInput = {
4343
}
4444

4545
export class RawAesKeyringNode extends KeyringNode {
46-
public keyNamespace!: string
47-
public keyName!: string
48-
_wrapKey!: WrapKey<NodeAlgorithmSuite>
49-
_unwrapKey!: UnwrapKey<NodeAlgorithmSuite>
46+
public declare keyNamespace: string
47+
public declare keyName: string
48+
declare _wrapKey: WrapKey<NodeAlgorithmSuite>
49+
declare _unwrapKey: UnwrapKey<NodeAlgorithmSuite>
5050

5151
constructor(input: RawAesKeyringNodeInput) {
5252
super()

modules/raw-rsa-keyring-browser/src/raw_rsa_keyring_web_crypto.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@ import {
4040
} from './get_import_options'
4141

4242
export class RawRsaKeyringWebCrypto extends KeyringWebCrypto {
43-
public keyNamespace!: string
44-
public keyName!: string
45-
_wrapKey!: WrapKey<WebCryptoAlgorithmSuite>
46-
_unwrapKey!: UnwrapKey<WebCryptoAlgorithmSuite>
43+
public declare keyNamespace: string
44+
public declare keyName: string
45+
declare _wrapKey: WrapKey<WebCryptoAlgorithmSuite>
46+
declare _unwrapKey: UnwrapKey<WebCryptoAlgorithmSuite>
4747

4848
constructor(input: RawRsaKeyringWebCryptoInput) {
4949
super()

modules/raw-rsa-keyring-node/src/raw_rsa_keyring_node.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -67,10 +67,10 @@ export type RawRsaKeyringNodeInput = {
6767
}
6868

6969
export class RawRsaKeyringNode extends KeyringNode {
70-
public keyNamespace!: string
71-
public keyName!: string
72-
_wrapKey!: WrapKey<NodeAlgorithmSuite>
73-
_unwrapKey!: UnwrapKey<NodeAlgorithmSuite>
70+
public declare keyNamespace: string
71+
public declare keyName: string
72+
declare _wrapKey: WrapKey<NodeAlgorithmSuite>
73+
declare _unwrapKey: UnwrapKey<NodeAlgorithmSuite>
7474

7575
constructor(input: RawRsaKeyringNodeInput) {
7676
super()

0 commit comments

Comments
 (0)