@awboost/cfn-resource-types 0.1.22 → 0.1.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/lib/AWS-ACMPCA-Certificate.d.ts +106 -18
  2. package/lib/AWS-AppSync-ApiCache.d.ts +1 -0
  3. package/lib/AWS-AppSync-DataSource.d.ts +1 -0
  4. package/lib/AWS-AppSync-GraphQLApi.d.ts +10 -0
  5. package/lib/AWS-AppSync-Resolver.d.ts +1 -0
  6. package/lib/AWS-Batch-JobDefinition.d.ts +8 -0
  7. package/lib/AWS-ControlTower-EnabledBaseline.d.ts +80 -0
  8. package/lib/AWS-ControlTower-EnabledBaseline.js +12 -0
  9. package/lib/AWS-DMS-DataProvider.d.ts +1 -1
  10. package/lib/AWS-DynamoDB-Table.d.ts +9 -0
  11. package/lib/AWS-EC2-InstanceConnectEndpoint.d.ts +1 -1
  12. package/lib/AWS-EC2-NatGateway.d.ts +46 -4
  13. package/lib/AWS-EC2-NatGateway.js +5 -1
  14. package/lib/AWS-EC2-VPC.d.ts +30 -31
  15. package/lib/AWS-EC2-VPC.js +4 -1
  16. package/lib/AWS-ECS-TaskDefinition.d.ts +641 -25
  17. package/lib/AWS-ECS-TaskDefinition.js +3 -1
  18. package/lib/AWS-EFS-FileSystem.d.ts +106 -3
  19. package/lib/AWS-EFS-FileSystem.js +1 -1
  20. package/lib/AWS-EMR-Cluster.d.ts +1 -0
  21. package/lib/AWS-GuardDuty-Master.d.ts +14 -9
  22. package/lib/AWS-GuardDuty-Master.js +2 -1
  23. package/lib/AWS-IAM-User.d.ts +43 -25
  24. package/lib/AWS-IAM-User.js +3 -1
  25. package/lib/AWS-IoTWireless-WirelessDevice.d.ts +34 -0
  26. package/lib/AWS-KMS-Alias.d.ts +25 -11
  27. package/lib/AWS-KMS-Alias.js +3 -1
  28. package/lib/AWS-KMS-Key.d.ts +62 -28
  29. package/lib/AWS-KMS-Key.js +3 -1
  30. package/lib/AWS-S3-Bucket.d.ts +381 -139
  31. package/lib/AWS-S3-Bucket.js +3 -1
  32. package/lib/AWS-SageMaker-AppImageConfig.d.ts +1 -1
  33. package/lib/AWS-WAFv2-LoggingConfiguration.d.ts +0 -27
  34. package/lib/AWS-WAFv2-RuleGroup.d.ts +1 -1
  35. package/package.json +1 -1
@@ -50,12 +50,13 @@ export type ACMPCACertificateAttributes = {
50
50
  };
51
51
  /**
52
52
  * Type definition for `AWS::ACMPCA::Certificate.ApiPassthrough`.
53
- * Contains information about the certificate subject. The Subject field in the certificate identifies the entity that owns or controls the public key in the certificate. The entity can be a user, computer, device, or service. The Subject must contain an X.500 distinguished name (DN). A DN is a sequence of relative distinguished names (RDNs). The RDNs are separated by commas in the certificate.
53
+ * Contains X.509 certificate information to be placed in an issued certificate. An ``APIPassthrough`` or ``APICSRPassthrough`` template variant must be selected, or else this parameter is ignored.
54
+ If conflicting or duplicate certificate information is supplied from other sources, AWS Private CA applies [order of operation rules](https://docs.aws.amazon.com/privateca/latest/userguide/UsingTemplates.html#template-order-of-operations) to determine what information is used.
54
55
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-apipassthrough.html}
55
56
  */
56
57
  export type ApiPassthrough = {
57
58
  /**
58
- * Defines one or more purposes for which the key contained in the certificate can be used. Default value for each option is false.
59
+ * Specifies X.509 extension information for a certificate.
59
60
  */
60
61
  Extensions?: Extensions;
61
62
  /**
@@ -65,67 +66,100 @@ export type ApiPassthrough = {
65
66
  };
66
67
  /**
67
68
  * Type definition for `AWS::ACMPCA::Certificate.CustomAttribute`.
69
+ * Defines the X.500 relative distinguished name (RDN).
68
70
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-customattribute.html}
69
71
  */
70
72
  export type CustomAttribute = {
71
73
  /**
72
- * String that contains X.509 ObjectIdentifier information.
74
+ * Specifies the object identifier (OID) of the attribute type of the relative distinguished name (RDN).
73
75
  */
74
76
  ObjectIdentifier: string;
77
+ /**
78
+ * Specifies the attribute value of relative distinguished name (RDN).
79
+ */
75
80
  Value: string;
76
81
  };
77
82
  /**
78
83
  * Type definition for `AWS::ACMPCA::Certificate.CustomExtension`.
84
+ * Specifies the X.509 extension information for a certificate.
85
+ Extensions present in ``CustomExtensions`` follow the ``ApiPassthrough`` [template rules](https://docs.aws.amazon.com/privateca/latest/userguide/UsingTemplates.html#template-order-of-operations).
79
86
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-customextension.html}
80
87
  */
81
88
  export type CustomExtension = {
89
+ /**
90
+ * Specifies the critical flag of the X.509 extension.
91
+ */
82
92
  Critical?: boolean;
83
93
  /**
84
- * String that contains X.509 ObjectIdentifier information.
94
+ * Specifies the object identifier (OID) of the X.509 extension. For more information, see the [Global OID reference database.](https://docs.aws.amazon.com/https://oidref.com/2.5.29)
85
95
  */
86
96
  ObjectIdentifier: string;
97
+ /**
98
+ * Specifies the base64-encoded value of the X.509 extension.
99
+ */
87
100
  Value: string;
88
101
  };
89
102
  /**
90
103
  * Type definition for `AWS::ACMPCA::Certificate.EdiPartyName`.
104
+ * Describes an Electronic Data Interchange (EDI) entity as described in as defined in [Subject Alternative Name](https://docs.aws.amazon.com/https://datatracker.ietf.org/doc/html/rfc5280) in RFC 5280.
91
105
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-edipartyname.html}
92
106
  */
93
107
  export type EdiPartyName = {
108
+ /**
109
+ * Specifies the name assigner.
110
+ */
94
111
  NameAssigner: string;
112
+ /**
113
+ * Specifies the party name.
114
+ */
95
115
  PartyName: string;
96
116
  };
97
117
  /**
98
118
  * Type definition for `AWS::ACMPCA::Certificate.ExtendedKeyUsage`.
119
+ * Specifies additional purposes for which the certified public key may be used other than basic purposes indicated in the ``KeyUsage`` extension.
99
120
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extendedkeyusage.html}
100
121
  */
101
122
  export type ExtendedKeyUsage = {
102
123
  /**
103
- * String that contains X.509 ObjectIdentifier information.
124
+ * Specifies a custom ``ExtendedKeyUsage`` with an object identifier (OID).
104
125
  */
105
126
  ExtendedKeyUsageObjectIdentifier?: string;
127
+ /**
128
+ * Specifies a standard ``ExtendedKeyUsage`` as defined as in [RFC 5280](https://docs.aws.amazon.com/https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.12).
129
+ */
106
130
  ExtendedKeyUsageType?: string;
107
131
  };
108
132
  /**
109
133
  * Type definition for `AWS::ACMPCA::Certificate.Extensions`.
110
- * Defines one or more purposes for which the key contained in the certificate can be used. Default value for each option is false.
134
+ * Contains X.509 extension information for a certificate.
111
135
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-extensions.html}
112
136
  */
113
137
  export type Extensions = {
138
+ /**
139
+ * Contains a sequence of one or more policy information terms, each of which consists of an object identifier (OID) and optional qualifiers. For more information, see NIST's definition of [Object Identifier (OID)](https://docs.aws.amazon.com/https://csrc.nist.gov/glossary/term/Object_Identifier).
140
+ In an end-entity certificate, these terms indicate the policy under which the certificate was issued and the purposes for which it may be used. In a CA certificate, these terms limit the set of policies for certification paths that include this certificate.
141
+ */
114
142
  CertificatePolicies?: PolicyInformation[];
115
143
  /**
116
- * Array of X.509 extensions for a certificate.
144
+ * Contains a sequence of one or more X.509 extensions, each of which consists of an object identifier (OID), a base64-encoded value, and the critical flag. For more information, see the [Global OID reference database.](https://docs.aws.amazon.com/https://oidref.com/2.5.29)
117
145
  */
118
146
  CustomExtensions?: CustomExtension[];
147
+ /**
148
+ * Specifies additional purposes for which the certified public key may be used other than basic purposes indicated in the ``KeyUsage`` extension.
149
+ */
119
150
  ExtendedKeyUsage?: ExtendedKeyUsage[];
120
151
  /**
121
152
  * Defines one or more purposes for which the key contained in the certificate can be used. Default value for each option is false.
122
153
  */
123
154
  KeyUsage?: KeyUsage;
155
+ /**
156
+ * The subject alternative name extension allows identities to be bound to the subject of the certificate. These identities may be included in addition to or in place of the identity in the subject field of the certificate.
157
+ */
124
158
  SubjectAlternativeNames?: GeneralName[];
125
159
  };
126
160
  /**
127
161
  * Type definition for `AWS::ACMPCA::Certificate.GeneralName`.
128
- * Contains information about the certificate subject. The certificate can be one issued by your private certificate authority (CA) or it can be your private CA certificate. The Subject field in the certificate identifies the entity that owns or controls the public key in the certificate. The entity can be a user, computer, device, or service. The Subject must contain an X.500 distinguished name (DN). A DN is a sequence of relative distinguished names (RDNs). The RDNs are separated by commas in the certificate. The DN must be unique for each entity, but your private CA can issue more than one certificate with the same DN to the same entity.
162
+ * Describes an ASN.1 X.400 ``GeneralName`` as defined in [RFC 5280](https://docs.aws.amazon.com/https://datatracker.ietf.org/doc/html/rfc5280). Only one of the following naming options should be provided. Providing more than one option results in an ``InvalidArgsException`` error.
129
163
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-generalname.html}
130
164
  */
131
165
  export type GeneralName = {
@@ -134,78 +168,131 @@ export type GeneralName = {
134
168
  */
135
169
  DirectoryName?: Subject;
136
170
  /**
137
- * String that contains X.509 DnsName information.
171
+ * Represents ``GeneralName`` as a DNS name.
138
172
  */
139
173
  DnsName?: string;
174
+ /**
175
+ * Represents ``GeneralName`` as an ``EdiPartyName`` object.
176
+ */
140
177
  EdiPartyName?: EdiPartyName;
141
178
  /**
142
- * String that contains X.509 IpAddress information.
179
+ * Represents ``GeneralName`` as an IPv4 or IPv6 address.
143
180
  */
144
181
  IpAddress?: string;
182
+ /**
183
+ * Represents ``GeneralName`` using an ``OtherName`` object.
184
+ */
145
185
  OtherName?: OtherName;
146
186
  /**
147
- * String that contains X.509 ObjectIdentifier information.
187
+ * Represents ``GeneralName`` as an object identifier (OID).
148
188
  */
149
189
  RegisteredId?: string;
150
190
  /**
151
- * String that contains X.509 Rfc822Name information.
191
+ * Represents ``GeneralName`` as an [RFC 822](https://docs.aws.amazon.com/https://datatracker.ietf.org/doc/html/rfc822) email address.
152
192
  */
153
193
  Rfc822Name?: string;
154
194
  /**
155
- * String that contains X.509 UniformResourceIdentifier information.
195
+ * Represents ``GeneralName`` as a URI.
156
196
  */
157
197
  UniformResourceIdentifier?: string;
158
198
  };
159
199
  /**
160
200
  * Type definition for `AWS::ACMPCA::Certificate.KeyUsage`.
201
+ * Defines one or more purposes for which the key contained in the certificate can be used. Default value for each option is false.
161
202
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-keyusage.html}
162
203
  */
163
204
  export type KeyUsage = {
205
+ /**
206
+ * Key can be used to sign CRLs.
207
+ */
164
208
  CRLSign?: boolean;
209
+ /**
210
+ * Key can be used to decipher data.
211
+ */
165
212
  DataEncipherment?: boolean;
213
+ /**
214
+ * Key can be used only to decipher data.
215
+ */
166
216
  DecipherOnly?: boolean;
217
+ /**
218
+ * Key can be used for digital signing.
219
+ */
167
220
  DigitalSignature?: boolean;
221
+ /**
222
+ * Key can be used only to encipher data.
223
+ */
168
224
  EncipherOnly?: boolean;
225
+ /**
226
+ * Key can be used in a key-agreement protocol.
227
+ */
169
228
  KeyAgreement?: boolean;
229
+ /**
230
+ * Key can be used to sign certificates.
231
+ */
170
232
  KeyCertSign?: boolean;
233
+ /**
234
+ * Key can be used to encipher data.
235
+ */
171
236
  KeyEncipherment?: boolean;
237
+ /**
238
+ * Key can be used for non-repudiation.
239
+ */
172
240
  NonRepudiation?: boolean;
173
241
  };
174
242
  /**
175
243
  * Type definition for `AWS::ACMPCA::Certificate.OtherName`.
244
+ * Defines a custom ASN.1 X.400 ``GeneralName`` using an object identifier (OID) and value. The OID must satisfy the regular expression shown below. For more information, see NIST's definition of [Object Identifier (OID)](https://docs.aws.amazon.com/https://csrc.nist.gov/glossary/term/Object_Identifier).
176
245
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-othername.html}
177
246
  */
178
247
  export type OtherName = {
179
248
  /**
180
- * String that contains X.509 ObjectIdentifier information.
249
+ * Specifies an OID.
181
250
  */
182
251
  TypeId: string;
252
+ /**
253
+ * Specifies an OID value.
254
+ */
183
255
  Value: string;
184
256
  };
185
257
  /**
186
258
  * Type definition for `AWS::ACMPCA::Certificate.PolicyInformation`.
259
+ * Defines the X.509 ``CertificatePolicies`` extension.
187
260
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyinformation.html}
188
261
  */
189
262
  export type PolicyInformation = {
190
263
  /**
191
- * String that contains X.509 ObjectIdentifier information.
264
+ * Specifies the object identifier (OID) of the certificate policy under which the certificate was issued. For more information, see NIST's definition of [Object Identifier (OID)](https://docs.aws.amazon.com/https://csrc.nist.gov/glossary/term/Object_Identifier).
192
265
  */
193
266
  CertPolicyId: string;
267
+ /**
268
+ * Modifies the given ``CertPolicyId`` with a qualifier. AWS Private CA supports the certification practice statement (CPS) qualifier.
269
+ */
194
270
  PolicyQualifiers?: PolicyQualifierInfo[];
195
271
  };
196
272
  /**
197
273
  * Type definition for `AWS::ACMPCA::Certificate.PolicyQualifierInfo`.
274
+ * Modifies the ``CertPolicyId`` of a ``PolicyInformation`` object with a qualifier. AWS Private CA supports the certification practice statement (CPS) qualifier.
198
275
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-policyqualifierinfo.html}
199
276
  */
200
277
  export type PolicyQualifierInfo = {
278
+ /**
279
+ * Identifies the qualifier modifying a ``CertPolicyId``.
280
+ */
201
281
  PolicyQualifierId: string;
282
+ /**
283
+ * Defines the qualifier type. AWS Private CA supports the use of a URI for a CPS qualifier in this field.
284
+ */
202
285
  Qualifier: Qualifier;
203
286
  };
204
287
  /**
205
288
  * Type definition for `AWS::ACMPCA::Certificate.Qualifier`.
289
+ * Defines a ``PolicyInformation`` qualifier. AWS Private CA supports the [certification practice statement (CPS) qualifier](https://docs.aws.amazon.com/https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.4) defined in RFC 5280.
206
290
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificate-qualifier.html}
207
291
  */
208
292
  export type Qualifier = {
293
+ /**
294
+ * Contains a pointer to a certification practice statement (CPS) published by the CA.
295
+ */
209
296
  CpsUri: string;
210
297
  };
211
298
  /**
@@ -224,8 +311,9 @@ export type Subject = {
224
311
  */
225
312
  Country?: string;
226
313
  /**
227
- * Array of X.500 attribute type and value. CustomAttributes cannot be used along with pre-defined attributes.
228
- */
314
+ * Contains a sequence of one or more X.500 relative distinguished names (RDNs), each of which consists of an object identifier (OID) and a value. For more information, see NIST’s definition of [Object Identifier (OID)](https://docs.aws.amazon.com/https://csrc.nist.gov/glossary/term/Object_Identifier).
315
+ Custom attributes cannot be used in combination with standard attributes.
316
+ */
229
317
  CustomAttributes?: CustomAttribute[];
230
318
  /**
231
319
  * Disambiguating information for the certificate subject.
@@ -287,7 +375,7 @@ export type Validity = {
287
375
  */
288
376
  Type: string;
289
377
  /**
290
- * Time period.
378
+ * A long integer interpreted according to the value of ``Type``, below.
291
379
  */
292
380
  Value: number;
293
381
  };
@@ -8,6 +8,7 @@ export type AppSyncApiCacheProperties = {
8
8
  ApiCachingBehavior: string;
9
9
  ApiId: string;
10
10
  AtRestEncryptionEnabled?: boolean;
11
+ HealthMetricsConfig?: string;
11
12
  TransitEncryptionEnabled?: boolean;
12
13
  Ttl: number;
13
14
  Type: string;
@@ -12,6 +12,7 @@ export type AppSyncDataSourceProperties = {
12
12
  EventBridgeConfig?: EventBridgeConfig;
13
13
  HttpConfig?: HttpConfig;
14
14
  LambdaConfig?: LambdaConfig;
15
+ MetricsConfig?: string;
15
16
  Name: string;
16
17
  OpenSearchServiceConfig?: OpenSearchServiceConfig;
17
18
  RelationalDatabaseConfig?: RelationalDatabaseConfig;
@@ -8,6 +8,7 @@ export type AppSyncGraphQLApiProperties = {
8
8
  AdditionalAuthenticationProviders?: AdditionalAuthenticationProvider[];
9
9
  ApiType?: string;
10
10
  AuthenticationType: string;
11
+ EnhancedMetricsConfig?: EnhancedMetricsConfig;
11
12
  EnvironmentVariables?: Record<string, any>;
12
13
  IntrospectionConfig?: string;
13
14
  LambdaAuthorizerConfig?: LambdaAuthorizerConfig;
@@ -56,6 +57,15 @@ export type CognitoUserPoolConfig = {
56
57
  AwsRegion?: string;
57
58
  UserPoolId?: string;
58
59
  };
60
+ /**
61
+ * Type definition for `AWS::AppSync::GraphQLApi.EnhancedMetricsConfig`.
62
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-enhancedmetricsconfig.html}
63
+ */
64
+ export type EnhancedMetricsConfig = {
65
+ DataSourceLevelMetricsBehavior: string;
66
+ OperationLevelMetricsConfig: string;
67
+ ResolverLevelMetricsBehavior: string;
68
+ };
59
69
  /**
60
70
  * Type definition for `AWS::AppSync::GraphQLApi.LambdaAuthorizerConfig`.
61
71
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html}
@@ -41,6 +41,7 @@ export type AppSyncResolverProperties = {
41
41
  * The maximum number of resolver request inputs that will be sent to a single LAMlong function in a ``BatchInvoke`` operation.
42
42
  */
43
43
  MaxBatchSize?: number;
44
+ MetricsConfig?: "ENABLED" | "DISABLED";
44
45
  /**
45
46
  * Functions linked with the pipeline resolver.
46
47
  */
@@ -53,6 +53,7 @@ export type ContainerProperties = {
53
53
  NetworkConfiguration?: NetworkConfiguration;
54
54
  Privileged?: boolean;
55
55
  ReadonlyRootFilesystem?: boolean;
56
+ RepositoryCredentials?: RepositoryCredentials;
56
57
  ResourceRequirements?: ResourceRequirement[];
57
58
  RuntimePlatform?: RuntimePlatform;
58
59
  Secrets?: Secret[];
@@ -277,6 +278,13 @@ export type PodProperties = {
277
278
  ServiceAccountName?: string;
278
279
  Volumes?: EksVolume[];
279
280
  };
281
+ /**
282
+ * Type definition for `AWS::Batch::JobDefinition.RepositoryCredentials`.
283
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-repositorycredentials.html}
284
+ */
285
+ export type RepositoryCredentials = {
286
+ CredentialsParameter: string;
287
+ };
280
288
  /**
281
289
  * Type definition for `AWS::Batch::JobDefinition.ResourceRequirement`.
282
290
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourcerequirement.html}
@@ -0,0 +1,80 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-builder/template";
3
+ /**
4
+ * Definition of AWS::ControlTower::EnabledBaseline Resource Type
5
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledbaseline.html}
6
+ */
7
+ export type ControlTowerEnabledBaselineProperties = {
8
+ /**
9
+ * @minLength `20`
10
+ * @maxLength `2048`
11
+ * @pattern `^arn:aws[0-9a-zA-Z_\-:\/]+$`
12
+ */
13
+ BaselineIdentifier: string;
14
+ /**
15
+ * @pattern `^\d+(?:\.\d+){0,2}$`
16
+ */
17
+ BaselineVersion: string;
18
+ Parameters?: Parameter[];
19
+ Tags?: Tag[];
20
+ /**
21
+ * @minLength `20`
22
+ * @maxLength `2048`
23
+ * @pattern `^arn:aws[0-9a-zA-Z_\-:\/]+$`
24
+ */
25
+ TargetIdentifier: string;
26
+ };
27
+ /**
28
+ * Attribute type definition for `AWS::ControlTower::EnabledBaseline`.
29
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledbaseline.html#aws-resource-controltower-enabledbaseline-return-values}
30
+ */
31
+ export type ControlTowerEnabledBaselineAttributes = {
32
+ /**
33
+ * @minLength `20`
34
+ * @maxLength `2048`
35
+ * @pattern `^arn:aws[0-9a-zA-Z_\-:\/]+$`
36
+ */
37
+ EnabledBaselineIdentifier: string;
38
+ };
39
+ /**
40
+ * Type definition for `AWS::ControlTower::EnabledBaseline.AnyType`.
41
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-controltower-enabledbaseline-anytype.html}
42
+ */
43
+ export type AnyType = string | Record<string, any> | number | (boolean | number | Record<string, any> | string)[] | boolean;
44
+ /**
45
+ * Type definition for `AWS::ControlTower::EnabledBaseline.Parameter`.
46
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-controltower-enabledbaseline-parameter.html}
47
+ */
48
+ export type Parameter = {
49
+ /**
50
+ * @minLength `1`
51
+ * @maxLength `256`
52
+ */
53
+ Key?: string;
54
+ Value?: AnyType;
55
+ };
56
+ /**
57
+ * Type definition for `AWS::ControlTower::EnabledBaseline.Tag`.
58
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-controltower-enabledbaseline-tag.html}
59
+ */
60
+ export type Tag = {
61
+ /**
62
+ * @minLength `1`
63
+ * @maxLength `256`
64
+ */
65
+ Key?: string;
66
+ /**
67
+ * @minLength `0`
68
+ * @maxLength `256`
69
+ */
70
+ Value?: string;
71
+ };
72
+ /**
73
+ * Definition of AWS::ControlTower::EnabledBaseline Resource Type
74
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledbaseline.html}
75
+ */
76
+ export declare class ControlTowerEnabledBaseline extends $Resource<"AWS::ControlTower::EnabledBaseline", ControlTowerEnabledBaselineProperties, ControlTowerEnabledBaselineAttributes> {
77
+ static readonly Type = "AWS::ControlTower::EnabledBaseline";
78
+ constructor(logicalId: string, properties: ControlTowerEnabledBaselineProperties, options?: $ResourceOptions);
79
+ }
80
+ //# sourceMappingURL=AWS-ControlTower-EnabledBaseline.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ /**
3
+ * Definition of AWS::ControlTower::EnabledBaseline Resource Type
4
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledbaseline.html}
5
+ */
6
+ export class ControlTowerEnabledBaseline extends $Resource {
7
+ static Type = "AWS::ControlTower::EnabledBaseline";
8
+ constructor(logicalId, properties, options) {
9
+ super(logicalId, ControlTowerEnabledBaseline.Type, properties, options);
10
+ }
11
+ }
12
+ //# sourceMappingURL=AWS-ControlTower-EnabledBaseline.js.map
@@ -26,7 +26,7 @@ export type DMSDataProviderProperties = {
26
26
  /**
27
27
  * The property describes a data engine for the data provider.
28
28
  */
29
- Engine: "postgresql" | "mysql" | "oracle" | "sqlserver" | "aurora" | "aurora_postgresql";
29
+ Engine: "postgres" | "mysql" | "oracle" | "sqlserver" | "aurora" | "aurora_postgresql";
30
30
  /**
31
31
  * The property describes the exact settings which can be modified
32
32
  */
@@ -16,6 +16,7 @@ export type DynamoDBTableProperties = {
16
16
  LocalSecondaryIndexes?: LocalSecondaryIndex[];
17
17
  PointInTimeRecoverySpecification?: PointInTimeRecoverySpecification;
18
18
  ProvisionedThroughput?: ProvisionedThroughput;
19
+ ResourcePolicy?: ResourcePolicy;
19
20
  SSESpecification?: SSESpecification;
20
21
  StreamSpecification?: StreamSpecification;
21
22
  TableClass?: string;
@@ -130,6 +131,13 @@ export type ProvisionedThroughput = {
130
131
  ReadCapacityUnits: number;
131
132
  WriteCapacityUnits: number;
132
133
  };
134
+ /**
135
+ * Type definition for `AWS::DynamoDB::Table.ResourcePolicy`.
136
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-resourcepolicy.html}
137
+ */
138
+ export type ResourcePolicy = {
139
+ PolicyDocument: Record<string, any>;
140
+ };
133
141
  /**
134
142
  * Type definition for `AWS::DynamoDB::Table.S3BucketSource`.
135
143
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-s3bucketsource.html}
@@ -153,6 +161,7 @@ export type SSESpecification = {
153
161
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-streamspecification.html}
154
162
  */
155
163
  export type StreamSpecification = {
164
+ ResourcePolicy?: ResourcePolicy;
156
165
  StreamViewType: string;
157
166
  };
158
167
  /**
@@ -10,7 +10,7 @@ export type EC2InstanceConnectEndpointProperties = {
10
10
  */
11
11
  ClientToken?: string;
12
12
  /**
13
- * If true, the address of the loki client is preserved when connecting to the end resource
13
+ * If true, the address of the instance connect endpoint client is preserved when connecting to the end resource
14
14
  */
15
15
  PreserveClientIp?: boolean;
16
16
  /**
@@ -1,21 +1,52 @@
1
1
  import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
2
  import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-builder/template";
3
3
  /**
4
- * Resource Type definition for AWS::EC2::NatGateway
4
+ * Resource type definition for `AWS::EC2::NatGateway`.
5
+ * Specifies a network address translation (NAT) gateway in the specified subnet. You can create either a public NAT gateway or a private NAT gateway. The default is a public NAT gateway. If you create a public NAT gateway, you must specify an elastic IP address.
6
+ With a NAT gateway, instances in a private subnet can connect to the internet, other AWS services, or an on-premises network using the IP address of the NAT gateway. For more information, see [NAT gateways](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) in the *Amazon VPC User Guide*.
7
+ If you add a default route (``AWS::EC2::Route`` resource) that points to a NAT gateway, specify the NAT gateway ID for the route's ``NatGatewayId`` property.
8
+ When you associate an Elastic IP address or secondary Elastic IP address with a public NAT gateway, the network border group of the Elastic IP address must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. Otherwise, the N
5
9
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html}
6
10
  */
7
11
  export type EC2NatGatewayProperties = {
12
+ /**
13
+ * [Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway. This property is required for a public NAT gateway and cannot be specified with a private NAT gateway.
14
+ */
8
15
  AllocationId?: string;
16
+ /**
17
+ * Indicates whether the NAT gateway supports public or private connectivity. The default is public connectivity.
18
+ */
9
19
  ConnectivityType?: string;
20
+ /**
21
+ * The maximum amount of time to wait (in seconds) before forcibly releasing the IP addresses if connections are still in progress. Default value is 350 seconds.
22
+ */
10
23
  MaxDrainDurationSeconds?: number;
24
+ /**
25
+ * The private IPv4 address to assign to the NAT gateway. If you don't provide an address, a private IPv4 address will be automatically assigned.
26
+ */
11
27
  PrivateIpAddress?: string;
12
- SecondaryAllocationIds?: string[];
13
28
  /**
14
- * @min `1`
29
+ * Secondary EIP allocation IDs. For more information, see [Create a NAT gateway](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) in the *Amazon VPC User Guide*.
15
30
  */
31
+ SecondaryAllocationIds?: string[];
32
+ /**
33
+ * [Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see [Create a NAT gateway](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) in the *Amazon Virtual Private Cloud User Guide*.
34
+ ``SecondaryPrivateIpAddressCount`` and ``SecondaryPrivateIpAddresses`` cannot be set at the same time.
35
+ * @min `1`
36
+ */
16
37
  SecondaryPrivateIpAddressCount?: number;
38
+ /**
39
+ * Secondary private IPv4 addresses. For more information about secondary addresses, see [Create a NAT gateway](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) in the *Amazon Virtual Private Cloud User Guide*.
40
+ ``SecondaryPrivateIpAddressCount`` and ``SecondaryPrivateIpAddresses`` cannot be set at the same time.
41
+ */
17
42
  SecondaryPrivateIpAddresses?: string[];
43
+ /**
44
+ * The ID of the subnet in which the NAT gateway is located.
45
+ */
18
46
  SubnetId: string;
47
+ /**
48
+ * The tags for the NAT gateway.
49
+ */
19
50
  Tags?: Tag[];
20
51
  };
21
52
  /**
@@ -27,14 +58,25 @@ export type EC2NatGatewayAttributes = {
27
58
  };
28
59
  /**
29
60
  * Type definition for `AWS::EC2::NatGateway.Tag`.
61
+ * Specifies a tag. For more information, see [Add tags to a resource](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#cloudformation-add-tag-specifications).
30
62
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-natgateway-tag.html}
31
63
  */
32
64
  export type Tag = {
65
+ /**
66
+ * The tag key.
67
+ */
33
68
  Key: string;
69
+ /**
70
+ * The tag value.
71
+ */
34
72
  Value: string;
35
73
  };
36
74
  /**
37
- * Resource Type definition for AWS::EC2::NatGateway
75
+ * Resource type definition for `AWS::EC2::NatGateway`.
76
+ * Specifies a network address translation (NAT) gateway in the specified subnet. You can create either a public NAT gateway or a private NAT gateway. The default is a public NAT gateway. If you create a public NAT gateway, you must specify an elastic IP address.
77
+ With a NAT gateway, instances in a private subnet can connect to the internet, other AWS services, or an on-premises network using the IP address of the NAT gateway. For more information, see [NAT gateways](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) in the *Amazon VPC User Guide*.
78
+ If you add a default route (``AWS::EC2::Route`` resource) that points to a NAT gateway, specify the NAT gateway ID for the route's ``NatGatewayId`` property.
79
+ When you associate an Elastic IP address or secondary Elastic IP address with a public NAT gateway, the network border group of the Elastic IP address must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. Otherwise, the N
38
80
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html}
39
81
  */
40
82
  export declare class EC2NatGateway extends $Resource<"AWS::EC2::NatGateway", EC2NatGatewayProperties, EC2NatGatewayAttributes> {
@@ -1,6 +1,10 @@
1
1
  import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
2
  /**
3
- * Resource Type definition for AWS::EC2::NatGateway
3
+ * Resource type definition for `AWS::EC2::NatGateway`.
4
+ * Specifies a network address translation (NAT) gateway in the specified subnet. You can create either a public NAT gateway or a private NAT gateway. The default is a public NAT gateway. If you create a public NAT gateway, you must specify an elastic IP address.
5
+ With a NAT gateway, instances in a private subnet can connect to the internet, other AWS services, or an on-premises network using the IP address of the NAT gateway. For more information, see [NAT gateways](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) in the *Amazon VPC User Guide*.
6
+ If you add a default route (``AWS::EC2::Route`` resource) that points to a NAT gateway, specify the NAT gateway ID for the route's ``NatGatewayId`` property.
7
+ When you associate an Elastic IP address or secondary Elastic IP address with a public NAT gateway, the network border group of the Elastic IP address must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. Otherwise, the N
4
8
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html}
5
9
  */
6
10
  export class EC2NatGateway extends $Resource {