@awboost/cfn-resource-types 0.1.33 → 0.1.34
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.
- package/lib/AWS-IAM-RolePolicy.d.ts +4 -2
- package/lib/AWS-IAM-RolePolicy.js +2 -1
- package/lib/AWS-IoTSiteWise-Asset.d.ts +44 -2
- package/lib/AWS-IoTSiteWise-AssetModel.d.ts +225 -5
- package/lib/AWS-Lambda-Function.d.ts +12 -4
- package/lib/AWS-Lambda-Function.js +4 -1
- package/lib/AWS-RDS-DBCluster.d.ts +4 -0
- package/lib/AWS-RDS-DBInstance.d.ts +3 -2
- package/lib/AWS-RedshiftServerless-Namespace.d.ts +0 -15
- package/lib/AWS-SNS-Topic.d.ts +40 -44
- package/lib/AWS-SNS-Topic.js +3 -1
- package/lib/AWS-SNS-TopicPolicy.d.ts +3 -6
- package/lib/AWS-SNS-TopicPolicy.js +1 -1
- package/lib/AWS-SQS-Queue.d.ts +64 -32
- package/lib/AWS-SQS-Queue.js +7 -1
- package/lib/AWS-SSM-Parameter.d.ts +1 -1
- package/lib/AWS-SecretsManager-Secret.d.ts +13 -3
- package/lib/AWS-SecretsManager-Secret.js +2 -1
- package/lib/AWS-WAFv2-RuleGroup.d.ts +14 -2
- package/lib/AWS-WAFv2-WebACL.d.ts +14 -2
- package/package.json +1 -1
|
@@ -4,7 +4,8 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
4
4
|
* Resource type definition for `AWS::IAM::RolePolicy`.
|
|
5
5
|
* Adds or updates an inline policy document that is embedded in the specified IAM role.
|
|
6
6
|
When you embed an inline policy in a role, the inline policy is used as part of the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using [CreateRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html). You can update a role's trust policy using [UpdateAssumeRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html). For information about roles, see [roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html) in the *IAM User Guide*.
|
|
7
|
-
A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-
|
|
7
|
+
A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.
|
|
8
|
+
For information about the maximum number of inline policies that you can embed with a role, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*.
|
|
8
9
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html}
|
|
9
10
|
*/
|
|
10
11
|
export type IAMRolePolicyProperties = {
|
|
@@ -32,7 +33,8 @@ export type IAMRolePolicyProperties = {
|
|
|
32
33
|
* Resource type definition for `AWS::IAM::RolePolicy`.
|
|
33
34
|
* Adds or updates an inline policy document that is embedded in the specified IAM role.
|
|
34
35
|
When you embed an inline policy in a role, the inline policy is used as part of the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using [CreateRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html). You can update a role's trust policy using [UpdateAssumeRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html). For information about roles, see [roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html) in the *IAM User Guide*.
|
|
35
|
-
A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-
|
|
36
|
+
A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.
|
|
37
|
+
For information about the maximum number of inline policies that you can embed with a role, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*.
|
|
36
38
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html}
|
|
37
39
|
*/
|
|
38
40
|
export declare class IAMRolePolicy extends $Resource<"AWS::IAM::RolePolicy", IAMRolePolicyProperties, Record<string, never>> {
|
|
@@ -3,7 +3,8 @@ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/re
|
|
|
3
3
|
* Resource type definition for `AWS::IAM::RolePolicy`.
|
|
4
4
|
* Adds or updates an inline policy document that is embedded in the specified IAM role.
|
|
5
5
|
When you embed an inline policy in a role, the inline policy is used as part of the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using [CreateRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html). You can update a role's trust policy using [UpdateAssumeRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html). For information about roles, see [roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html) in the *IAM User Guide*.
|
|
6
|
-
A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-
|
|
6
|
+
A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.
|
|
7
|
+
For information about the maximum number of inline policies that you can embed with a role, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*.
|
|
7
8
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html}
|
|
8
9
|
*/
|
|
9
10
|
export class IAMRolePolicy extends $Resource {
|
|
@@ -9,6 +9,13 @@ export type IoTSiteWiseAssetProperties = {
|
|
|
9
9
|
* A description for the asset
|
|
10
10
|
*/
|
|
11
11
|
AssetDescription?: string;
|
|
12
|
+
/**
|
|
13
|
+
* The External ID of the asset
|
|
14
|
+
* @minLength `2`
|
|
15
|
+
* @maxLength `128`
|
|
16
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
17
|
+
*/
|
|
18
|
+
AssetExternalId?: string;
|
|
12
19
|
AssetHierarchies?: AssetHierarchy[];
|
|
13
20
|
/**
|
|
14
21
|
* The ID of the asset model from which to create the asset.
|
|
@@ -33,10 +40,31 @@ export type IoTSiteWiseAssetAttributes = {
|
|
|
33
40
|
* The ARN of the asset
|
|
34
41
|
*/
|
|
35
42
|
AssetArn: string;
|
|
43
|
+
AssetHierarchies: {
|
|
44
|
+
/**
|
|
45
|
+
* Customer provided actual UUID for property
|
|
46
|
+
* @minLength `36`
|
|
47
|
+
* @maxLength `36`
|
|
48
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
49
|
+
*/
|
|
50
|
+
Id: string;
|
|
51
|
+
}[];
|
|
36
52
|
/**
|
|
37
53
|
* The ID of the asset
|
|
54
|
+
* @minLength `36`
|
|
55
|
+
* @maxLength `36`
|
|
56
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
38
57
|
*/
|
|
39
58
|
AssetId: string;
|
|
59
|
+
AssetProperties: {
|
|
60
|
+
/**
|
|
61
|
+
* Customer provided actual UUID for property
|
|
62
|
+
* @minLength `36`
|
|
63
|
+
* @maxLength `36`
|
|
64
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
65
|
+
*/
|
|
66
|
+
Id: string;
|
|
67
|
+
}[];
|
|
40
68
|
};
|
|
41
69
|
/**
|
|
42
70
|
* Type definition for `AWS::IoTSiteWise::Asset.AssetHierarchy`.
|
|
@@ -48,13 +76,20 @@ export type AssetHierarchy = {
|
|
|
48
76
|
* The ID of the child asset to be associated.
|
|
49
77
|
*/
|
|
50
78
|
ChildAssetId: string;
|
|
79
|
+
/**
|
|
80
|
+
* String-friendly customer provided external ID
|
|
81
|
+
* @minLength `2`
|
|
82
|
+
* @maxLength `128`
|
|
83
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
84
|
+
*/
|
|
85
|
+
ExternalId?: string;
|
|
51
86
|
/**
|
|
52
87
|
* The LogicalID of a hierarchy in the parent asset's model.
|
|
53
88
|
* @minLength `1`
|
|
54
89
|
* @maxLength `256`
|
|
55
90
|
* @pattern `[^\u0000-\u001F\u007F]+`
|
|
56
91
|
*/
|
|
57
|
-
LogicalId
|
|
92
|
+
LogicalId?: string;
|
|
58
93
|
};
|
|
59
94
|
/**
|
|
60
95
|
* Type definition for `AWS::IoTSiteWise::Asset.AssetProperty`.
|
|
@@ -66,13 +101,20 @@ export type AssetProperty = {
|
|
|
66
101
|
* The property alias that identifies the property.
|
|
67
102
|
*/
|
|
68
103
|
Alias?: string;
|
|
104
|
+
/**
|
|
105
|
+
* String-friendly customer provided external ID
|
|
106
|
+
* @minLength `2`
|
|
107
|
+
* @maxLength `128`
|
|
108
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
109
|
+
*/
|
|
110
|
+
ExternalId?: string;
|
|
69
111
|
/**
|
|
70
112
|
* Customer provided ID for property.
|
|
71
113
|
* @minLength `1`
|
|
72
114
|
* @maxLength `256`
|
|
73
115
|
* @pattern `[^\u0000-\u001F\u007F]+`
|
|
74
116
|
*/
|
|
75
|
-
LogicalId
|
|
117
|
+
LogicalId?: string;
|
|
76
118
|
/**
|
|
77
119
|
* The MQTT notification state (ENABLED or DISABLED) for this asset property.
|
|
78
120
|
*/
|
|
@@ -13,6 +13,13 @@ export type IoTSiteWiseAssetModelProperties = {
|
|
|
13
13
|
* A description for the asset model.
|
|
14
14
|
*/
|
|
15
15
|
AssetModelDescription?: string;
|
|
16
|
+
/**
|
|
17
|
+
* The external ID of the asset model.
|
|
18
|
+
* @minLength `2`
|
|
19
|
+
* @maxLength `128`
|
|
20
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
21
|
+
*/
|
|
22
|
+
AssetModelExternalId?: string;
|
|
16
23
|
/**
|
|
17
24
|
* The hierarchy definitions of the asset model. Each hierarchy specifies an asset model whose assets can be children of any other assets created from this asset model. You can specify up to 10 hierarchies per asset model.
|
|
18
25
|
*/
|
|
@@ -25,6 +32,10 @@ export type IoTSiteWiseAssetModelProperties = {
|
|
|
25
32
|
* The property definitions of the asset model. You can specify up to 200 properties per asset model.
|
|
26
33
|
*/
|
|
27
34
|
AssetModelProperties?: AssetModelProperty[];
|
|
35
|
+
/**
|
|
36
|
+
* The type of the asset model (ASSET_MODEL OR COMPONENT_MODEL)
|
|
37
|
+
*/
|
|
38
|
+
AssetModelType?: string;
|
|
28
39
|
/**
|
|
29
40
|
* A list of key-value pairs that contain metadata for the asset model.
|
|
30
41
|
*/
|
|
@@ -39,10 +50,151 @@ export type IoTSiteWiseAssetModelAttributes = {
|
|
|
39
50
|
* The ARN of the asset model, which has the following format.
|
|
40
51
|
*/
|
|
41
52
|
AssetModelArn: string;
|
|
53
|
+
/**
|
|
54
|
+
* The composite asset models that are part of this asset model. Composite asset models are asset models that contain specific properties.
|
|
55
|
+
*/
|
|
56
|
+
AssetModelCompositeModels: {
|
|
57
|
+
/**
|
|
58
|
+
* The property definitions of the asset model. You can specify up to 200 properties per asset model.
|
|
59
|
+
*/
|
|
60
|
+
CompositeModelProperties: {
|
|
61
|
+
/**
|
|
62
|
+
* The ID of the Asset Model Property
|
|
63
|
+
* @minLength `36`
|
|
64
|
+
* @maxLength `36`
|
|
65
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
66
|
+
*/
|
|
67
|
+
Id: string;
|
|
68
|
+
/**
|
|
69
|
+
* The property type
|
|
70
|
+
*/
|
|
71
|
+
Type: {
|
|
72
|
+
Metric: {
|
|
73
|
+
/**
|
|
74
|
+
* The list of variables used in the expression.
|
|
75
|
+
*/
|
|
76
|
+
Variables: {
|
|
77
|
+
/**
|
|
78
|
+
* The variable that identifies an asset property from which to use values.
|
|
79
|
+
*/
|
|
80
|
+
Value: {
|
|
81
|
+
/**
|
|
82
|
+
* The ID of the property that is trying to be referenced
|
|
83
|
+
* @minLength `36`
|
|
84
|
+
* @maxLength `36`
|
|
85
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
86
|
+
*/
|
|
87
|
+
PropertyId: string;
|
|
88
|
+
};
|
|
89
|
+
}[];
|
|
90
|
+
};
|
|
91
|
+
Transform: {
|
|
92
|
+
/**
|
|
93
|
+
* The list of variables used in the expression.
|
|
94
|
+
*/
|
|
95
|
+
Variables: {
|
|
96
|
+
/**
|
|
97
|
+
* The variable that identifies an asset property from which to use values.
|
|
98
|
+
*/
|
|
99
|
+
Value: {
|
|
100
|
+
/**
|
|
101
|
+
* The ID of the property that is trying to be referenced
|
|
102
|
+
* @minLength `36`
|
|
103
|
+
* @maxLength `36`
|
|
104
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
105
|
+
*/
|
|
106
|
+
PropertyId: string;
|
|
107
|
+
};
|
|
108
|
+
}[];
|
|
109
|
+
};
|
|
110
|
+
};
|
|
111
|
+
}[];
|
|
112
|
+
/**
|
|
113
|
+
* The Actual ID of the composite model
|
|
114
|
+
* @minLength `36`
|
|
115
|
+
* @maxLength `36`
|
|
116
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
117
|
+
*/
|
|
118
|
+
Id: string;
|
|
119
|
+
/**
|
|
120
|
+
* The path of the composite model. This is only for derived composite models
|
|
121
|
+
*/
|
|
122
|
+
Path: string[];
|
|
123
|
+
}[];
|
|
124
|
+
/**
|
|
125
|
+
* The hierarchy definitions of the asset model. Each hierarchy specifies an asset model whose assets can be children of any other assets created from this asset model. You can specify up to 10 hierarchies per asset model.
|
|
126
|
+
*/
|
|
127
|
+
AssetModelHierarchies: {
|
|
128
|
+
/**
|
|
129
|
+
* Customer provided actual ID for hierarchy
|
|
130
|
+
* @minLength `36`
|
|
131
|
+
* @maxLength `36`
|
|
132
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
133
|
+
*/
|
|
134
|
+
Id: string;
|
|
135
|
+
}[];
|
|
42
136
|
/**
|
|
43
137
|
* The ID of the asset model.
|
|
138
|
+
* @minLength `36`
|
|
139
|
+
* @maxLength `36`
|
|
140
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
44
141
|
*/
|
|
45
142
|
AssetModelId: string;
|
|
143
|
+
/**
|
|
144
|
+
* The property definitions of the asset model. You can specify up to 200 properties per asset model.
|
|
145
|
+
*/
|
|
146
|
+
AssetModelProperties: {
|
|
147
|
+
/**
|
|
148
|
+
* The ID of the Asset Model Property
|
|
149
|
+
* @minLength `36`
|
|
150
|
+
* @maxLength `36`
|
|
151
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
152
|
+
*/
|
|
153
|
+
Id: string;
|
|
154
|
+
/**
|
|
155
|
+
* The property type
|
|
156
|
+
*/
|
|
157
|
+
Type: {
|
|
158
|
+
Metric: {
|
|
159
|
+
/**
|
|
160
|
+
* The list of variables used in the expression.
|
|
161
|
+
*/
|
|
162
|
+
Variables: {
|
|
163
|
+
/**
|
|
164
|
+
* The variable that identifies an asset property from which to use values.
|
|
165
|
+
*/
|
|
166
|
+
Value: {
|
|
167
|
+
/**
|
|
168
|
+
* The ID of the property that is trying to be referenced
|
|
169
|
+
* @minLength `36`
|
|
170
|
+
* @maxLength `36`
|
|
171
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
172
|
+
*/
|
|
173
|
+
PropertyId: string;
|
|
174
|
+
};
|
|
175
|
+
}[];
|
|
176
|
+
};
|
|
177
|
+
Transform: {
|
|
178
|
+
/**
|
|
179
|
+
* The list of variables used in the expression.
|
|
180
|
+
*/
|
|
181
|
+
Variables: {
|
|
182
|
+
/**
|
|
183
|
+
* The variable that identifies an asset property from which to use values.
|
|
184
|
+
*/
|
|
185
|
+
Value: {
|
|
186
|
+
/**
|
|
187
|
+
* The ID of the property that is trying to be referenced
|
|
188
|
+
* @minLength `36`
|
|
189
|
+
* @maxLength `36`
|
|
190
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
191
|
+
*/
|
|
192
|
+
PropertyId: string;
|
|
193
|
+
};
|
|
194
|
+
}[];
|
|
195
|
+
};
|
|
196
|
+
};
|
|
197
|
+
}[];
|
|
46
198
|
};
|
|
47
199
|
/**
|
|
48
200
|
* Type definition for `AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel`.
|
|
@@ -50,6 +202,10 @@ export type IoTSiteWiseAssetModelAttributes = {
|
|
|
50
202
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html}
|
|
51
203
|
*/
|
|
52
204
|
export type AssetModelCompositeModel = {
|
|
205
|
+
/**
|
|
206
|
+
* The component model ID for which the composite model is composed of
|
|
207
|
+
*/
|
|
208
|
+
ComposedAssetModelId?: string;
|
|
53
209
|
/**
|
|
54
210
|
* The property definitions of the asset model. You can specify up to 200 properties per asset model.
|
|
55
211
|
*/
|
|
@@ -58,10 +214,24 @@ export type AssetModelCompositeModel = {
|
|
|
58
214
|
* A description for the asset composite model.
|
|
59
215
|
*/
|
|
60
216
|
Description?: string;
|
|
217
|
+
/**
|
|
218
|
+
* The External ID of the composite model
|
|
219
|
+
* @minLength `2`
|
|
220
|
+
* @maxLength `128`
|
|
221
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
222
|
+
*/
|
|
223
|
+
ExternalId?: string;
|
|
61
224
|
/**
|
|
62
225
|
* A unique, friendly name for the asset composite model.
|
|
63
226
|
*/
|
|
64
227
|
Name: string;
|
|
228
|
+
/**
|
|
229
|
+
* The parent composite model External ID
|
|
230
|
+
* @minLength `2`
|
|
231
|
+
* @maxLength `128`
|
|
232
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
233
|
+
*/
|
|
234
|
+
ParentAssetModelCompositeModelExternalId?: string;
|
|
65
235
|
/**
|
|
66
236
|
* The type of the composite model. For alarm composite models, this type is AWS/ALARM
|
|
67
237
|
*/
|
|
@@ -78,12 +248,19 @@ export type AssetModelHierarchy = {
|
|
|
78
248
|
*/
|
|
79
249
|
ChildAssetModelId: string;
|
|
80
250
|
/**
|
|
81
|
-
* Customer provided ID for hierarchy
|
|
251
|
+
* Customer provided external ID for hierarchy
|
|
252
|
+
* @minLength `2`
|
|
253
|
+
* @maxLength `128`
|
|
254
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
255
|
+
*/
|
|
256
|
+
ExternalId?: string;
|
|
257
|
+
/**
|
|
258
|
+
* Customer provided logical ID for hierarchy.
|
|
82
259
|
* @minLength `1`
|
|
83
260
|
* @maxLength `256`
|
|
84
261
|
* @pattern `[^\u0000-\u001F\u007F]+`
|
|
85
262
|
*/
|
|
86
|
-
LogicalId
|
|
263
|
+
LogicalId?: string;
|
|
87
264
|
/**
|
|
88
265
|
* The name of the asset model hierarchy.
|
|
89
266
|
*/
|
|
@@ -104,12 +281,19 @@ export type AssetModelProperty = {
|
|
|
104
281
|
*/
|
|
105
282
|
DataTypeSpec?: DataTypeSpec;
|
|
106
283
|
/**
|
|
107
|
-
*
|
|
284
|
+
* The External ID of the Asset Model Property
|
|
285
|
+
* @minLength `2`
|
|
286
|
+
* @maxLength `128`
|
|
287
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
288
|
+
*/
|
|
289
|
+
ExternalId?: string;
|
|
290
|
+
/**
|
|
291
|
+
* Customer provided Logical ID for property.
|
|
108
292
|
* @minLength `1`
|
|
109
293
|
* @maxLength `256`
|
|
110
294
|
* @pattern `[^\u0000-\u001F\u007F]+`
|
|
111
295
|
*/
|
|
112
|
-
LogicalId
|
|
296
|
+
LogicalId?: string;
|
|
113
297
|
/**
|
|
114
298
|
* The name of the asset model property.
|
|
115
299
|
*/
|
|
@@ -183,6 +367,17 @@ export type MetricWindow = {
|
|
|
183
367
|
*/
|
|
184
368
|
Tumbling?: TumblingWindow;
|
|
185
369
|
};
|
|
370
|
+
/**
|
|
371
|
+
* Type definition for `AWS::IoTSiteWise::AssetModel.PropertyPathDefinition`.
|
|
372
|
+
* The definition for property path which is used to reference properties in transforms/metrics
|
|
373
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-propertypathdefinition.html}
|
|
374
|
+
*/
|
|
375
|
+
export type PropertyPathDefinition = {
|
|
376
|
+
/**
|
|
377
|
+
* The name of the property
|
|
378
|
+
*/
|
|
379
|
+
Name: string;
|
|
380
|
+
};
|
|
186
381
|
/**
|
|
187
382
|
* Type definition for `AWS::IoTSiteWise::AssetModel.PropertyType`.
|
|
188
383
|
* Contains a property type, which can be one of attribute, measurement, metric, or transform.
|
|
@@ -241,18 +436,43 @@ export type TypeName = "Measurement" | "Attribute" | "Transform" | "Metric";
|
|
|
241
436
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html}
|
|
242
437
|
*/
|
|
243
438
|
export type VariableValue = {
|
|
439
|
+
/**
|
|
440
|
+
* The External ID of the hierarchy that is trying to be referenced
|
|
441
|
+
* @minLength `2`
|
|
442
|
+
* @maxLength `128`
|
|
443
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
444
|
+
*/
|
|
445
|
+
HierarchyExternalId?: string;
|
|
446
|
+
/**
|
|
447
|
+
* The ID of the hierarchy that is trying to be referenced
|
|
448
|
+
* @minLength `36`
|
|
449
|
+
* @maxLength `36`
|
|
450
|
+
* @pattern `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
|
|
451
|
+
*/
|
|
452
|
+
HierarchyId?: string;
|
|
244
453
|
/**
|
|
245
454
|
* @minLength `1`
|
|
246
455
|
* @maxLength `256`
|
|
247
456
|
* @pattern `[^\u0000-\u001F\u007F]+`
|
|
248
457
|
*/
|
|
249
458
|
HierarchyLogicalId?: string;
|
|
459
|
+
/**
|
|
460
|
+
* The External ID of the property that is trying to be referenced
|
|
461
|
+
* @minLength `2`
|
|
462
|
+
* @maxLength `128`
|
|
463
|
+
* @pattern `[a-zA-Z0-9_][a-zA-Z_\-0-9.:]*[a-zA-Z0-9_]+`
|
|
464
|
+
*/
|
|
465
|
+
PropertyExternalId?: string;
|
|
250
466
|
/**
|
|
251
467
|
* @minLength `1`
|
|
252
468
|
* @maxLength `256`
|
|
253
469
|
* @pattern `[^\u0000-\u001F\u007F]+`
|
|
254
470
|
*/
|
|
255
|
-
PropertyLogicalId
|
|
471
|
+
PropertyLogicalId?: string;
|
|
472
|
+
/**
|
|
473
|
+
* The path of the property that is trying to be referenced
|
|
474
|
+
*/
|
|
475
|
+
PropertyPath?: PropertyPathDefinition[];
|
|
256
476
|
};
|
|
257
477
|
/**
|
|
258
478
|
* Resource schema for AWS::IoTSiteWise::AssetModel
|
|
@@ -3,7 +3,10 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
3
3
|
/**
|
|
4
4
|
* The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.
|
|
5
5
|
You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties.
|
|
6
|
-
You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/
|
|
6
|
+
You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html).
|
|
7
|
+
You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.
|
|
8
|
+
Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.
|
|
9
|
+
For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.*
|
|
7
10
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html}
|
|
8
11
|
*/
|
|
9
12
|
export type LambdaFunctionProperties = {
|
|
@@ -176,7 +179,7 @@ export type Code = {
|
|
|
176
179
|
/**
|
|
177
180
|
* (Node.js and Python) The source code of your Lambda function. If you include your function source inline with this parameter, CFN places it in a file named ``index`` and zips it to create a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html). This zip file cannot exceed 4MB. For the ``Handler`` property, the first part of the handler identifier must be ``index``. For example, ``index.handler``.
|
|
178
181
|
For JSON, you must escape quotes and special characters such as newline (``\n``) with a backslash.
|
|
179
|
-
If you specify a function that interacts with an AWS CloudFormation custom resource, you don't have to write your own functions to send responses to the custom resource that invoked the function. AWS CloudFormation provides a response module ([cfn-response](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-lambda-function-code-cfnresponsemodule.html)) that simplifies sending responses. See [Using Lambda with CloudFormation](https://docs
|
|
182
|
+
If you specify a function that interacts with an AWS CloudFormation custom resource, you don't have to write your own functions to send responses to the custom resource that invoked the function. AWS CloudFormation provides a response module ([cfn-response](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-lambda-function-code-cfnresponsemodule.html)) that simplifies sending responses. See [Using Lambda with CloudFormation](https://docs.aws.amazon.com/lambda/latest/dg/services-cloudformation.html) for details.
|
|
180
183
|
*/
|
|
181
184
|
ZipFile?: string;
|
|
182
185
|
};
|
|
@@ -297,7 +300,9 @@ export type RuntimeManagementConfig = {
|
|
|
297
300
|
* Specify the runtime update mode.
|
|
298
301
|
+ *Auto (default)* - Automatically update to the most recent and secure runtime version using a [Two-phase runtime version rollout](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html#runtime-management-two-phase). This is the best choice for most customers to ensure they always benefit from runtime updates.
|
|
299
302
|
+ *FunctionUpdate* - LAM updates the runtime of you function to the most recent and secure runtime version when you update your function. This approach synchronizes runtime updates with function deployments, giving you control over when runtime updates are applied and allowing you to detect and mitigate rare runtime update incompatibilities early. When using this setting, you need to regularly update your functions to keep their runtime up-to-date.
|
|
300
|
-
+ *Manual* - You specify a runtime version in your function configuration. The function will use this runtime version indefinitely. In the rare case where a new runtime version is
|
|
303
|
+
+ *Manual* - You specify a runtime version in your function configuration. The function will use this runtime version indefinitely. In the rare case where a new runtime version is incompatible with an existing function, this allows you to roll back your function to an earlier runtime version. For more information, see [Roll back a runtime version](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html#runtime-management-rollback).
|
|
304
|
+
|
|
305
|
+
*Valid Values*: ``Auto`` | ``FunctionUpdate`` | ``Manual``
|
|
301
306
|
*/
|
|
302
307
|
UpdateRuntimeOn: "Auto" | "FunctionUpdate" | "Manual";
|
|
303
308
|
};
|
|
@@ -365,7 +370,10 @@ export type VpcConfig = {
|
|
|
365
370
|
/**
|
|
366
371
|
* The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.
|
|
367
372
|
You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties.
|
|
368
|
-
You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/
|
|
373
|
+
You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html).
|
|
374
|
+
You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.
|
|
375
|
+
Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.
|
|
376
|
+
For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.*
|
|
369
377
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html}
|
|
370
378
|
*/
|
|
371
379
|
export declare class LambdaFunction extends $Resource<"AWS::Lambda::Function", LambdaFunctionProperties, LambdaFunctionAttributes> {
|
|
@@ -2,7 +2,10 @@ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/re
|
|
|
2
2
|
/**
|
|
3
3
|
* The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.
|
|
4
4
|
You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties.
|
|
5
|
-
You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/
|
|
5
|
+
You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html).
|
|
6
|
+
You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.
|
|
7
|
+
Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.
|
|
8
|
+
For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.*
|
|
6
9
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html}
|
|
7
10
|
*/
|
|
8
11
|
export class LambdaFunction extends $Resource {
|
|
@@ -278,6 +278,10 @@ export type RDSDBClusterAttributes = {
|
|
|
278
278
|
*/
|
|
279
279
|
Address: string;
|
|
280
280
|
};
|
|
281
|
+
/**
|
|
282
|
+
* Specifies the storage throughput value for the DB cluster. This setting applies only to the gp3 storage type.
|
|
283
|
+
*/
|
|
284
|
+
StorageThroughput: number;
|
|
281
285
|
};
|
|
282
286
|
/**
|
|
283
287
|
* Type definition for `AWS::RDS::DBCluster.DBClusterRole`.
|
|
@@ -68,7 +68,7 @@ export type RDSDBInstanceProperties = {
|
|
|
68
68
|
BackupRetentionPeriod?: number;
|
|
69
69
|
/**
|
|
70
70
|
* The identifier of the CA certificate for this DB instance.
|
|
71
|
-
|
|
71
|
+
For more information, see [Using SSL/TLS to encrypt a connection to a DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html) in the *Amazon RDS User Guide* and [Using SSL/TLS to encrypt a connection to a DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html) in the *Amazon Aurora User Guide*.
|
|
72
72
|
*/
|
|
73
73
|
CACertificateIdentifier?: string;
|
|
74
74
|
/**
|
|
@@ -107,7 +107,7 @@ export type RDSDBInstanceProperties = {
|
|
|
107
107
|
*/
|
|
108
108
|
DBClusterIdentifier?: string;
|
|
109
109
|
/**
|
|
110
|
-
* The identifier for the Multi-AZ DB cluster snapshot to restore from.
|
|
110
|
+
* The identifier for the RDS for MySQL Multi-AZ DB cluster snapshot to restore from.
|
|
111
111
|
For more information on Multi-AZ DB clusters, see [Multi-AZ DB cluster deployments](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html) in the *Amazon RDS User Guide*.
|
|
112
112
|
Constraints:
|
|
113
113
|
+ Must match the identifier of an existing Multi-AZ DB cluster snapshot.
|
|
@@ -115,6 +115,7 @@ export type RDSDBInstanceProperties = {
|
|
|
115
115
|
+ Must be specified when ``DBSnapshotIdentifier`` isn't specified.
|
|
116
116
|
+ If you are restoring from a shared manual Multi-AZ DB cluster snapshot, the ``DBClusterSnapshotIdentifier`` must be the ARN of the shared snapshot.
|
|
117
117
|
+ Can't be the identifier of an Aurora DB cluster snapshot.
|
|
118
|
+
+ Can't be the identifier of an RDS for PostgreSQL Multi-AZ DB cluster snapshot.
|
|
118
119
|
*/
|
|
119
120
|
DBClusterSnapshotIdentifier?: string;
|
|
120
121
|
/**
|
|
@@ -74,12 +74,6 @@ export type RedshiftServerlessNamespaceProperties = {
|
|
|
74
74
|
* The ARN for the Redshift application that integrates with IAM Identity Center.
|
|
75
75
|
*/
|
|
76
76
|
RedshiftIdcApplicationArn?: string;
|
|
77
|
-
/**
|
|
78
|
-
* The snapshot copy configurations for the namespace.
|
|
79
|
-
* @minLength `0`
|
|
80
|
-
* @maxLength `1`
|
|
81
|
-
*/
|
|
82
|
-
SnapshotCopyConfigurations?: SnapshotCopyConfiguration[];
|
|
83
77
|
/**
|
|
84
78
|
* The list of tags for the namespace.
|
|
85
79
|
* @minLength `0`
|
|
@@ -141,15 +135,6 @@ export type Namespace = {
|
|
|
141
135
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshiftserverless-namespace-namespacestatus.html}
|
|
142
136
|
*/
|
|
143
137
|
export type NamespaceStatus = "AVAILABLE" | "MODIFYING" | "DELETING";
|
|
144
|
-
/**
|
|
145
|
-
* Type definition for `AWS::RedshiftServerless::Namespace.SnapshotCopyConfiguration`.
|
|
146
|
-
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshiftserverless-namespace-snapshotcopyconfiguration.html}
|
|
147
|
-
*/
|
|
148
|
-
export type SnapshotCopyConfiguration = {
|
|
149
|
-
DestinationKmsKeyId?: string;
|
|
150
|
-
DestinationRegion: string;
|
|
151
|
-
SnapshotRetentionPeriod?: number;
|
|
152
|
-
};
|
|
153
138
|
/**
|
|
154
139
|
* Type definition for `AWS::RedshiftServerless::Namespace.Tag`.
|
|
155
140
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshiftserverless-namespace-tag.html}
|
package/lib/AWS-SNS-Topic.d.ts
CHANGED
|
@@ -1,40 +1,33 @@
|
|
|
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
|
-
*
|
|
4
|
+
* The ``AWS::SNS::Topic`` resource creates a topic to which notifications can be published.
|
|
5
|
+
One account can create a maximum of 100,000 standard topics and 1,000 FIFO topics. For more information, see [endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/sns.html) in the *General Reference*.
|
|
6
|
+
The structure of ``AUTHPARAMS`` depends on the .signature of the API request. For more information, see [Examples of the complete Signature Version 4 signing process](https://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html) in the *General Reference*.
|
|
5
7
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html}
|
|
6
8
|
*/
|
|
7
9
|
export type SNSTopicProperties = {
|
|
8
10
|
/**
|
|
9
|
-
* The archive policy determines the number of days
|
|
11
|
+
* The archive policy determines the number of days SNS retains messages. You can set a retention period from 1 to 365 days.
|
|
10
12
|
*/
|
|
11
13
|
ArchivePolicy?: Record<string, any>;
|
|
12
14
|
/**
|
|
13
|
-
* Enables content-based deduplication for FIFO topics.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
(Optional) To override the generated value, you can specify a value for the the MessageDeduplicationId parameter for the Publish action.
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
* Enables content-based deduplication for FIFO topics.
|
|
16
|
+
+ By default, ``ContentBasedDeduplication`` is set to ``false``. If you create a FIFO topic and this attribute is ``false``, you must specify a value for the ``MessageDeduplicationId`` parameter for the [Publish](https://docs.aws.amazon.com/sns/latest/api/API_Publish.html) action.
|
|
17
|
+
+ When you set ``ContentBasedDeduplication`` to ``true``, SNS uses a SHA-256 hash to generate the ``MessageDeduplicationId`` using the body of the message (but not the attributes of the message).
|
|
18
|
+
(Optional) To override the generated value, you can specify a value for the the ``MessageDeduplicationId`` parameter for the ``Publish`` action.
|
|
20
19
|
*/
|
|
21
20
|
ContentBasedDeduplication?: boolean;
|
|
22
21
|
/**
|
|
23
22
|
* The body of the policy document you want to use for this topic.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
The policy must be in JSON string format.
|
|
28
|
-
|
|
29
|
-
Length Constraints: Maximum length of 30720
|
|
23
|
+
You can only add one policy per topic.
|
|
24
|
+
The policy must be in JSON string format.
|
|
25
|
+
Length Constraints: Maximum length of 30,720.
|
|
30
26
|
*/
|
|
31
27
|
DataProtectionPolicy?: Record<string, any>;
|
|
32
|
-
/**
|
|
33
|
-
* Delivery status logging configuration for supported protocols for an Amazon SNS topic.
|
|
34
|
-
*/
|
|
35
28
|
DeliveryStatusLogging?: LoggingConfig[];
|
|
36
29
|
/**
|
|
37
|
-
* The display name to use for an
|
|
30
|
+
* The display name to use for an SNS topic with SMS subscriptions. The display name must be maximum 100 characters long, including hyphens (-), underscores (_), spaces, and tabs.
|
|
38
31
|
*/
|
|
39
32
|
DisplayName?: string;
|
|
40
33
|
/**
|
|
@@ -42,28 +35,32 @@ export type SNSTopicProperties = {
|
|
|
42
35
|
*/
|
|
43
36
|
FifoTopic?: boolean;
|
|
44
37
|
/**
|
|
45
|
-
* The ID of an AWS
|
|
46
|
-
|
|
47
|
-
This property applies only to [server-side-encryption](https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html).
|
|
38
|
+
* The ID of an AWS managed customer master key (CMK) for SNS or a custom CMK. For more information, see [Key terms](https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms). For more examples, see ``KeyId`` in the *API Reference*.
|
|
39
|
+
This property applies only to [server-side-encryption](https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html).
|
|
48
40
|
*/
|
|
49
41
|
KmsMasterKeyId?: string;
|
|
50
42
|
/**
|
|
51
|
-
*
|
|
43
|
+
* The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS. By default, ``SignatureVersion`` is set to ``1``.
|
|
52
44
|
*/
|
|
53
45
|
SignatureVersion?: string;
|
|
54
46
|
/**
|
|
55
|
-
|
|
56
|
-
|
|
47
|
+
* The SNS subscriptions (endpoints) for this topic.
|
|
48
|
+
If you specify the ``Subscription`` property in the ``AWS::SNS::Topic`` resource and it creates an associated subscription resource, the associated subscription is not deleted when the ``AWS::SNS::Topic`` resource is deleted.
|
|
49
|
+
*/
|
|
57
50
|
Subscription?: Subscription[];
|
|
51
|
+
/**
|
|
52
|
+
* The list of tags to add to a new topic.
|
|
53
|
+
To be able to tag a topic on creation, you must have the ``sns:CreateTopic`` and ``sns:TagResource`` permissions.
|
|
54
|
+
*/
|
|
58
55
|
Tags?: Tag[];
|
|
59
56
|
/**
|
|
60
|
-
* The name of the topic you want to create. Topic names must include only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long. FIFO topic names must end with
|
|
61
|
-
|
|
62
|
-
|
|
57
|
+
* The name of the topic you want to create. Topic names must include only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long. FIFO topic names must end with ``.fifo``.
|
|
58
|
+
If you don't specify a name, CFN generates a unique physical ID and uses that ID for the topic name. For more information, see [Name type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).
|
|
59
|
+
If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
|
|
63
60
|
*/
|
|
64
61
|
TopicName?: string;
|
|
65
62
|
/**
|
|
66
|
-
* Tracing mode of an
|
|
63
|
+
* Tracing mode of an SNS topic. By default ``TracingConfig`` is set to ``PassThrough``, and the topic passes through the tracing header it receives from an SNS publisher to its subscriptions. If set to ``Active``, SNS will vend X-Ray segment data to topic owner account if the sampled flag in the tracing header is true.
|
|
67
64
|
*/
|
|
68
65
|
TracingConfig?: string;
|
|
69
66
|
};
|
|
@@ -79,47 +76,46 @@ export type SNSTopicAttributes = {
|
|
|
79
76
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic-loggingconfig.html}
|
|
80
77
|
*/
|
|
81
78
|
export type LoggingConfig = {
|
|
82
|
-
/**
|
|
83
|
-
* The IAM role ARN to be used when logging failed message deliveries in Amazon CloudWatch
|
|
84
|
-
*/
|
|
85
79
|
FailureFeedbackRoleArn?: string;
|
|
86
|
-
/**
|
|
87
|
-
* Indicates one of the supported protocols for the SNS topic
|
|
88
|
-
*/
|
|
89
80
|
Protocol: "http/s" | "sqs" | "lambda" | "firehose" | "application";
|
|
90
|
-
/**
|
|
91
|
-
* The IAM role ARN to be used when logging successful message deliveries in Amazon CloudWatch
|
|
92
|
-
*/
|
|
93
81
|
SuccessFeedbackRoleArn?: string;
|
|
94
|
-
/**
|
|
95
|
-
* The percentage of successful message deliveries to be logged in Amazon CloudWatch. Valid percentage values range from 0 to 100
|
|
96
|
-
*/
|
|
97
82
|
SuccessFeedbackSampleRate?: string;
|
|
98
83
|
};
|
|
99
84
|
/**
|
|
100
85
|
* Type definition for `AWS::SNS::Topic.Subscription`.
|
|
86
|
+
* ``Subscription`` is an embedded property that describes the subscription endpoints of an SNS topic.
|
|
87
|
+
For full control over subscription behavior (for example, delivery policy, filtering, raw message delivery, and cross-region subscriptions), use the [AWS::SNS::Subscription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html) resource.
|
|
101
88
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic-subscription.html}
|
|
102
89
|
*/
|
|
103
90
|
export type Subscription = {
|
|
91
|
+
/**
|
|
92
|
+
* The endpoint that receives notifications from the SNS topic. The endpoint value depends on the protocol that you specify. For more information, see the ``Endpoint`` parameter of the ``Subscribe`` action in the *API Reference*.
|
|
93
|
+
*/
|
|
104
94
|
Endpoint: string;
|
|
95
|
+
/**
|
|
96
|
+
* The subscription's protocol. For more information, see the ``Protocol`` parameter of the ``Subscribe`` action in the *API Reference*.
|
|
97
|
+
*/
|
|
105
98
|
Protocol: string;
|
|
106
99
|
};
|
|
107
100
|
/**
|
|
108
101
|
* Type definition for `AWS::SNS::Topic.Tag`.
|
|
102
|
+
* The list of tags to be added to the specified topic.
|
|
109
103
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic-tag.html}
|
|
110
104
|
*/
|
|
111
105
|
export type Tag = {
|
|
112
106
|
/**
|
|
113
|
-
* The key
|
|
107
|
+
* The required key portion of the tag.
|
|
114
108
|
*/
|
|
115
109
|
Key: string;
|
|
116
110
|
/**
|
|
117
|
-
* The value
|
|
111
|
+
* The optional value portion of the tag.
|
|
118
112
|
*/
|
|
119
113
|
Value: string;
|
|
120
114
|
};
|
|
121
115
|
/**
|
|
122
|
-
*
|
|
116
|
+
* The ``AWS::SNS::Topic`` resource creates a topic to which notifications can be published.
|
|
117
|
+
One account can create a maximum of 100,000 standard topics and 1,000 FIFO topics. For more information, see [endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/sns.html) in the *General Reference*.
|
|
118
|
+
The structure of ``AUTHPARAMS`` depends on the .signature of the API request. For more information, see [Examples of the complete Signature Version 4 signing process](https://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html) in the *General Reference*.
|
|
123
119
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html}
|
|
124
120
|
*/
|
|
125
121
|
export declare class SNSTopic extends $Resource<"AWS::SNS::Topic", SNSTopicProperties, SNSTopicAttributes> {
|
package/lib/AWS-SNS-Topic.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* The ``AWS::SNS::Topic`` resource creates a topic to which notifications can be published.
|
|
4
|
+
One account can create a maximum of 100,000 standard topics and 1,000 FIFO topics. For more information, see [endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/sns.html) in the *General Reference*.
|
|
5
|
+
The structure of ``AUTHPARAMS`` depends on the .signature of the API request. For more information, see [Examples of the complete Signature Version 4 signing process](https://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html) in the *General Reference*.
|
|
4
6
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html}
|
|
5
7
|
*/
|
|
6
8
|
export class SNSTopic extends $Resource {
|
|
@@ -1,7 +1,7 @@
|
|
|
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
|
-
*
|
|
4
|
+
* The ``AWS::SNS::TopicPolicy`` resource associates SNS topics with a policy. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sns-policy) in the *User Guide*.
|
|
5
5
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html}
|
|
6
6
|
*/
|
|
7
7
|
export type SNSTopicPolicyProperties = {
|
|
@@ -10,7 +10,7 @@ export type SNSTopicPolicyProperties = {
|
|
|
10
10
|
*/
|
|
11
11
|
PolicyDocument: Record<string, any> | string;
|
|
12
12
|
/**
|
|
13
|
-
* The Amazon Resource Names (ARN) of the topics to which you want to add the policy. You can use the
|
|
13
|
+
* The Amazon Resource Names (ARN) of the topics to which you want to add the policy. You can use the ``Ref`` function to specify an ``AWS::SNS::Topic`` resource.
|
|
14
14
|
*/
|
|
15
15
|
Topics: string[];
|
|
16
16
|
};
|
|
@@ -19,13 +19,10 @@ export type SNSTopicPolicyProperties = {
|
|
|
19
19
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html#aws-resource-sns-topicpolicy-return-values}
|
|
20
20
|
*/
|
|
21
21
|
export type SNSTopicPolicyAttributes = {
|
|
22
|
-
/**
|
|
23
|
-
* The provider-assigned unique ID for this managed resource.
|
|
24
|
-
*/
|
|
25
22
|
Id: string;
|
|
26
23
|
};
|
|
27
24
|
/**
|
|
28
|
-
*
|
|
25
|
+
* The ``AWS::SNS::TopicPolicy`` resource associates SNS topics with a policy. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sns-policy) in the *User Guide*.
|
|
29
26
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html}
|
|
30
27
|
*/
|
|
31
28
|
export declare class SNSTopicPolicy extends $Resource<"AWS::SNS::TopicPolicy", SNSTopicPolicyProperties, SNSTopicPolicyAttributes> {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* The ``AWS::SNS::TopicPolicy`` resource associates SNS topics with a policy. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sns-policy) in the *User Guide*.
|
|
4
4
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html}
|
|
5
5
|
*/
|
|
6
6
|
export class SNSTopicPolicy extends $Resource {
|
package/lib/AWS-SQS-Queue.d.ts
CHANGED
|
@@ -1,73 +1,105 @@
|
|
|
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
|
-
*
|
|
4
|
+
* The ``AWS::SQS::Queue`` resource creates an SQS standard or FIFO queue.
|
|
5
|
+
Keep the following caveats in mind:
|
|
6
|
+
+ If you don't specify the ``FifoQueue`` property, SQS creates a standard queue.
|
|
7
|
+
You can't change the queue type after you create it and you can't convert an existing standard queue into a FIFO queue. You must either create a new FIFO queue for your application or delete your existing standard queue and recreate it as a FIFO queue. For more information, see [Moving from a standard queue to a FIFO queue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-moving.html) in the *Developer Guide*.
|
|
8
|
+
+ If you don't provide a value for a property, the queue is created with the default value for the property.
|
|
9
|
+
+ If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.
|
|
10
|
+
+ To successfully create a new queue, you must provide a queue name that adheres to the [limits related to queues](https://docs.aw
|
|
5
11
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queue.html}
|
|
6
12
|
*/
|
|
7
13
|
export type SQSQueueProperties = {
|
|
8
14
|
/**
|
|
9
|
-
* For first-in-first-out (FIFO) queues, specifies whether to enable content-based deduplication. During the deduplication interval,
|
|
15
|
+
* For first-in-first-out (FIFO) queues, specifies whether to enable content-based deduplication. During the deduplication interval, SQS treats messages that are sent with identical content as duplicates and delivers only one copy of the message. For more information, see the ``ContentBasedDeduplication`` attribute for the ``CreateQueue`` action in the *API Reference*.
|
|
10
16
|
*/
|
|
11
17
|
ContentBasedDeduplication?: boolean;
|
|
12
18
|
/**
|
|
13
|
-
|
|
14
|
-
|
|
19
|
+
* For high throughput for FIFO queues, specifies whether message deduplication occurs at the message group or queue level. Valid values are ``messageGroup`` and ``queue``.
|
|
20
|
+
To enable high throughput for a FIFO queue, set this attribute to ``messageGroup`` *and* set the ``FifoThroughputLimit`` attribute to ``perMessageGroupId``. If you set these attributes to anything other than these values, normal throughput is in effect and deduplication occurs as specified. For more information, see [High throughput for FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html) and [Quotas related to messages](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html) in the *Developer Guide*.
|
|
21
|
+
*/
|
|
15
22
|
DeduplicationScope?: string;
|
|
16
23
|
/**
|
|
17
|
-
* The time in seconds for which the delivery of all messages in the queue is delayed. You can specify an integer value of 0 to 900 (15 minutes). The default value is 0
|
|
24
|
+
* The time in seconds for which the delivery of all messages in the queue is delayed. You can specify an integer value of ``0`` to ``900`` (15 minutes). The default value is ``0``.
|
|
18
25
|
*/
|
|
19
26
|
DelaySeconds?: number;
|
|
20
27
|
/**
|
|
21
|
-
* If set to true, creates a FIFO queue. If you don't specify this property,
|
|
28
|
+
* If set to true, creates a FIFO queue. If you don't specify this property, SQS creates a standard queue. For more information, see [FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html) in the *Developer Guide*.
|
|
22
29
|
*/
|
|
23
30
|
FifoQueue?: boolean;
|
|
24
31
|
/**
|
|
25
|
-
|
|
26
|
-
|
|
32
|
+
* For high throughput for FIFO queues, specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are ``perQueue`` and ``perMessageGroupId``.
|
|
33
|
+
To enable high throughput for a FIFO queue, set this attribute to ``perMessageGroupId`` *and* set the ``DeduplicationScope`` attribute to ``messageGroup``. If you set these attributes to anything other than these values, normal throughput is in effect and deduplication occurs as specified. For more information, see [High throughput for FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html) and [Quotas related to messages](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html) in the *Developer Guide*.
|
|
34
|
+
*/
|
|
27
35
|
FifoThroughputLimit?: string;
|
|
28
36
|
/**
|
|
29
|
-
|
|
30
|
-
|
|
37
|
+
* The length of time in seconds for which SQS can reuse a data key to encrypt or decrypt messages before calling KMS again. The value must be an integer between 60 (1 minute) and 86,400 (24 hours). The default is 300 (5 minutes).
|
|
38
|
+
A shorter time period provides better security, but results in more calls to KMS, which might incur charges after Free Tier. For more information, see [Encryption at rest](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work) in the *Developer Guide*.
|
|
39
|
+
*/
|
|
31
40
|
KmsDataKeyReusePeriodSeconds?: number;
|
|
32
41
|
/**
|
|
33
|
-
|
|
34
|
-
|
|
42
|
+
* The ID of an AWS Key Management Service (KMS) for SQS, or a custom KMS. To use the AWS managed KMS for SQS, specify a (default) alias ARN, alias name (e.g. ``alias/aws/sqs``), key ARN, or key ID. For more information, see the following:
|
|
43
|
+
+ [Encryption at rest](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html) in the *Developer Guide*
|
|
44
|
+
+ [CreateQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html) in the *API Reference*
|
|
45
|
+
+ [Request Parameters](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters) in the *Key Management Service API Reference*
|
|
46
|
+
+ The Key Management Service (KMS) section of the [Best Practices](https://docs.aws.amazon.com/https://d0.awsstatic.com/whitepapers/aws-kms-best-practices.pdf) whitepaper
|
|
47
|
+
*/
|
|
35
48
|
KmsMasterKeyId?: string;
|
|
36
49
|
/**
|
|
37
|
-
* The limit of how many bytes that a message can contain before
|
|
50
|
+
* The limit of how many bytes that a message can contain before SQS rejects it. You can specify an integer value from ``1,024`` bytes (1 KiB) to ``262,144`` bytes (256 KiB). The default value is ``262,144`` (256 KiB).
|
|
38
51
|
*/
|
|
39
52
|
MaximumMessageSize?: number;
|
|
40
53
|
/**
|
|
41
|
-
* The number of seconds that
|
|
54
|
+
* The number of seconds that SQS retains a message. You can specify an integer value from ``60`` seconds (1 minute) to ``1,209,600`` seconds (14 days). The default value is ``345,600`` seconds (4 days).
|
|
42
55
|
*/
|
|
43
56
|
MessageRetentionPeriod?: number;
|
|
44
57
|
/**
|
|
45
|
-
|
|
46
|
-
|
|
58
|
+
* A name for the queue. To create a FIFO queue, the name of your FIFO queue must end with the ``.fifo`` suffix. For more information, see [FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html) in the *Developer Guide*.
|
|
59
|
+
If you don't specify a name, CFN generates a unique physical ID and uses that ID for the queue name. For more information, see [Name type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html) in the *User Guide*.
|
|
60
|
+
If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
|
|
61
|
+
*/
|
|
47
62
|
QueueName?: string;
|
|
48
63
|
/**
|
|
49
|
-
* Specifies the duration, in seconds, that the ReceiveMessage action call waits until a message is in the queue in order to include it in the response, rather than returning an empty response if a message isn't yet available. You can specify an integer from 1 to 20. Short polling is used as the default or when you specify 0 for this property.
|
|
64
|
+
* Specifies the duration, in seconds, that the ReceiveMessage action call waits until a message is in the queue in order to include it in the response, rather than returning an empty response if a message isn't yet available. You can specify an integer from 1 to 20. Short polling is used as the default or when you specify 0 for this property. For more information, see [Consuming messages using long polling](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-short-and-long-polling.html#sqs-long-polling) in the *Developer Guide*.
|
|
50
65
|
*/
|
|
51
66
|
ReceiveMessageWaitTimeSeconds?: number;
|
|
52
67
|
/**
|
|
53
|
-
|
|
54
|
-
|
|
68
|
+
* The string that includes the parameters for the permissions for the dead-letter queue redrive permission and which source queues can specify dead-letter queues as a JSON object. The parameters are as follows:
|
|
69
|
+
+ ``redrivePermission``: The permission type that defines which source queues can specify the current queue as the dead-letter queue. Valid values are:
|
|
70
|
+
+ ``allowAll``: (Default) Any source queues in this AWS account in the same Region can specify this queue as the dead-letter queue.
|
|
71
|
+
+ ``denyAll``: No source queues can specify this queue as the dead-letter queue.
|
|
72
|
+
+ ``byQueue``: Only queues specified by the ``sourceQueueArns`` parameter can specify this queue as the dead-letter queue.
|
|
73
|
+
|
|
74
|
+
+ ``sourceQueueArns``: The Amazon Resource Names (ARN)s of the source queues that can specify this queue as the dead-letter queue and redrive messages. You can specify this parameter only when the ``redrivePermission`` parameter is set to ``byQueue``. You can specify up to 10 source q
|
|
75
|
+
*/
|
|
55
76
|
RedriveAllowPolicy?: Record<string, any> | string;
|
|
56
77
|
/**
|
|
57
|
-
|
|
58
|
-
|
|
78
|
+
* The string that includes the parameters for the dead-letter queue functionality of the source queue as a JSON object. The parameters are as follows:
|
|
79
|
+
+ ``deadLetterTargetArn``: The Amazon Resource Name (ARN) of the dead-letter queue to which SQS moves messages after the value of ``maxReceiveCount`` is exceeded.
|
|
80
|
+
+ ``maxReceiveCount``: The number of times a message is delivered to the source queue before being moved to the dead-letter queue. When the ``ReceiveCount`` for a message exceeds the ``maxReceiveCount`` for a queue, SQS moves the message to the dead-letter-queue.
|
|
81
|
+
|
|
82
|
+
The dead-letter queue of a FIFO queue must also be a FIFO queue. Similarly, the dead-letter queue of a standard queue must also be a standard queue.
|
|
83
|
+
*JSON*
|
|
84
|
+
``{ "deadLetterTargetArn" : String, "maxReceiveCount" : Integer }``
|
|
85
|
+
*YAML*
|
|
86
|
+
``deadLetterTargetArn : String``
|
|
87
|
+
``maxReceiveCount : Integer``
|
|
88
|
+
*/
|
|
59
89
|
RedrivePolicy?: Record<string, any> | string;
|
|
60
90
|
/**
|
|
61
|
-
* Enables server-side queue encryption using SQS owned encryption keys. Only one server-side encryption option is supported per queue (
|
|
91
|
+
* Enables server-side queue encryption using SQS owned encryption keys. Only one server-side encryption option is supported per queue (for example, [SSE-KMS](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html) or [SSE-SQS](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html)). When ``SqsManagedSseEnabled`` is not defined, ``SSE-SQS`` encryption is enabled by default.
|
|
62
92
|
*/
|
|
63
93
|
SqsManagedSseEnabled?: boolean;
|
|
64
94
|
/**
|
|
65
|
-
* The tags that you attach to this queue.
|
|
95
|
+
* The tags that you attach to this queue. For more information, see [Resource tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *User Guide*.
|
|
66
96
|
*/
|
|
67
97
|
Tags?: Tag[];
|
|
68
98
|
/**
|
|
69
|
-
|
|
70
|
-
|
|
99
|
+
* The length of time during which a message will be unavailable after a message is delivered from the queue. This blocks other components from receiving the same message and gives the initial component time to process and delete the message from the queue.
|
|
100
|
+
Values must be from 0 to 43,200 seconds (12 hours). If you don't specify a value, AWS CloudFormation uses the default value of 30 seconds.
|
|
101
|
+
For more information about SQS queue visibility timeouts, see [Visibility timeout](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html) in the *Developer Guide*.
|
|
102
|
+
*/
|
|
71
103
|
VisibilityTimeout?: number;
|
|
72
104
|
};
|
|
73
105
|
/**
|
|
@@ -75,13 +107,7 @@ export type SQSQueueProperties = {
|
|
|
75
107
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queue.html#aws-resource-sqs-queue-return-values}
|
|
76
108
|
*/
|
|
77
109
|
export type SQSQueueAttributes = {
|
|
78
|
-
/**
|
|
79
|
-
* Amazon Resource Name (ARN) of the queue.
|
|
80
|
-
*/
|
|
81
110
|
Arn: string;
|
|
82
|
-
/**
|
|
83
|
-
* URL of the source queue.
|
|
84
|
-
*/
|
|
85
111
|
QueueUrl: string;
|
|
86
112
|
};
|
|
87
113
|
/**
|
|
@@ -99,7 +125,13 @@ export type Tag = {
|
|
|
99
125
|
Value: string;
|
|
100
126
|
};
|
|
101
127
|
/**
|
|
102
|
-
*
|
|
128
|
+
* The ``AWS::SQS::Queue`` resource creates an SQS standard or FIFO queue.
|
|
129
|
+
Keep the following caveats in mind:
|
|
130
|
+
+ If you don't specify the ``FifoQueue`` property, SQS creates a standard queue.
|
|
131
|
+
You can't change the queue type after you create it and you can't convert an existing standard queue into a FIFO queue. You must either create a new FIFO queue for your application or delete your existing standard queue and recreate it as a FIFO queue. For more information, see [Moving from a standard queue to a FIFO queue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-moving.html) in the *Developer Guide*.
|
|
132
|
+
+ If you don't provide a value for a property, the queue is created with the default value for the property.
|
|
133
|
+
+ If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.
|
|
134
|
+
+ To successfully create a new queue, you must provide a queue name that adheres to the [limits related to queues](https://docs.aw
|
|
103
135
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queue.html}
|
|
104
136
|
*/
|
|
105
137
|
export declare class SQSQueue extends $Resource<"AWS::SQS::Queue", SQSQueueProperties, SQSQueueAttributes> {
|
package/lib/AWS-SQS-Queue.js
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* The ``AWS::SQS::Queue`` resource creates an SQS standard or FIFO queue.
|
|
4
|
+
Keep the following caveats in mind:
|
|
5
|
+
+ If you don't specify the ``FifoQueue`` property, SQS creates a standard queue.
|
|
6
|
+
You can't change the queue type after you create it and you can't convert an existing standard queue into a FIFO queue. You must either create a new FIFO queue for your application or delete your existing standard queue and recreate it as a FIFO queue. For more information, see [Moving from a standard queue to a FIFO queue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-moving.html) in the *Developer Guide*.
|
|
7
|
+
+ If you don't provide a value for a property, the queue is created with the default value for the property.
|
|
8
|
+
+ If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.
|
|
9
|
+
+ To successfully create a new queue, you must provide a queue name that adheres to the [limits related to queues](https://docs.aw
|
|
4
10
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queue.html}
|
|
5
11
|
*/
|
|
6
12
|
export class SQSQueue extends $Resource {
|
|
@@ -9,7 +9,7 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
9
9
|
*/
|
|
10
10
|
export type SSMParameterProperties = {
|
|
11
11
|
/**
|
|
12
|
-
* A regular expression used to validate the parameter value. For example, for String types with values restricted to numbers, you can specify the following: ``AllowedPattern=^\d+$``
|
|
12
|
+
* A regular expression used to validate the parameter value. For example, for ``String`` types with values restricted to numbers, you can specify the following: ``AllowedPattern=^\d+$``
|
|
13
13
|
*/
|
|
14
14
|
AllowedPattern?: string;
|
|
15
15
|
/**
|
|
@@ -6,7 +6,8 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
6
6
|
For RDS master user credentials, see [AWS::RDS::DBCluster MasterUserSecret](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-masterusersecret.html).
|
|
7
7
|
To retrieve a secret in a CFNshort template, use a *dynamic reference*. For more information, see [Retrieve a secret in an resource](https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html).
|
|
8
8
|
A common scenario is to first create a secret with ``GenerateSecretString``, which generates a password, and then use a dynamic reference to retrieve the username and password from the secret to use as credentials for a new database. See the example *Creating a Redshift cluster and a secret for the admin credentials*.
|
|
9
|
-
For information about creating a secret in the
|
|
9
|
+
For information about creating a secret in the console, see [Create a secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html). For information about creating a secret using the CLI or SDK, see [CreateSecret](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html).
|
|
10
|
+
For information about retrieving a secret in code, see [Retrieve secrets from Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html).
|
|
10
11
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html}
|
|
11
12
|
*/
|
|
12
13
|
export type SecretsManagerSecretProperties = {
|
|
@@ -45,7 +46,15 @@ export type SecretsManagerSecretProperties = {
|
|
|
45
46
|
``[{"Key":"CostCenter","Value":"12345"},{"Key":"environment","Value":"production"}]``
|
|
46
47
|
Secrets Manager tag key names are case sensitive. A tag with the key "ABC" is a different tag from one with key "abc".
|
|
47
48
|
Stack-level tags, tags you apply to the CloudFormation stack, are also attached to the secret.
|
|
48
|
-
If you check tags in permissions policies as part of your security strategy, then adding or removing a tag can change permissions. If the completion of this operation would result in you losing your permissions for this secret, then Secrets Manager blocks the operation and returns an ``Access Denied`` error. For more information, see [Control access to secrets using tags](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples.html#tag-secrets-abac) and [Limit access to identities with tags that match secrets' tags](https://docs.aws.
|
|
49
|
+
If you check tags in permissions policies as part of your security strategy, then adding or removing a tag can change permissions. If the completion of this operation would result in you losing your permissions for this secret, then Secrets Manager blocks the operation and returns an ``Access Denied`` error. For more information, see [Control access to secrets using tags](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples.html#tag-secrets-abac) and [Limit access to identities with tags that match secrets' tags](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples.html#auth-and-access_tags2).
|
|
50
|
+
For information about how to format a JSON parameter for the various command line tool environments, see [Using JSON for Parameters](https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#cli-using-param-json). If your command-line tool or SDK requires quotation marks around the parameter, you should use single quotes to avoid confusion with the double quotes required in the JSON text.
|
|
51
|
+
The following restrictions apply to tags:
|
|
52
|
+
+ Maximum number of tags per secret: 50
|
|
53
|
+
+ Maximum key length: 127 Unicode characters in UTF-8
|
|
54
|
+
+ Maximum value length: 255 Unicode characters in UTF-8
|
|
55
|
+
+ Tag keys and values are case sensitive.
|
|
56
|
+
+ Do not use the ``aws:`` prefix in your tag names or values because AWS reserves it for AWS use. You can't edit or delete tag names or values with this prefix. Tags with this prefix do not count against your tags per secret limit.
|
|
57
|
+
+ If you use your tagging schema across multiple services and resources, other services might have restrictions on allowed characters. Generally allowed characters: letters, spaces, and numbers representable in UTF-8, plus the following special characters: + - = . _ : / @.
|
|
49
58
|
*/
|
|
50
59
|
Tags?: Tag[];
|
|
51
60
|
};
|
|
@@ -140,7 +149,8 @@ export type Tag = {
|
|
|
140
149
|
For RDS master user credentials, see [AWS::RDS::DBCluster MasterUserSecret](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-masterusersecret.html).
|
|
141
150
|
To retrieve a secret in a CFNshort template, use a *dynamic reference*. For more information, see [Retrieve a secret in an resource](https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html).
|
|
142
151
|
A common scenario is to first create a secret with ``GenerateSecretString``, which generates a password, and then use a dynamic reference to retrieve the username and password from the secret to use as credentials for a new database. See the example *Creating a Redshift cluster and a secret for the admin credentials*.
|
|
143
|
-
For information about creating a secret in the
|
|
152
|
+
For information about creating a secret in the console, see [Create a secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html). For information about creating a secret using the CLI or SDK, see [CreateSecret](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html).
|
|
153
|
+
For information about retrieving a secret in code, see [Retrieve secrets from Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html).
|
|
144
154
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html}
|
|
145
155
|
*/
|
|
146
156
|
export declare class SecretsManagerSecret extends $Resource<"AWS::SecretsManager::Secret", SecretsManagerSecretProperties, SecretsManagerSecretAttributes> {
|
|
@@ -5,7 +5,8 @@ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/re
|
|
|
5
5
|
For RDS master user credentials, see [AWS::RDS::DBCluster MasterUserSecret](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-masterusersecret.html).
|
|
6
6
|
To retrieve a secret in a CFNshort template, use a *dynamic reference*. For more information, see [Retrieve a secret in an resource](https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html).
|
|
7
7
|
A common scenario is to first create a secret with ``GenerateSecretString``, which generates a password, and then use a dynamic reference to retrieve the username and password from the secret to use as credentials for a new database. See the example *Creating a Redshift cluster and a secret for the admin credentials*.
|
|
8
|
-
For information about creating a secret in the
|
|
8
|
+
For information about creating a secret in the console, see [Create a secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html). For information about creating a secret using the CLI or SDK, see [CreateSecret](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html).
|
|
9
|
+
For information about retrieving a secret in code, see [Retrieve secrets from Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html).
|
|
9
10
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html}
|
|
10
11
|
*/
|
|
11
12
|
export class SecretsManagerSecret extends $Resource {
|
|
@@ -212,7 +212,7 @@ export type CookieMatchPattern = {
|
|
|
212
212
|
};
|
|
213
213
|
/**
|
|
214
214
|
* Type definition for `AWS::WAFv2::RuleGroup.Cookies`.
|
|
215
|
-
* Includes
|
|
215
|
+
* Includes cookies of a web request.
|
|
216
216
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-cookies.html}
|
|
217
217
|
*/
|
|
218
218
|
export type Cookies = {
|
|
@@ -332,13 +332,17 @@ export type FieldToMatch = {
|
|
|
332
332
|
*/
|
|
333
333
|
Body?: Body;
|
|
334
334
|
/**
|
|
335
|
-
* Includes
|
|
335
|
+
* Includes cookies of a web request.
|
|
336
336
|
*/
|
|
337
337
|
Cookies?: Cookies;
|
|
338
338
|
/**
|
|
339
339
|
* Includes headers of a web request.
|
|
340
340
|
*/
|
|
341
341
|
Headers?: Headers;
|
|
342
|
+
/**
|
|
343
|
+
* Includes the JA3 fingerprint of a web request.
|
|
344
|
+
*/
|
|
345
|
+
JA3Fingerprint?: JA3Fingerprint;
|
|
342
346
|
/**
|
|
343
347
|
* Inspect the request body as JSON. The request body immediately follows the request headers.
|
|
344
348
|
*/
|
|
@@ -460,6 +464,14 @@ export type IPSetReferenceStatement = {
|
|
|
460
464
|
Arn: string;
|
|
461
465
|
IPSetForwardedIPConfig?: IPSetForwardedIPConfiguration;
|
|
462
466
|
};
|
|
467
|
+
/**
|
|
468
|
+
* Type definition for `AWS::WAFv2::RuleGroup.JA3Fingerprint`.
|
|
469
|
+
* Includes the JA3 fingerprint of a web request.
|
|
470
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ja3fingerprint.html}
|
|
471
|
+
*/
|
|
472
|
+
export type JA3Fingerprint = {
|
|
473
|
+
FallbackBehavior: "MATCH" | "NO_MATCH";
|
|
474
|
+
};
|
|
463
475
|
/**
|
|
464
476
|
* Type definition for `AWS::WAFv2::RuleGroup.JsonBody`.
|
|
465
477
|
* Inspect the request body as JSON. The request body immediately follows the request headers.
|
|
@@ -266,7 +266,7 @@ export type CookieMatchPattern = {
|
|
|
266
266
|
};
|
|
267
267
|
/**
|
|
268
268
|
* Type definition for `AWS::WAFv2::WebACL.Cookies`.
|
|
269
|
-
* Includes
|
|
269
|
+
* Includes cookies of a web request.
|
|
270
270
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-cookies.html}
|
|
271
271
|
*/
|
|
272
272
|
export type Cookies = {
|
|
@@ -425,13 +425,17 @@ export type FieldToMatch = {
|
|
|
425
425
|
*/
|
|
426
426
|
Body?: Body;
|
|
427
427
|
/**
|
|
428
|
-
* Includes
|
|
428
|
+
* Includes cookies of a web request.
|
|
429
429
|
*/
|
|
430
430
|
Cookies?: Cookies;
|
|
431
431
|
/**
|
|
432
432
|
* Includes headers of a web request.
|
|
433
433
|
*/
|
|
434
434
|
Headers?: Headers;
|
|
435
|
+
/**
|
|
436
|
+
* Includes the JA3 fingerprint of a web request.
|
|
437
|
+
*/
|
|
438
|
+
JA3Fingerprint?: JA3Fingerprint;
|
|
435
439
|
/**
|
|
436
440
|
* Inspect the request body as JSON. The request body immediately follows the request headers.
|
|
437
441
|
*/
|
|
@@ -553,6 +557,14 @@ export type IPSetReferenceStatement = {
|
|
|
553
557
|
Arn: string;
|
|
554
558
|
IPSetForwardedIPConfig?: IPSetForwardedIPConfiguration;
|
|
555
559
|
};
|
|
560
|
+
/**
|
|
561
|
+
* Type definition for `AWS::WAFv2::WebACL.JA3Fingerprint`.
|
|
562
|
+
* Includes the JA3 fingerprint of a web request.
|
|
563
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ja3fingerprint.html}
|
|
564
|
+
*/
|
|
565
|
+
export type JA3Fingerprint = {
|
|
566
|
+
FallbackBehavior: "MATCH" | "NO_MATCH";
|
|
567
|
+
};
|
|
556
568
|
/**
|
|
557
569
|
* Type definition for `AWS::WAFv2::WebACL.JsonBody`.
|
|
558
570
|
* Inspect the request body as JSON. The request body immediately follows the request headers.
|