@awboost/cfn-resource-types 0.1.179 → 0.1.181
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-AppSync-Api.d.ts +206 -0
- package/lib/AWS-AppSync-Api.js +13 -0
- package/lib/AWS-AppSync-ChannelNamespace.d.ts +100 -0
- package/lib/AWS-AppSync-ChannelNamespace.js +13 -0
- package/lib/AWS-Events-ApiDestination.d.ts +4 -0
- package/lib/AWS-Events-Archive.d.ts +4 -0
- package/lib/AWS-Events-Connection.d.ts +22 -0
- package/lib/AWS-MWAA-Environment.d.ts +2 -2
- package/lib/AWS-OpenSearchService-Domain.d.ts +52 -0
- package/lib/AWS-SageMaker-StudioLifecycleConfig.d.ts +2 -2
- package/lib/AWS-SecretsManager-RotationSchedule.d.ts +60 -0
- package/lib/AWS-WAFv2-RuleGroup.d.ts +1 -1
- package/lib/AWS-WAFv2-WebACL.d.ts +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,206 @@
|
|
|
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
|
+
* Resource type definition for `AWS::AppSync::Api`.
|
|
5
|
+
* Resource schema for AppSync Api
|
|
6
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html}
|
|
7
|
+
*/
|
|
8
|
+
export type AppSyncApiProperties = {
|
|
9
|
+
/**
|
|
10
|
+
* The configuration for an Event Api
|
|
11
|
+
*/
|
|
12
|
+
EventConfig?: EventConfig;
|
|
13
|
+
/**
|
|
14
|
+
* The name of the AppSync API.
|
|
15
|
+
* @minLength `1`
|
|
16
|
+
* @maxLength `50`
|
|
17
|
+
* @pattern `[A-Za-z0-9_\-\ ]+`
|
|
18
|
+
*/
|
|
19
|
+
Name: string;
|
|
20
|
+
/**
|
|
21
|
+
* The owner contact information for an API resource.
|
|
22
|
+
* @minLength `1`
|
|
23
|
+
* @maxLength `250`
|
|
24
|
+
* @pattern `[A-Za-z0-9_\-\ \.]+`
|
|
25
|
+
*/
|
|
26
|
+
OwnerContact?: string;
|
|
27
|
+
/**
|
|
28
|
+
* An arbitrary set of tags (key-value pairs) for this AppSync API.
|
|
29
|
+
*/
|
|
30
|
+
Tags?: Tag[];
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Attribute type definition for `AWS::AppSync::Api`.
|
|
34
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html#aws-resource-appsync-api-return-values}
|
|
35
|
+
*/
|
|
36
|
+
export type AppSyncApiAttributes = {
|
|
37
|
+
/**
|
|
38
|
+
* The Amazon Resource Name (ARN) of the AppSync Api
|
|
39
|
+
*/
|
|
40
|
+
ApiArn: string;
|
|
41
|
+
/**
|
|
42
|
+
* The unique identifier for the AppSync Api generated by the service
|
|
43
|
+
*/
|
|
44
|
+
ApiId: string;
|
|
45
|
+
/**
|
|
46
|
+
* A map of DNS names for the AppSync API.
|
|
47
|
+
*/
|
|
48
|
+
Dns: Record<string, string>;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Type definition for `AWS::AppSync::Api.AuthenticationType`.
|
|
52
|
+
* Security configuration for your AppSync API.
|
|
53
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authenticationtype.html}
|
|
54
|
+
*/
|
|
55
|
+
export type AuthenticationType = "AMAZON_COGNITO_USER_POOLS" | "AWS_IAM" | "API_KEY" | "OPENID_CONNECT" | "AWS_LAMBDA";
|
|
56
|
+
/**
|
|
57
|
+
* Type definition for `AWS::AppSync::Api.AuthMode`.
|
|
58
|
+
* An auth mode.
|
|
59
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authmode.html}
|
|
60
|
+
*/
|
|
61
|
+
export type AuthMode = {
|
|
62
|
+
/**
|
|
63
|
+
* Security configuration for your AppSync API.
|
|
64
|
+
*/
|
|
65
|
+
AuthType?: AuthenticationType;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Type definition for `AWS::AppSync::Api.AuthProvider`.
|
|
69
|
+
* An auth provider for the AppSync API.
|
|
70
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authprovider.html}
|
|
71
|
+
*/
|
|
72
|
+
export type AuthProvider = {
|
|
73
|
+
/**
|
|
74
|
+
* Security configuration for your AppSync API.
|
|
75
|
+
*/
|
|
76
|
+
AuthType: AuthenticationType;
|
|
77
|
+
/**
|
|
78
|
+
* Optional authorization configuration for using Amazon Cognito user pools with your API endpoint.
|
|
79
|
+
*/
|
|
80
|
+
CognitoConfig?: CognitoConfig;
|
|
81
|
+
/**
|
|
82
|
+
* A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode. Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
|
|
83
|
+
*/
|
|
84
|
+
LambdaAuthorizerConfig?: LambdaAuthorizerConfig;
|
|
85
|
+
/**
|
|
86
|
+
* The OpenID Connect configuration.
|
|
87
|
+
*/
|
|
88
|
+
OpenIDConnectConfig?: OpenIDConnectConfig;
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* Type definition for `AWS::AppSync::Api.CognitoConfig`.
|
|
92
|
+
* Optional authorization configuration for using Amazon Cognito user pools with your API endpoint.
|
|
93
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-cognitoconfig.html}
|
|
94
|
+
*/
|
|
95
|
+
export type CognitoConfig = {
|
|
96
|
+
AppIdClientRegex?: string;
|
|
97
|
+
AwsRegion: string;
|
|
98
|
+
UserPoolId: string;
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Type definition for `AWS::AppSync::Api.DnsMap`.
|
|
102
|
+
* A map of DNS names for the AppSync API.
|
|
103
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-dnsmap.html}
|
|
104
|
+
*/
|
|
105
|
+
export type DnsMap = Record<string, string>;
|
|
106
|
+
/**
|
|
107
|
+
* Type definition for `AWS::AppSync::Api.EventConfig`.
|
|
108
|
+
* The configuration for an Event Api
|
|
109
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventconfig.html}
|
|
110
|
+
*/
|
|
111
|
+
export type EventConfig = {
|
|
112
|
+
/**
|
|
113
|
+
* A list of auth providers for the AppSync API.
|
|
114
|
+
*/
|
|
115
|
+
AuthProviders: AuthProvider[];
|
|
116
|
+
/**
|
|
117
|
+
* A list of auth modes for the AppSync API.
|
|
118
|
+
*/
|
|
119
|
+
ConnectionAuthModes: AuthMode[];
|
|
120
|
+
/**
|
|
121
|
+
* A list of auth modes for the AppSync API.
|
|
122
|
+
*/
|
|
123
|
+
DefaultPublishAuthModes: AuthMode[];
|
|
124
|
+
/**
|
|
125
|
+
* A list of auth modes for the AppSync API.
|
|
126
|
+
*/
|
|
127
|
+
DefaultSubscribeAuthModes: AuthMode[];
|
|
128
|
+
/**
|
|
129
|
+
* The log config for the AppSync API.
|
|
130
|
+
*/
|
|
131
|
+
LogConfig?: EventLogConfig;
|
|
132
|
+
};
|
|
133
|
+
/**
|
|
134
|
+
* Type definition for `AWS::AppSync::Api.EventLogConfig`.
|
|
135
|
+
* The log config for the AppSync API.
|
|
136
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventlogconfig.html}
|
|
137
|
+
*/
|
|
138
|
+
export type EventLogConfig = {
|
|
139
|
+
CloudWatchLogsRoleArn: string;
|
|
140
|
+
/**
|
|
141
|
+
* Logging level for the AppSync API.
|
|
142
|
+
*/
|
|
143
|
+
LogLevel: EventLogLevel;
|
|
144
|
+
};
|
|
145
|
+
/**
|
|
146
|
+
* Type definition for `AWS::AppSync::Api.EventLogLevel`.
|
|
147
|
+
* Logging level for the AppSync API.
|
|
148
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventloglevel.html}
|
|
149
|
+
*/
|
|
150
|
+
export type EventLogLevel = "NONE" | "ERROR" | "ALL" | "INFO" | "DEBUG";
|
|
151
|
+
/**
|
|
152
|
+
* Type definition for `AWS::AppSync::Api.LambdaAuthorizerConfig`.
|
|
153
|
+
* A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode. Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
|
|
154
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-lambdaauthorizerconfig.html}
|
|
155
|
+
*/
|
|
156
|
+
export type LambdaAuthorizerConfig = {
|
|
157
|
+
/**
|
|
158
|
+
* @min `0`
|
|
159
|
+
* @max `3600`
|
|
160
|
+
*/
|
|
161
|
+
AuthorizerResultTtlInSeconds?: number;
|
|
162
|
+
AuthorizerUri: string;
|
|
163
|
+
IdentityValidationExpression?: string;
|
|
164
|
+
};
|
|
165
|
+
/**
|
|
166
|
+
* Type definition for `AWS::AppSync::Api.OpenIDConnectConfig`.
|
|
167
|
+
* The OpenID Connect configuration.
|
|
168
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-openidconnectconfig.html}
|
|
169
|
+
*/
|
|
170
|
+
export type OpenIDConnectConfig = {
|
|
171
|
+
AuthTTL?: number;
|
|
172
|
+
ClientId?: string;
|
|
173
|
+
IatTTL?: number;
|
|
174
|
+
Issuer: string;
|
|
175
|
+
};
|
|
176
|
+
/**
|
|
177
|
+
* Type definition for `AWS::AppSync::Api.Tag`.
|
|
178
|
+
* An arbitrary set of tags (key-value pairs) for this AppSync API.
|
|
179
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-tag.html}
|
|
180
|
+
*/
|
|
181
|
+
export type Tag = {
|
|
182
|
+
/**
|
|
183
|
+
* A string used to identify this tag. You can specify a maximum of 128 characters for a tag key.
|
|
184
|
+
* @minLength `1`
|
|
185
|
+
* @maxLength `128`
|
|
186
|
+
* @pattern `^(?!aws:)[ a-zA-Z+-=._:/]+$`
|
|
187
|
+
*/
|
|
188
|
+
Key: string;
|
|
189
|
+
/**
|
|
190
|
+
* A string containing the value for this tag. You can specify a maximum of 256 characters for a tag value.
|
|
191
|
+
* @minLength `0`
|
|
192
|
+
* @maxLength `256`
|
|
193
|
+
* @pattern `^[\s\w+-=\.:/@]*$`
|
|
194
|
+
*/
|
|
195
|
+
Value: string;
|
|
196
|
+
};
|
|
197
|
+
/**
|
|
198
|
+
* Resource type definition for `AWS::AppSync::Api`.
|
|
199
|
+
* Resource schema for AppSync Api
|
|
200
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html}
|
|
201
|
+
*/
|
|
202
|
+
export declare class AppSyncApi extends $Resource<"AWS::AppSync::Api", AppSyncApiProperties, AppSyncApiAttributes> {
|
|
203
|
+
static readonly Type = "AWS::AppSync::Api";
|
|
204
|
+
constructor(logicalId: string, properties: AppSyncApiProperties, options?: $ResourceOptions);
|
|
205
|
+
}
|
|
206
|
+
//# sourceMappingURL=AWS-AppSync-Api.d.ts.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
|
|
2
|
+
/**
|
|
3
|
+
* Resource type definition for `AWS::AppSync::Api`.
|
|
4
|
+
* Resource schema for AppSync Api
|
|
5
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html}
|
|
6
|
+
*/
|
|
7
|
+
export class AppSyncApi extends $Resource {
|
|
8
|
+
static Type = "AWS::AppSync::Api";
|
|
9
|
+
constructor(logicalId, properties, options) {
|
|
10
|
+
super(logicalId, AppSyncApi.Type, properties, options);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=AWS-AppSync-Api.js.map
|
|
@@ -0,0 +1,100 @@
|
|
|
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
|
+
* Resource type definition for `AWS::AppSync::ChannelNamespace`.
|
|
5
|
+
* Resource schema for AppSync ChannelNamespace
|
|
6
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html}
|
|
7
|
+
*/
|
|
8
|
+
export type AppSyncChannelNamespaceProperties = {
|
|
9
|
+
/**
|
|
10
|
+
* AppSync Api Id that this Channel Namespace belongs to.
|
|
11
|
+
*/
|
|
12
|
+
ApiId: string;
|
|
13
|
+
/**
|
|
14
|
+
* String of APPSYNC_JS code to be used by the handlers.
|
|
15
|
+
* @minLength `1`
|
|
16
|
+
* @maxLength `32768`
|
|
17
|
+
*/
|
|
18
|
+
CodeHandlers?: string;
|
|
19
|
+
/**
|
|
20
|
+
* The Amazon S3 endpoint where the code is located.
|
|
21
|
+
*/
|
|
22
|
+
CodeS3Location?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Namespace indentifier.
|
|
25
|
+
* @minLength `1`
|
|
26
|
+
* @maxLength `50`
|
|
27
|
+
* @pattern `([A-Za-z0-9](?:[A-Za-z0-9\-]{0,48}[A-Za-z0-9])?)`
|
|
28
|
+
*/
|
|
29
|
+
Name: string;
|
|
30
|
+
/**
|
|
31
|
+
* List of AuthModes supported for Publish operations.
|
|
32
|
+
*/
|
|
33
|
+
PublishAuthModes?: AuthMode[];
|
|
34
|
+
/**
|
|
35
|
+
* List of AuthModes supported for Subscribe operations.
|
|
36
|
+
*/
|
|
37
|
+
SubscribeAuthModes?: AuthMode[];
|
|
38
|
+
/**
|
|
39
|
+
* An arbitrary set of tags (key-value pairs) for this AppSync API.
|
|
40
|
+
*/
|
|
41
|
+
Tags?: Tag[];
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Attribute type definition for `AWS::AppSync::ChannelNamespace`.
|
|
45
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html#aws-resource-appsync-channelnamespace-return-values}
|
|
46
|
+
*/
|
|
47
|
+
export type AppSyncChannelNamespaceAttributes = {
|
|
48
|
+
/**
|
|
49
|
+
* The Amazon Resource Name (ARN) for the Channel Namespace.
|
|
50
|
+
*/
|
|
51
|
+
ChannelNamespaceArn: string;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Type definition for `AWS::AppSync::ChannelNamespace.AuthenticationType`.
|
|
55
|
+
* Security configuration for your AppSync API.
|
|
56
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-channelnamespace-authenticationtype.html}
|
|
57
|
+
*/
|
|
58
|
+
export type AuthenticationType = "AMAZON_COGNITO_USER_POOLS" | "AWS_IAM" | "API_KEY" | "OPENID_CONNECT" | "AWS_LAMBDA";
|
|
59
|
+
/**
|
|
60
|
+
* Type definition for `AWS::AppSync::ChannelNamespace.AuthMode`.
|
|
61
|
+
* An auth mode.
|
|
62
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-channelnamespace-authmode.html}
|
|
63
|
+
*/
|
|
64
|
+
export type AuthMode = {
|
|
65
|
+
/**
|
|
66
|
+
* Security configuration for your AppSync API.
|
|
67
|
+
*/
|
|
68
|
+
AuthType?: AuthenticationType;
|
|
69
|
+
};
|
|
70
|
+
/**
|
|
71
|
+
* Type definition for `AWS::AppSync::ChannelNamespace.Tag`.
|
|
72
|
+
* An arbitrary set of tags (key-value pairs) for this AppSync API.
|
|
73
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-channelnamespace-tag.html}
|
|
74
|
+
*/
|
|
75
|
+
export type Tag = {
|
|
76
|
+
/**
|
|
77
|
+
* A string used to identify this tag. You can specify a maximum of 128 characters for a tag key.
|
|
78
|
+
* @minLength `1`
|
|
79
|
+
* @maxLength `128`
|
|
80
|
+
* @pattern `^(?!aws:)[ a-zA-Z+-=._:/]+$`
|
|
81
|
+
*/
|
|
82
|
+
Key: string;
|
|
83
|
+
/**
|
|
84
|
+
* A string containing the value for this tag. You can specify a maximum of 256 characters for a tag value.
|
|
85
|
+
* @minLength `0`
|
|
86
|
+
* @maxLength `256`
|
|
87
|
+
* @pattern `^[\s\w+-=\.:/@]*$`
|
|
88
|
+
*/
|
|
89
|
+
Value: string;
|
|
90
|
+
};
|
|
91
|
+
/**
|
|
92
|
+
* Resource type definition for `AWS::AppSync::ChannelNamespace`.
|
|
93
|
+
* Resource schema for AppSync ChannelNamespace
|
|
94
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html}
|
|
95
|
+
*/
|
|
96
|
+
export declare class AppSyncChannelNamespace extends $Resource<"AWS::AppSync::ChannelNamespace", AppSyncChannelNamespaceProperties, AppSyncChannelNamespaceAttributes> {
|
|
97
|
+
static readonly Type = "AWS::AppSync::ChannelNamespace";
|
|
98
|
+
constructor(logicalId: string, properties: AppSyncChannelNamespaceProperties, options?: $ResourceOptions);
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=AWS-AppSync-ChannelNamespace.d.ts.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
|
|
2
|
+
/**
|
|
3
|
+
* Resource type definition for `AWS::AppSync::ChannelNamespace`.
|
|
4
|
+
* Resource schema for AppSync ChannelNamespace
|
|
5
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html}
|
|
6
|
+
*/
|
|
7
|
+
export class AppSyncChannelNamespace extends $Resource {
|
|
8
|
+
static Type = "AWS::AppSync::ChannelNamespace";
|
|
9
|
+
constructor(logicalId, properties, options) {
|
|
10
|
+
super(logicalId, AppSyncChannelNamespace.Type, properties, options);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=AWS-AppSync-ChannelNamespace.js.map
|
|
@@ -7,6 +7,7 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
7
7
|
export type EventsApiDestinationProperties = {
|
|
8
8
|
/**
|
|
9
9
|
* The arn of the connection.
|
|
10
|
+
* @pattern `^arn:aws([a-z]|\-)*:events:([a-z]|\d|\-)*:([0-9]{12})?:connection/[\.\-_A-Za-z0-9]+/[\-A-Za-z0-9]+$`
|
|
10
11
|
*/
|
|
11
12
|
ConnectionArn: string;
|
|
12
13
|
/**
|
|
@@ -16,6 +17,7 @@ export type EventsApiDestinationProperties = {
|
|
|
16
17
|
HttpMethod: "GET" | "HEAD" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "PATCH";
|
|
17
18
|
/**
|
|
18
19
|
* Url endpoint to invoke.
|
|
20
|
+
* @pattern `^((%[0-9A-Fa-f]{2}|[-()_.!~*';/?:@\x26=+$,A-Za-z0-9])+)([).!';/?:,])?$`
|
|
19
21
|
*/
|
|
20
22
|
InvocationEndpoint: string;
|
|
21
23
|
/**
|
|
@@ -26,6 +28,7 @@ export type EventsApiDestinationProperties = {
|
|
|
26
28
|
* Name of the apiDestination.
|
|
27
29
|
* @minLength `1`
|
|
28
30
|
* @maxLength `64`
|
|
31
|
+
* @pattern `[\.\-_A-Za-z0-9]+`
|
|
29
32
|
*/
|
|
30
33
|
Name?: string;
|
|
31
34
|
};
|
|
@@ -36,6 +39,7 @@ export type EventsApiDestinationProperties = {
|
|
|
36
39
|
export type EventsApiDestinationAttributes = {
|
|
37
40
|
/**
|
|
38
41
|
* The arn of the api destination.
|
|
42
|
+
* @pattern `^arn:aws([a-z]|\-)*:events:([a-z]|\d|\-)*:([0-9]{12})?:api-destination/[\.\-_A-Za-z0-9]+/[\-A-Za-z0-9]+$`
|
|
39
43
|
*/
|
|
40
44
|
Arn: string;
|
|
41
45
|
};
|
|
@@ -8,6 +8,7 @@ export type EventsArchiveProperties = {
|
|
|
8
8
|
/**
|
|
9
9
|
* @minLength `1`
|
|
10
10
|
* @maxLength `48`
|
|
11
|
+
* @pattern `[\.\-_A-Za-z0-9]+`
|
|
11
12
|
*/
|
|
12
13
|
ArchiveName?: string;
|
|
13
14
|
Description?: string;
|
|
@@ -20,6 +21,9 @@ export type EventsArchiveProperties = {
|
|
|
20
21
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html#aws-resource-events-archive-return-values}
|
|
21
22
|
*/
|
|
22
23
|
export type EventsArchiveAttributes = {
|
|
24
|
+
/**
|
|
25
|
+
* @pattern `^arn:aws([a-z]|\-)*:events:([a-z]|\d|\-)*:([0-9]{12})?:.+\/.+$`
|
|
26
|
+
*/
|
|
23
27
|
Arn: string;
|
|
24
28
|
};
|
|
25
29
|
/**
|
|
@@ -16,6 +16,7 @@ export type EventsConnectionProperties = {
|
|
|
16
16
|
* Name of the connection.
|
|
17
17
|
* @minLength `1`
|
|
18
18
|
* @maxLength `64`
|
|
19
|
+
* @pattern `[\.\-_A-Za-z0-9]+`
|
|
19
20
|
*/
|
|
20
21
|
Name?: string;
|
|
21
22
|
};
|
|
@@ -26,10 +27,12 @@ export type EventsConnectionProperties = {
|
|
|
26
27
|
export type EventsConnectionAttributes = {
|
|
27
28
|
/**
|
|
28
29
|
* The arn of the connection resource.
|
|
30
|
+
* @pattern `^arn:aws([a-z]|\-)*:events:([a-z]|\d|\-)*:([0-9]{12})?:connection\/[\.\-_A-Za-z0-9]+\/[\-A-Za-z0-9]+$`
|
|
29
31
|
*/
|
|
30
32
|
Arn: string;
|
|
31
33
|
/**
|
|
32
34
|
* The arn of the secrets manager secret created in the customer account.
|
|
35
|
+
* @pattern `^arn:aws([a-z]|\-)*:secretsmanager:([a-z]|\d|\-)*:([0-9]{12})?:secret:[\/_+=\.@\-A-Za-z0-9]+$`
|
|
33
36
|
*/
|
|
34
37
|
SecretArn: string;
|
|
35
38
|
};
|
|
@@ -38,7 +41,13 @@ export type EventsConnectionAttributes = {
|
|
|
38
41
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-connection-apikeyauthparameters.html}
|
|
39
42
|
*/
|
|
40
43
|
export type ApiKeyAuthParameters = {
|
|
44
|
+
/**
|
|
45
|
+
* @pattern `^[ \t]*[^\x00-\x1F\x7F]+([ \t]+[^\x00-\x1F\x7F]+)*[ \t]*$`
|
|
46
|
+
*/
|
|
41
47
|
ApiKeyName: string;
|
|
48
|
+
/**
|
|
49
|
+
* @pattern `^[ \t]*[^\x00-\x1F\x7F]+([ \t]+[^\x00-\x1F\x7F]+)*[ \t]*$`
|
|
50
|
+
*/
|
|
42
51
|
ApiKeyValue: string;
|
|
43
52
|
};
|
|
44
53
|
/**
|
|
@@ -56,7 +65,13 @@ export type AuthParameters = {
|
|
|
56
65
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-connection-basicauthparameters.html}
|
|
57
66
|
*/
|
|
58
67
|
export type BasicAuthParameters = {
|
|
68
|
+
/**
|
|
69
|
+
* @pattern `^[ \t]*[^\x00-\x1F\x7F]+([ \t]+[^\x00-\x1F\x7F]+)*[ \t]*$`
|
|
70
|
+
*/
|
|
59
71
|
Password: string;
|
|
72
|
+
/**
|
|
73
|
+
* @pattern `^[ \t]*[^\x00-\x1F\x7F]+([ \t]+[^\x00-\x1F\x7F]+)*[ \t]*$`
|
|
74
|
+
*/
|
|
60
75
|
Username: string;
|
|
61
76
|
};
|
|
62
77
|
/**
|
|
@@ -64,7 +79,13 @@ export type BasicAuthParameters = {
|
|
|
64
79
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-connection-clientparameters.html}
|
|
65
80
|
*/
|
|
66
81
|
export type ClientParameters = {
|
|
82
|
+
/**
|
|
83
|
+
* @pattern `^[ \t]*[^\x00-\x1F\x7F]+([ \t]+[^\x00-\x1F\x7F]+)*[ \t]*$`
|
|
84
|
+
*/
|
|
67
85
|
ClientID: string;
|
|
86
|
+
/**
|
|
87
|
+
* @pattern `^[ \t]*[^\x00-\x1F\x7F]+([ \t]+[^\x00-\x1F\x7F]+)*[ \t]*$`
|
|
88
|
+
*/
|
|
68
89
|
ClientSecret: string;
|
|
69
90
|
};
|
|
70
91
|
/**
|
|
@@ -84,6 +105,7 @@ export type OAuthParameters = {
|
|
|
84
105
|
/**
|
|
85
106
|
* @minLength `1`
|
|
86
107
|
* @maxLength `2048`
|
|
108
|
+
* @pattern `^((%[0-9A-Fa-f]{2}|[-()_.!~*';/?:@\x26=+$,A-Za-z0-9])+)([).!';/?:,])?$`
|
|
87
109
|
*/
|
|
88
110
|
AuthorizationEndpoint: string;
|
|
89
111
|
ClientParameters: ClientParameters;
|
|
@@ -69,7 +69,7 @@ export type MWAAEnvironmentProperties = {
|
|
|
69
69
|
LoggingConfiguration?: LoggingConfiguration;
|
|
70
70
|
/**
|
|
71
71
|
* Maximum webserver compute units.
|
|
72
|
-
* @min `
|
|
72
|
+
* @min `1`
|
|
73
73
|
*/
|
|
74
74
|
MaxWebservers?: number;
|
|
75
75
|
/**
|
|
@@ -79,7 +79,7 @@ export type MWAAEnvironmentProperties = {
|
|
|
79
79
|
MaxWorkers?: number;
|
|
80
80
|
/**
|
|
81
81
|
* Minimum webserver compute units.
|
|
82
|
-
* @min `
|
|
82
|
+
* @min `1`
|
|
83
83
|
*/
|
|
84
84
|
MinWebservers?: number;
|
|
85
85
|
/**
|
|
@@ -17,6 +17,10 @@ export type OpenSearchServiceDomainProperties = {
|
|
|
17
17
|
EncryptionAtRestOptions?: EncryptionAtRestOptions;
|
|
18
18
|
EngineVersion?: string;
|
|
19
19
|
IPAddressType?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Options for configuring Identity Center
|
|
22
|
+
*/
|
|
23
|
+
IdentityCenterOptions?: IdentityCenterOptions;
|
|
20
24
|
LogPublishingOptions?: Record<string, LogPublishingOption>;
|
|
21
25
|
NodeToNodeEncryptionOptions?: NodeToNodeEncryptionOptions;
|
|
22
26
|
OffPeakWindowOptions?: OffPeakWindowOptions;
|
|
@@ -43,6 +47,19 @@ export type OpenSearchServiceDomainAttributes = {
|
|
|
43
47
|
DomainEndpointV2: string;
|
|
44
48
|
DomainEndpoints: Record<string, string>;
|
|
45
49
|
Id: string;
|
|
50
|
+
/**
|
|
51
|
+
* Options for configuring Identity Center
|
|
52
|
+
*/
|
|
53
|
+
IdentityCenterOptions: {
|
|
54
|
+
/**
|
|
55
|
+
* The ARN of the Identity Center application.
|
|
56
|
+
*/
|
|
57
|
+
IdentityCenterApplicationARN: string;
|
|
58
|
+
/**
|
|
59
|
+
* The IdentityStoreId for Identity Center options.
|
|
60
|
+
*/
|
|
61
|
+
IdentityStoreId: string;
|
|
62
|
+
};
|
|
46
63
|
ServiceSoftwareOptions: {
|
|
47
64
|
AutomatedUpdateDate: string;
|
|
48
65
|
Cancellable: boolean;
|
|
@@ -131,6 +148,29 @@ export type EncryptionAtRestOptions = {
|
|
|
131
148
|
Enabled?: boolean;
|
|
132
149
|
KmsKeyId?: string;
|
|
133
150
|
};
|
|
151
|
+
/**
|
|
152
|
+
* Type definition for `AWS::OpenSearchService::Domain.IdentityCenterOptions`.
|
|
153
|
+
* Options for configuring Identity Center
|
|
154
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opensearchservice-domain-identitycenteroptions.html}
|
|
155
|
+
*/
|
|
156
|
+
export type IdentityCenterOptions = {
|
|
157
|
+
/**
|
|
158
|
+
* Whether Identity Center is enabled.
|
|
159
|
+
*/
|
|
160
|
+
EnabledAPIAccess?: boolean;
|
|
161
|
+
/**
|
|
162
|
+
* The ARN of the Identity Center instance.
|
|
163
|
+
*/
|
|
164
|
+
IdentityCenterInstanceARN?: string;
|
|
165
|
+
/**
|
|
166
|
+
* The roles key for Identity Center options.
|
|
167
|
+
*/
|
|
168
|
+
RolesKey?: RolesKeyIdcType;
|
|
169
|
+
/**
|
|
170
|
+
* The subject key for Identity Center options.
|
|
171
|
+
*/
|
|
172
|
+
SubjectKey?: SubjectKeyIdcType;
|
|
173
|
+
};
|
|
134
174
|
/**
|
|
135
175
|
* Type definition for `AWS::OpenSearchService::Domain.Idp`.
|
|
136
176
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opensearchservice-domain-idp.html}
|
|
@@ -192,6 +232,12 @@ export type OffPeakWindowOptions = {
|
|
|
192
232
|
Enabled?: boolean;
|
|
193
233
|
OffPeakWindow?: OffPeakWindow;
|
|
194
234
|
};
|
|
235
|
+
/**
|
|
236
|
+
* Type definition for `AWS::OpenSearchService::Domain.RolesKeyIdcType`.
|
|
237
|
+
* Roles Key Idc type values.
|
|
238
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opensearchservice-domain-roleskeyidctype.html}
|
|
239
|
+
*/
|
|
240
|
+
export type RolesKeyIdcType = "GroupName" | "GroupId";
|
|
195
241
|
/**
|
|
196
242
|
* Type definition for `AWS::OpenSearchService::Domain.SAMLOptions`.
|
|
197
243
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opensearchservice-domain-samloptions.html}
|
|
@@ -233,6 +279,12 @@ export type SnapshotOptions = {
|
|
|
233
279
|
export type SoftwareUpdateOptions = {
|
|
234
280
|
AutoSoftwareUpdateEnabled?: boolean;
|
|
235
281
|
};
|
|
282
|
+
/**
|
|
283
|
+
* Type definition for `AWS::OpenSearchService::Domain.SubjectKeyIdcType`.
|
|
284
|
+
* Subject Key Idc type values.
|
|
285
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opensearchservice-domain-subjectkeyidctype.html}
|
|
286
|
+
*/
|
|
287
|
+
export type SubjectKeyIdcType = "UserName" | "UserId" | "Email";
|
|
236
288
|
/**
|
|
237
289
|
* Type definition for `AWS::OpenSearchService::Domain.Tag`.
|
|
238
290
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opensearchservice-domain-tag.html}
|
|
@@ -10,7 +10,7 @@ export type SageMakerStudioLifecycleConfigProperties = {
|
|
|
10
10
|
*/
|
|
11
11
|
StudioLifecycleConfigAppType: "JupyterServer" | "KernelGateway" | "CodeEditor" | "JupyterLab";
|
|
12
12
|
/**
|
|
13
|
-
* The content of your Amazon SageMaker Studio Lifecycle Configuration script.
|
|
13
|
+
* The content of your Amazon SageMaker Studio Lifecycle Configuration script. This content must be base64 encoded.
|
|
14
14
|
* @minLength `1`
|
|
15
15
|
* @maxLength `16384`
|
|
16
16
|
* @pattern `[\S\s]+`
|
|
@@ -24,7 +24,7 @@ export type SageMakerStudioLifecycleConfigProperties = {
|
|
|
24
24
|
*/
|
|
25
25
|
StudioLifecycleConfigName: string;
|
|
26
26
|
/**
|
|
27
|
-
* Tags to be associated with the Lifecycle Configuration.
|
|
27
|
+
* Tags to be associated with the Lifecycle Configuration. Each tag consists of a key and an optional value. Tag keys must be unique per resource. Tags are searchable using the Search API.
|
|
28
28
|
* @minLength `0`
|
|
29
29
|
* @maxLength `50`
|
|
30
30
|
*/
|
|
@@ -5,10 +5,25 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
5
5
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html}
|
|
6
6
|
*/
|
|
7
7
|
export type SecretsManagerRotationScheduleProperties = {
|
|
8
|
+
/**
|
|
9
|
+
* Creates a new Lambda rotation function based on one of the Secrets Manager rotation function templates. To use a rotation function that already exists, specify RotationLambdaARN instead.
|
|
10
|
+
*/
|
|
8
11
|
HostedRotationLambda?: HostedRotationLambda;
|
|
12
|
+
/**
|
|
13
|
+
* Specifies whether to rotate the secret immediately or wait until the next scheduled rotation window.
|
|
14
|
+
*/
|
|
9
15
|
RotateImmediatelyOnUpdate?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* The ARN of an existing Lambda rotation function. To specify a rotation function that is also defined in this template, use the Ref function.
|
|
18
|
+
*/
|
|
10
19
|
RotationLambdaARN?: string;
|
|
20
|
+
/**
|
|
21
|
+
* A structure that defines the rotation configuration for this secret.
|
|
22
|
+
*/
|
|
11
23
|
RotationRules?: RotationRules;
|
|
24
|
+
/**
|
|
25
|
+
* The ARN or name of the secret to rotate.
|
|
26
|
+
*/
|
|
12
27
|
SecretId: string;
|
|
13
28
|
};
|
|
14
29
|
/**
|
|
@@ -16,6 +31,9 @@ export type SecretsManagerRotationScheduleProperties = {
|
|
|
16
31
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#aws-resource-secretsmanager-rotationschedule-return-values}
|
|
17
32
|
*/
|
|
18
33
|
export type SecretsManagerRotationScheduleAttributes = {
|
|
34
|
+
/**
|
|
35
|
+
* The ARN of the secret.
|
|
36
|
+
*/
|
|
19
37
|
Id: string;
|
|
20
38
|
};
|
|
21
39
|
/**
|
|
@@ -23,16 +41,49 @@ export type SecretsManagerRotationScheduleAttributes = {
|
|
|
23
41
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html}
|
|
24
42
|
*/
|
|
25
43
|
export type HostedRotationLambda = {
|
|
44
|
+
/**
|
|
45
|
+
* A string of the characters that you don't want in the password.
|
|
46
|
+
*/
|
|
26
47
|
ExcludeCharacters?: string;
|
|
48
|
+
/**
|
|
49
|
+
* The ARN of the KMS key that Secrets Manager uses to encrypt the secret. If you don't specify this value, then Secrets Manager uses the key aws/secretsmanager. If aws/secretsmanager doesn't yet exist, then Secrets Manager creates it for you automatically the first time it encrypts the secret value.
|
|
50
|
+
*/
|
|
27
51
|
KmsKeyArn?: string;
|
|
52
|
+
/**
|
|
53
|
+
* The ARN of the secret that contains superuser credentials, if you use the alternating users rotation strategy. CloudFormation grants the execution role for the Lambda rotation function GetSecretValue permission to the secret in this property.
|
|
54
|
+
*/
|
|
28
55
|
MasterSecretArn?: string;
|
|
56
|
+
/**
|
|
57
|
+
* The ARN of the KMS key that Secrets Manager used to encrypt the superuser secret, if you use the alternating users strategy and the superuser secret is encrypted with a customer managed key. You don't need to specify this property if the superuser secret is encrypted using the key aws/secretsmanager. CloudFormation grants the execution role for the Lambda rotation function Decrypt, DescribeKey, and GenerateDataKey permission to the key in this property.
|
|
58
|
+
*/
|
|
29
59
|
MasterSecretKmsKeyArn?: string;
|
|
60
|
+
/**
|
|
61
|
+
* The name of the Lambda rotation function.
|
|
62
|
+
*/
|
|
30
63
|
RotationLambdaName?: string;
|
|
64
|
+
/**
|
|
65
|
+
* The type of rotation template to use
|
|
66
|
+
*/
|
|
31
67
|
RotationType: string;
|
|
68
|
+
/**
|
|
69
|
+
* The python runtime associated with the Lambda function
|
|
70
|
+
*/
|
|
32
71
|
Runtime?: string;
|
|
72
|
+
/**
|
|
73
|
+
* The ARN of the secret that contains superuser credentials, if you use the alternating users rotation strategy. CloudFormation grants the execution role for the Lambda rotation function GetSecretValue permission to the secret in this property.
|
|
74
|
+
*/
|
|
33
75
|
SuperuserSecretArn?: string;
|
|
76
|
+
/**
|
|
77
|
+
* The ARN of the KMS key that Secrets Manager used to encrypt the superuser secret, if you use the alternating users strategy and the superuser secret is encrypted with a customer managed key. You don't need to specify this property if the superuser secret is encrypted using the key aws/secretsmanager. CloudFormation grants the execution role for the Lambda rotation function Decrypt, DescribeKey, and GenerateDataKey permission to the key in this property.
|
|
78
|
+
*/
|
|
34
79
|
SuperuserSecretKmsKeyArn?: string;
|
|
80
|
+
/**
|
|
81
|
+
* A comma-separated list of security group IDs applied to the target database.
|
|
82
|
+
*/
|
|
35
83
|
VpcSecurityGroupIds?: string;
|
|
84
|
+
/**
|
|
85
|
+
* A comma separated list of VPC subnet IDs of the target database network. The Lambda rotation function is in the same subnet group.
|
|
86
|
+
*/
|
|
36
87
|
VpcSubnetIds?: string;
|
|
37
88
|
};
|
|
38
89
|
/**
|
|
@@ -40,8 +91,17 @@ export type HostedRotationLambda = {
|
|
|
40
91
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-rotationrules.html}
|
|
41
92
|
*/
|
|
42
93
|
export type RotationRules = {
|
|
94
|
+
/**
|
|
95
|
+
* The number of days between automatic scheduled rotations of the secret. You can use this value to check that your secret meets your compliance guidelines for how often secrets must be rotated.
|
|
96
|
+
*/
|
|
43
97
|
AutomaticallyAfterDays?: number;
|
|
98
|
+
/**
|
|
99
|
+
* The length of the rotation window in hours, for example 3h for a three hour window. Secrets Manager rotates your secret at any time during this window. The window must not extend into the next rotation window or the next UTC day. The window starts according to the ScheduleExpression. If you don't specify a Duration, for a ScheduleExpression in hours, the window automatically closes after one hour. For a ScheduleExpression in days, the window automatically closes at the end of the UTC day.
|
|
100
|
+
*/
|
|
44
101
|
Duration?: string;
|
|
102
|
+
/**
|
|
103
|
+
* A cron() or rate() expression that defines the schedule for rotating your secret. Secrets Manager rotation schedules use UTC time zone.
|
|
104
|
+
*/
|
|
45
105
|
ScheduleExpression?: string;
|
|
46
106
|
};
|
|
47
107
|
/**
|