UNPKG

140 kBTypeScriptView Raw
1import * as cdk from '@aws-cdk/core';
2import * as cfn_parse from '@aws-cdk/core/lib/helpers-internal';
3/**
4 * Properties for defining a `CfnCustomResource`
5 *
6 * @struct
7 * @stability external
8 *
9 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html
10 */
11export interface CfnCustomResourceProps {
12 /**
13 * > Only one property is defined by AWS for a custom resource: `ServiceToken` . All other properties are defined by the service provider.
14 *
15 * The service token that was given to the template developer by the service provider to access the service, such as an Amazon SNS topic ARN or Lambda function ARN. The service token must be from the same Region in which you are creating the stack.
16 *
17 * Updates aren't supported.
18 *
19 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html#cfn-customresource-servicetoken
20 */
21 readonly serviceToken: string;
22}
23/**
24 * A CloudFormation `AWS::CloudFormation::CustomResource`
25 *
26 * In a CloudFormation template, you use the `AWS::CloudFormation::CustomResource` or `Custom:: *String*` resource type to specify custom resources.
27 *
28 * Custom resources provide a way for you to write custom provisioning logic in CloudFormation template and have CloudFormation run it during a stack operation, such as when you create, update or delete a stack. For more information, see [Custom resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html) .
29 *
30 * > If you use the [VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) feature, custom resources in the VPC must have access to CloudFormation -specific Amazon Simple Storage Service ( Amazon S3 ) buckets. Custom resources must send responses to a presigned Amazon S3 URL. If they can't send responses to Amazon S3 , CloudFormation won't receive a response and the stack operation fails. For more information, see [Setting up VPC endpoints for AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-vpce-bucketnames.html) .
31 *
32 * @cloudformationResource AWS::CloudFormation::CustomResource
33 * @stability external
34 *
35 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html
36 */
37export declare class CfnCustomResource extends cdk.CfnResource implements cdk.IInspectable {
38 /**
39 * The CloudFormation resource type name for this resource class.
40 */
41 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::CustomResource";
42 /**
43 * A factory method that creates a new instance of this class from an object
44 * containing the CloudFormation properties of this resource.
45 * Used in the @aws-cdk/cloudformation-include module.
46 *
47 * @internal
48 */
49 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnCustomResource;
50 /**
51 * > Only one property is defined by AWS for a custom resource: `ServiceToken` . All other properties are defined by the service provider.
52 *
53 * The service token that was given to the template developer by the service provider to access the service, such as an Amazon SNS topic ARN or Lambda function ARN. The service token must be from the same Region in which you are creating the stack.
54 *
55 * Updates aren't supported.
56 *
57 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html#cfn-customresource-servicetoken
58 */
59 serviceToken: string;
60 /**
61 * Create a new `AWS::CloudFormation::CustomResource`.
62 *
63 * @param scope - scope in which this resource is defined
64 * @param id - scoped id of the resource
65 * @param props - resource properties
66 */
67 constructor(scope: cdk.Construct, id: string, props: CfnCustomResourceProps);
68 /**
69 * Examines the CloudFormation resource and discloses attributes.
70 *
71 * @param inspector - tree inspector to collect and process attributes
72 *
73 */
74 inspect(inspector: cdk.TreeInspector): void;
75 protected get cfnProperties(): {
76 [key: string]: any;
77 };
78 protected renderProperties(props: {
79 [key: string]: any;
80 }): {
81 [key: string]: any;
82 };
83}
84/**
85 * Properties for defining a `CfnHookDefaultVersion`
86 *
87 * @struct
88 * @stability external
89 *
90 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html
91 */
92export interface CfnHookDefaultVersionProps {
93 /**
94 * The name of the hook.
95 *
96 * You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
97 *
98 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html#cfn-cloudformation-hookdefaultversion-typename
99 */
100 readonly typeName?: string;
101 /**
102 * The version ID of the type configuration.
103 *
104 * You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
105 *
106 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html#cfn-cloudformation-hookdefaultversion-typeversionarn
107 */
108 readonly typeVersionArn?: string;
109 /**
110 * The version ID of the type specified.
111 *
112 * You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
113 *
114 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html#cfn-cloudformation-hookdefaultversion-versionid
115 */
116 readonly versionId?: string;
117}
118/**
119 * A CloudFormation `AWS::CloudFormation::HookDefaultVersion`
120 *
121 * The `HookDefaultVersion` resource specifies the default version of the hook. The default version of the hook is used in CloudFormation operations for this AWS account and AWS Region .
122 *
123 * @cloudformationResource AWS::CloudFormation::HookDefaultVersion
124 * @stability external
125 *
126 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html
127 */
128export declare class CfnHookDefaultVersion extends cdk.CfnResource implements cdk.IInspectable {
129 /**
130 * The CloudFormation resource type name for this resource class.
131 */
132 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::HookDefaultVersion";
133 /**
134 * A factory method that creates a new instance of this class from an object
135 * containing the CloudFormation properties of this resource.
136 * Used in the @aws-cdk/cloudformation-include module.
137 *
138 * @internal
139 */
140 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnHookDefaultVersion;
141 /**
142 * The Amazon Resource Number (ARN) of the activated extension, in this account and Region.
143 * @cloudformationAttribute Arn
144 */
145 readonly attrArn: string;
146 /**
147 * The name of the hook.
148 *
149 * You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
150 *
151 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html#cfn-cloudformation-hookdefaultversion-typename
152 */
153 typeName: string | undefined;
154 /**
155 * The version ID of the type configuration.
156 *
157 * You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
158 *
159 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html#cfn-cloudformation-hookdefaultversion-typeversionarn
160 */
161 typeVersionArn: string | undefined;
162 /**
163 * The version ID of the type specified.
164 *
165 * You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
166 *
167 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html#cfn-cloudformation-hookdefaultversion-versionid
168 */
169 versionId: string | undefined;
170 /**
171 * Create a new `AWS::CloudFormation::HookDefaultVersion`.
172 *
173 * @param scope - scope in which this resource is defined
174 * @param id - scoped id of the resource
175 * @param props - resource properties
176 */
177 constructor(scope: cdk.Construct, id: string, props?: CfnHookDefaultVersionProps);
178 /**
179 * Examines the CloudFormation resource and discloses attributes.
180 *
181 * @param inspector - tree inspector to collect and process attributes
182 *
183 */
184 inspect(inspector: cdk.TreeInspector): void;
185 protected get cfnProperties(): {
186 [key: string]: any;
187 };
188 protected renderProperties(props: {
189 [key: string]: any;
190 }): {
191 [key: string]: any;
192 };
193}
194/**
195 * Properties for defining a `CfnHookTypeConfig`
196 *
197 * @struct
198 * @stability external
199 *
200 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html
201 */
202export interface CfnHookTypeConfigProps {
203 /**
204 * Specifies the activated hook type configuration, in this AWS account and AWS Region .
205 *
206 * You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` .
207 *
208 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html#cfn-cloudformation-hooktypeconfig-configuration
209 */
210 readonly configuration: string;
211 /**
212 * Specifies the activated hook type configuration, in this AWS account and AWS Region .
213 *
214 * Defaults to `default` alias. Hook types currently support default configuration alias.
215 *
216 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html#cfn-cloudformation-hooktypeconfig-configurationalias
217 */
218 readonly configurationAlias?: string;
219 /**
220 * The Amazon Resource Number (ARN) for the hook to set `Configuration` for.
221 *
222 * You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` .
223 *
224 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html#cfn-cloudformation-hooktypeconfig-typearn
225 */
226 readonly typeArn?: string;
227 /**
228 * The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of `Organization::Service::Hook` .
229 *
230 * You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` .
231 *
232 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html#cfn-cloudformation-hooktypeconfig-typename
233 */
234 readonly typeName?: string;
235}
236/**
237 * A CloudFormation `AWS::CloudFormation::HookTypeConfig`
238 *
239 * The `HookTypeConfig` resource specifies the configuration of a hook.
240 *
241 * @cloudformationResource AWS::CloudFormation::HookTypeConfig
242 * @stability external
243 *
244 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html
245 */
246export declare class CfnHookTypeConfig extends cdk.CfnResource implements cdk.IInspectable {
247 /**
248 * The CloudFormation resource type name for this resource class.
249 */
250 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::HookTypeConfig";
251 /**
252 * A factory method that creates a new instance of this class from an object
253 * containing the CloudFormation properties of this resource.
254 * Used in the @aws-cdk/cloudformation-include module.
255 *
256 * @internal
257 */
258 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnHookTypeConfig;
259 /**
260 * The Amazon Resource Number (ARN) of the activated hook type configuration, in this account and Region.
261 * @cloudformationAttribute ConfigurationArn
262 */
263 readonly attrConfigurationArn: string;
264 /**
265 * Specifies the activated hook type configuration, in this AWS account and AWS Region .
266 *
267 * You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` .
268 *
269 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html#cfn-cloudformation-hooktypeconfig-configuration
270 */
271 configuration: string;
272 /**
273 * Specifies the activated hook type configuration, in this AWS account and AWS Region .
274 *
275 * Defaults to `default` alias. Hook types currently support default configuration alias.
276 *
277 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html#cfn-cloudformation-hooktypeconfig-configurationalias
278 */
279 configurationAlias: string | undefined;
280 /**
281 * The Amazon Resource Number (ARN) for the hook to set `Configuration` for.
282 *
283 * You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` .
284 *
285 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html#cfn-cloudformation-hooktypeconfig-typearn
286 */
287 typeArn: string | undefined;
288 /**
289 * The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of `Organization::Service::Hook` .
290 *
291 * You must specify either `TypeName` and `Configuration` or `TypeARN` and `Configuration` .
292 *
293 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html#cfn-cloudformation-hooktypeconfig-typename
294 */
295 typeName: string | undefined;
296 /**
297 * Create a new `AWS::CloudFormation::HookTypeConfig`.
298 *
299 * @param scope - scope in which this resource is defined
300 * @param id - scoped id of the resource
301 * @param props - resource properties
302 */
303 constructor(scope: cdk.Construct, id: string, props: CfnHookTypeConfigProps);
304 /**
305 * Examines the CloudFormation resource and discloses attributes.
306 *
307 * @param inspector - tree inspector to collect and process attributes
308 *
309 */
310 inspect(inspector: cdk.TreeInspector): void;
311 protected get cfnProperties(): {
312 [key: string]: any;
313 };
314 protected renderProperties(props: {
315 [key: string]: any;
316 }): {
317 [key: string]: any;
318 };
319}
320/**
321 * Properties for defining a `CfnHookVersion`
322 *
323 * @struct
324 * @stability external
325 *
326 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html
327 */
328export interface CfnHookVersionProps {
329 /**
330 * A URL to the Amazon S3 bucket containing the hook project package that contains the necessary files for the hook you want to register.
331 *
332 * For information on generating a schema handler package for the resource you want to register, see [submit](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) in the *CloudFormation CLI User Guide for Extension Development* .
333 *
334 * > The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the schema handler package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* .
335 *
336 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-schemahandlerpackage
337 */
338 readonly schemaHandlerPackage: string;
339 /**
340 * The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of `Organization::Service::Hook` .
341 *
342 * > The following organization namespaces are reserved and can't be used in your hook type names:
343 * >
344 * > - `Alexa`
345 * > - `AMZN`
346 * > - `Amazon`
347 * > - `ASK`
348 * > - `AWS`
349 * > - `Custom`
350 * > - `Dev`
351 *
352 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-typename
353 */
354 readonly typeName: string;
355 /**
356 * The Amazon Resource Name (ARN) of the task execution role that grants the hook permission.
357 *
358 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-executionrolearn
359 */
360 readonly executionRoleArn?: string;
361 /**
362 * Contains logging configuration information for an extension.
363 *
364 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-loggingconfig
365 */
366 readonly loggingConfig?: CfnHookVersion.LoggingConfigProperty | cdk.IResolvable;
367}
368/**
369 * A CloudFormation `AWS::CloudFormation::HookVersion`
370 *
371 * The `HookVersion` resource publishes new or first hook version to the AWS CloudFormation registry.
372 *
373 * @cloudformationResource AWS::CloudFormation::HookVersion
374 * @stability external
375 *
376 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html
377 */
378export declare class CfnHookVersion extends cdk.CfnResource implements cdk.IInspectable {
379 /**
380 * The CloudFormation resource type name for this resource class.
381 */
382 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::HookVersion";
383 /**
384 * A factory method that creates a new instance of this class from an object
385 * containing the CloudFormation properties of this resource.
386 * Used in the @aws-cdk/cloudformation-include module.
387 *
388 * @internal
389 */
390 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnHookVersion;
391 /**
392 * The Amazon Resource Name (ARN) of the hook.
393 * @cloudformationAttribute Arn
394 */
395 readonly attrArn: string;
396 /**
397 * Whether the specified hook version is set as the default version.
398 * @cloudformationAttribute IsDefaultVersion
399 */
400 readonly attrIsDefaultVersion: cdk.IResolvable;
401 /**
402 * The Amazon Resource Number (ARN) assigned to this version of the hook.
403 * @cloudformationAttribute TypeArn
404 */
405 readonly attrTypeArn: string;
406 /**
407 * The ID of this version of the hook.
408 * @cloudformationAttribute VersionId
409 */
410 readonly attrVersionId: string;
411 /**
412 * The scope at which the resource is visible and usable in CloudFormation operations.
413 *
414 * Valid values include:
415 *
416 * - `PRIVATE` : The resource is only visible and usable within the account in which it's registered. CloudFormation marks any resources you register as `PRIVATE` .
417 * - `PUBLIC` : The resource is publicly visible and usable within any Amazon account.
418 * @cloudformationAttribute Visibility
419 */
420 readonly attrVisibility: string;
421 /**
422 * A URL to the Amazon S3 bucket containing the hook project package that contains the necessary files for the hook you want to register.
423 *
424 * For information on generating a schema handler package for the resource you want to register, see [submit](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) in the *CloudFormation CLI User Guide for Extension Development* .
425 *
426 * > The user registering the resource must be able to access the package in the S3 bucket. That's, the user must have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the schema handler package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* .
427 *
428 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-schemahandlerpackage
429 */
430 schemaHandlerPackage: string;
431 /**
432 * The unique name for your hook. Specifies a three-part namespace for your hook, with a recommended pattern of `Organization::Service::Hook` .
433 *
434 * > The following organization namespaces are reserved and can't be used in your hook type names:
435 * >
436 * > - `Alexa`
437 * > - `AMZN`
438 * > - `Amazon`
439 * > - `ASK`
440 * > - `AWS`
441 * > - `Custom`
442 * > - `Dev`
443 *
444 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-typename
445 */
446 typeName: string;
447 /**
448 * The Amazon Resource Name (ARN) of the task execution role that grants the hook permission.
449 *
450 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-executionrolearn
451 */
452 executionRoleArn: string | undefined;
453 /**
454 * Contains logging configuration information for an extension.
455 *
456 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html#cfn-cloudformation-hookversion-loggingconfig
457 */
458 loggingConfig: CfnHookVersion.LoggingConfigProperty | cdk.IResolvable | undefined;
459 /**
460 * Create a new `AWS::CloudFormation::HookVersion`.
461 *
462 * @param scope - scope in which this resource is defined
463 * @param id - scoped id of the resource
464 * @param props - resource properties
465 */
466 constructor(scope: cdk.Construct, id: string, props: CfnHookVersionProps);
467 /**
468 * Examines the CloudFormation resource and discloses attributes.
469 *
470 * @param inspector - tree inspector to collect and process attributes
471 *
472 */
473 inspect(inspector: cdk.TreeInspector): void;
474 protected get cfnProperties(): {
475 [key: string]: any;
476 };
477 protected renderProperties(props: {
478 [key: string]: any;
479 }): {
480 [key: string]: any;
481 };
482}
483export declare namespace CfnHookVersion {
484 /**
485 * The `LoggingConfig` property type specifies logging configuration information for an extension.
486 *
487 * @struct
488 * @stability external
489 *
490 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-hookversion-loggingconfig.html
491 */
492 interface LoggingConfigProperty {
493 /**
494 * The Amazon CloudWatch Logs group to which CloudFormation sends error logging information when invoking the extension's handlers.
495 *
496 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-hookversion-loggingconfig.html#cfn-cloudformation-hookversion-loggingconfig-loggroupname
497 */
498 readonly logGroupName?: string;
499 /**
500 * The Amazon Resource Name (ARN) of the role that CloudFormation should assume when sending log entries to CloudWatch Logs.
501 *
502 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-hookversion-loggingconfig.html#cfn-cloudformation-hookversion-loggingconfig-logrolearn
503 */
504 readonly logRoleArn?: string;
505 }
506}
507/**
508 * Properties for defining a `CfnMacro`
509 *
510 * @struct
511 * @stability external
512 *
513 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html
514 */
515export interface CfnMacroProps {
516 /**
517 * The Amazon Resource Name (ARN) of the underlying AWS Lambda function that you want AWS CloudFormation to invoke when the macro is run.
518 *
519 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-functionname
520 */
521 readonly functionName: string;
522 /**
523 * The name of the macro. The name of the macro must be unique across all macros in the account.
524 *
525 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-name
526 */
527 readonly name: string;
528 /**
529 * A description of the macro.
530 *
531 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-description
532 */
533 readonly description?: string;
534 /**
535 * The CloudWatch Logs group to which AWS CloudFormation sends error logging information when invoking the macro's underlying AWS Lambda function.
536 *
537 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-loggroupname
538 */
539 readonly logGroupName?: string;
540 /**
541 * The ARN of the role AWS CloudFormation should assume when sending log entries to CloudWatch Logs .
542 *
543 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-logrolearn
544 */
545 readonly logRoleArn?: string;
546}
547/**
548 * A CloudFormation `AWS::CloudFormation::Macro`
549 *
550 * The `AWS::CloudFormation::Macro` resource is a CloudFormation resource type that creates a CloudFormation macro to perform custom processing on CloudFormation templates. For more information, see [Using AWS CloudFormation macros to perform custom processing on templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html) .
551 *
552 * @cloudformationResource AWS::CloudFormation::Macro
553 * @stability external
554 *
555 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html
556 */
557export declare class CfnMacro extends cdk.CfnResource implements cdk.IInspectable {
558 /**
559 * The CloudFormation resource type name for this resource class.
560 */
561 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::Macro";
562 /**
563 * A factory method that creates a new instance of this class from an object
564 * containing the CloudFormation properties of this resource.
565 * Used in the @aws-cdk/cloudformation-include module.
566 *
567 * @internal
568 */
569 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnMacro;
570 /**
571 * The Amazon Resource Name (ARN) of the underlying AWS Lambda function that you want AWS CloudFormation to invoke when the macro is run.
572 *
573 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-functionname
574 */
575 functionName: string;
576 /**
577 * The name of the macro. The name of the macro must be unique across all macros in the account.
578 *
579 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-name
580 */
581 name: string;
582 /**
583 * A description of the macro.
584 *
585 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-description
586 */
587 description: string | undefined;
588 /**
589 * The CloudWatch Logs group to which AWS CloudFormation sends error logging information when invoking the macro's underlying AWS Lambda function.
590 *
591 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-loggroupname
592 */
593 logGroupName: string | undefined;
594 /**
595 * The ARN of the role AWS CloudFormation should assume when sending log entries to CloudWatch Logs .
596 *
597 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html#cfn-cloudformation-macro-logrolearn
598 */
599 logRoleArn: string | undefined;
600 /**
601 * Create a new `AWS::CloudFormation::Macro`.
602 *
603 * @param scope - scope in which this resource is defined
604 * @param id - scoped id of the resource
605 * @param props - resource properties
606 */
607 constructor(scope: cdk.Construct, id: string, props: CfnMacroProps);
608 /**
609 * Examines the CloudFormation resource and discloses attributes.
610 *
611 * @param inspector - tree inspector to collect and process attributes
612 *
613 */
614 inspect(inspector: cdk.TreeInspector): void;
615 protected get cfnProperties(): {
616 [key: string]: any;
617 };
618 protected renderProperties(props: {
619 [key: string]: any;
620 }): {
621 [key: string]: any;
622 };
623}
624/**
625 * Properties for defining a `CfnModuleDefaultVersion`
626 *
627 * @struct
628 * @stability external
629 *
630 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html
631 */
632export interface CfnModuleDefaultVersionProps {
633 /**
634 * The Amazon Resource Name (ARN) of the module version to set as the default version.
635 *
636 * Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` .
637 *
638 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html#cfn-cloudformation-moduledefaultversion-arn
639 */
640 readonly arn?: string;
641 /**
642 * The name of the module.
643 *
644 * Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` .
645 *
646 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html#cfn-cloudformation-moduledefaultversion-modulename
647 */
648 readonly moduleName?: string;
649 /**
650 * The ID for the specific version of the module.
651 *
652 * Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` .
653 *
654 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html#cfn-cloudformation-moduledefaultversion-versionid
655 */
656 readonly versionId?: string;
657}
658/**
659 * A CloudFormation `AWS::CloudFormation::ModuleDefaultVersion`
660 *
661 * Specifies the default version of a module. The default version of the module will be used in CloudFormation operations for this account and Region.
662 *
663 * To register a module version, use the `[AWS::CloudFormation::ModuleVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html)` resource.
664 *
665 * For more information using modules, see [Using modules to encapsulate and reuse resource configurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html) and [Registering extensions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-register) in the *CloudFormation User Guide* . For information on developing modules, see [Developing modules](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules.html) in the *CloudFormation CLI User Guide* .
666 *
667 * @cloudformationResource AWS::CloudFormation::ModuleDefaultVersion
668 * @stability external
669 *
670 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html
671 */
672export declare class CfnModuleDefaultVersion extends cdk.CfnResource implements cdk.IInspectable {
673 /**
674 * The CloudFormation resource type name for this resource class.
675 */
676 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::ModuleDefaultVersion";
677 /**
678 * A factory method that creates a new instance of this class from an object
679 * containing the CloudFormation properties of this resource.
680 * Used in the @aws-cdk/cloudformation-include module.
681 *
682 * @internal
683 */
684 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnModuleDefaultVersion;
685 /**
686 * The Amazon Resource Name (ARN) of the module version to set as the default version.
687 *
688 * Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` .
689 *
690 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html#cfn-cloudformation-moduledefaultversion-arn
691 */
692 arn: string | undefined;
693 /**
694 * The name of the module.
695 *
696 * Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` .
697 *
698 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html#cfn-cloudformation-moduledefaultversion-modulename
699 */
700 moduleName: string | undefined;
701 /**
702 * The ID for the specific version of the module.
703 *
704 * Conditional: You must specify either `Arn` , or `ModuleName` and `VersionId` .
705 *
706 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html#cfn-cloudformation-moduledefaultversion-versionid
707 */
708 versionId: string | undefined;
709 /**
710 * Create a new `AWS::CloudFormation::ModuleDefaultVersion`.
711 *
712 * @param scope - scope in which this resource is defined
713 * @param id - scoped id of the resource
714 * @param props - resource properties
715 */
716 constructor(scope: cdk.Construct, id: string, props?: CfnModuleDefaultVersionProps);
717 /**
718 * Examines the CloudFormation resource and discloses attributes.
719 *
720 * @param inspector - tree inspector to collect and process attributes
721 *
722 */
723 inspect(inspector: cdk.TreeInspector): void;
724 protected get cfnProperties(): {
725 [key: string]: any;
726 };
727 protected renderProperties(props: {
728 [key: string]: any;
729 }): {
730 [key: string]: any;
731 };
732}
733/**
734 * Properties for defining a `CfnModuleVersion`
735 *
736 * @struct
737 * @stability external
738 *
739 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html
740 */
741export interface CfnModuleVersionProps {
742 /**
743 * The name of the module being registered.
744 *
745 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html#cfn-cloudformation-moduleversion-modulename
746 */
747 readonly moduleName: string;
748 /**
749 * A URL to the S3 bucket containing the package that contains the template fragment and schema files for the module version to register.
750 *
751 * > The user registering the module version must be able to access the module package in the S3 bucket. That's, the user needs to have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* .
752 *
753 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html#cfn-cloudformation-moduleversion-modulepackage
754 */
755 readonly modulePackage: string;
756}
757/**
758 * A CloudFormation `AWS::CloudFormation::ModuleVersion`
759 *
760 * Registers the specified version of the module with the CloudFormation service. Registering a module makes it available for use in CloudFormation templates in your AWS account and Region.
761 *
762 * To specify a module version as the default version, use the `[AWS::CloudFormation::ModuleDefaultVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html)` resource.
763 *
764 * For more information using modules, see [Using modules to encapsulate and reuse resource configurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html) and [Registering extensions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-register) in the *CloudFormation User Guide* . For information on developing modules, see [Developing modules](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules.html) in the *CloudFormation CLI User Guide* .
765 *
766 * @cloudformationResource AWS::CloudFormation::ModuleVersion
767 * @stability external
768 *
769 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html
770 */
771export declare class CfnModuleVersion extends cdk.CfnResource implements cdk.IInspectable {
772 /**
773 * The CloudFormation resource type name for this resource class.
774 */
775 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::ModuleVersion";
776 /**
777 * A factory method that creates a new instance of this class from an object
778 * containing the CloudFormation properties of this resource.
779 * Used in the @aws-cdk/cloudformation-include module.
780 *
781 * @internal
782 */
783 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnModuleVersion;
784 /**
785 * The Amazon Resource Name (ARN) of the module.
786 * @cloudformationAttribute Arn
787 */
788 readonly attrArn: string;
789 /**
790 * The description of the module.
791 * @cloudformationAttribute Description
792 */
793 readonly attrDescription: string;
794 /**
795 * The URL of a page providing detailed documentation for this module.
796 * @cloudformationAttribute DocumentationUrl
797 */
798 readonly attrDocumentationUrl: string;
799 /**
800 * Whether the specified module version is set as the default version.
801 * @cloudformationAttribute IsDefaultVersion
802 */
803 readonly attrIsDefaultVersion: cdk.IResolvable;
804 /**
805 * The schema that defines the module.
806 * @cloudformationAttribute Schema
807 */
808 readonly attrSchema: string;
809 /**
810 * When the specified module version was registered.
811 * @cloudformationAttribute TimeCreated
812 */
813 readonly attrTimeCreated: string;
814 /**
815 * The ID of this version of the module.
816 * @cloudformationAttribute VersionId
817 */
818 readonly attrVersionId: string;
819 /**
820 * The scope at which the module is visible and usable in CloudFormation operations.
821 *
822 * Valid values include:
823 *
824 * - `PRIVATE` : The module is only visible and usable within the account in which it's registered.
825 * - `PUBLIC` : The module is publicly visible and usable within any Amazon account.
826 * @cloudformationAttribute Visibility
827 */
828 readonly attrVisibility: string;
829 /**
830 * The name of the module being registered.
831 *
832 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html#cfn-cloudformation-moduleversion-modulename
833 */
834 moduleName: string;
835 /**
836 * A URL to the S3 bucket containing the package that contains the template fragment and schema files for the module version to register.
837 *
838 * > The user registering the module version must be able to access the module package in the S3 bucket. That's, the user needs to have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* .
839 *
840 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html#cfn-cloudformation-moduleversion-modulepackage
841 */
842 modulePackage: string;
843 /**
844 * Create a new `AWS::CloudFormation::ModuleVersion`.
845 *
846 * @param scope - scope in which this resource is defined
847 * @param id - scoped id of the resource
848 * @param props - resource properties
849 */
850 constructor(scope: cdk.Construct, id: string, props: CfnModuleVersionProps);
851 /**
852 * Examines the CloudFormation resource and discloses attributes.
853 *
854 * @param inspector - tree inspector to collect and process attributes
855 *
856 */
857 inspect(inspector: cdk.TreeInspector): void;
858 protected get cfnProperties(): {
859 [key: string]: any;
860 };
861 protected renderProperties(props: {
862 [key: string]: any;
863 }): {
864 [key: string]: any;
865 };
866}
867/**
868 * Properties for defining a `CfnPublicTypeVersion`
869 *
870 * @struct
871 * @stability external
872 *
873 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html
874 */
875export interface CfnPublicTypeVersionProps {
876 /**
877 * The Amazon Resource Number (ARN) of the extension.
878 *
879 * Conditional: You must specify `Arn` , or `TypeName` and `Type` .
880 *
881 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-arn
882 */
883 readonly arn?: string;
884 /**
885 * The S3 bucket to which CloudFormation delivers the contract test execution logs.
886 *
887 * CloudFormation delivers the logs by the time contract testing has completed and the extension has been assigned a test type status of `PASSED` or `FAILED` .
888 *
889 * The user initiating the stack operation must be able to access items in the specified S3 bucket. Specifically, the user needs the following permissions:
890 *
891 * - GetObject
892 * - PutObject
893 *
894 * For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html) in the *AWS Identity and Access Management User Guide* .
895 *
896 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-logdeliverybucket
897 */
898 readonly logDeliveryBucket?: string;
899 /**
900 * The version number to assign to this version of the extension.
901 *
902 * Use the following format, and adhere to semantic versioning when assigning a version number to your extension:
903 *
904 * `MAJOR.MINOR.PATCH`
905 *
906 * For more information, see [Semantic Versioning 2.0.0](https://docs.aws.amazon.com/https://semver.org/) .
907 *
908 * If you don't specify a version number, CloudFormation increments the version number by one minor version release.
909 *
910 * You cannot specify a version number the first time you publish a type. AWS CloudFormation automatically sets the first version number to be `1.0.0` .
911 *
912 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-publicversionnumber
913 */
914 readonly publicVersionNumber?: string;
915 /**
916 * The type of the extension to test.
917 *
918 * Conditional: You must specify `Arn` , or `TypeName` and `Type` .
919 *
920 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-type
921 */
922 readonly type?: string;
923 /**
924 * The name of the extension to test.
925 *
926 * Conditional: You must specify `Arn` , or `TypeName` and `Type` .
927 *
928 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-typename
929 */
930 readonly typeName?: string;
931}
932/**
933 * A CloudFormation `AWS::CloudFormation::PublicTypeVersion`
934 *
935 * Tests and publishes a registered extension as a public, third-party extension.
936 *
937 * CloudFormation first tests the extension to make sure it meets all necessary requirements for being published in the CloudFormation registry. If it does, CloudFormation then publishes it to the registry as a public third-party extension in this Region. Public extensions are available for use by all CloudFormation users.
938 *
939 * - For resource types, testing includes passing all contracts tests defined for the type.
940 * - For modules, testing includes determining if the module's model meets all necessary requirements.
941 *
942 * For more information, see [Testing your public extension prior to publishing](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-testing) in the *CloudFormation CLI User Guide* .
943 *
944 * If you don't specify a version, CloudFormation uses the default version of the extension in your account and Region for testing.
945 *
946 * To perform testing, CloudFormation assumes the execution role specified when the type was registered.
947 *
948 * An extension must have a test status of `PASSED` before it can be published. For more information, see [Publishing extensions to make them available for public use](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-publish.html) in the *CloudFormation CLI User Guide* .
949 *
950 * @cloudformationResource AWS::CloudFormation::PublicTypeVersion
951 * @stability external
952 *
953 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html
954 */
955export declare class CfnPublicTypeVersion extends cdk.CfnResource implements cdk.IInspectable {
956 /**
957 * The CloudFormation resource type name for this resource class.
958 */
959 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::PublicTypeVersion";
960 /**
961 * A factory method that creates a new instance of this class from an object
962 * containing the CloudFormation properties of this resource.
963 * Used in the @aws-cdk/cloudformation-include module.
964 *
965 * @internal
966 */
967 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnPublicTypeVersion;
968 /**
969 * The Amazon Resource Number (ARN) assigned to the public extension upon publication.
970 * @cloudformationAttribute PublicTypeArn
971 */
972 readonly attrPublicTypeArn: string;
973 /**
974 * The publisher ID of the extension publisher.
975 * @cloudformationAttribute PublisherId
976 */
977 readonly attrPublisherId: string;
978 /**
979 * The Amazon Resource Number (ARN) assigned to this version of the extension.
980 * @cloudformationAttribute TypeVersionArn
981 */
982 readonly attrTypeVersionArn: string;
983 /**
984 * The Amazon Resource Number (ARN) of the extension.
985 *
986 * Conditional: You must specify `Arn` , or `TypeName` and `Type` .
987 *
988 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-arn
989 */
990 arn: string | undefined;
991 /**
992 * The S3 bucket to which CloudFormation delivers the contract test execution logs.
993 *
994 * CloudFormation delivers the logs by the time contract testing has completed and the extension has been assigned a test type status of `PASSED` or `FAILED` .
995 *
996 * The user initiating the stack operation must be able to access items in the specified S3 bucket. Specifically, the user needs the following permissions:
997 *
998 * - GetObject
999 * - PutObject
1000 *
1001 * For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html) in the *AWS Identity and Access Management User Guide* .
1002 *
1003 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-logdeliverybucket
1004 */
1005 logDeliveryBucket: string | undefined;
1006 /**
1007 * The version number to assign to this version of the extension.
1008 *
1009 * Use the following format, and adhere to semantic versioning when assigning a version number to your extension:
1010 *
1011 * `MAJOR.MINOR.PATCH`
1012 *
1013 * For more information, see [Semantic Versioning 2.0.0](https://docs.aws.amazon.com/https://semver.org/) .
1014 *
1015 * If you don't specify a version number, CloudFormation increments the version number by one minor version release.
1016 *
1017 * You cannot specify a version number the first time you publish a type. AWS CloudFormation automatically sets the first version number to be `1.0.0` .
1018 *
1019 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-publicversionnumber
1020 */
1021 publicVersionNumber: string | undefined;
1022 /**
1023 * The type of the extension to test.
1024 *
1025 * Conditional: You must specify `Arn` , or `TypeName` and `Type` .
1026 *
1027 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-type
1028 */
1029 type: string | undefined;
1030 /**
1031 * The name of the extension to test.
1032 *
1033 * Conditional: You must specify `Arn` , or `TypeName` and `Type` .
1034 *
1035 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html#cfn-cloudformation-publictypeversion-typename
1036 */
1037 typeName: string | undefined;
1038 /**
1039 * Create a new `AWS::CloudFormation::PublicTypeVersion`.
1040 *
1041 * @param scope - scope in which this resource is defined
1042 * @param id - scoped id of the resource
1043 * @param props - resource properties
1044 */
1045 constructor(scope: cdk.Construct, id: string, props?: CfnPublicTypeVersionProps);
1046 /**
1047 * Examines the CloudFormation resource and discloses attributes.
1048 *
1049 * @param inspector - tree inspector to collect and process attributes
1050 *
1051 */
1052 inspect(inspector: cdk.TreeInspector): void;
1053 protected get cfnProperties(): {
1054 [key: string]: any;
1055 };
1056 protected renderProperties(props: {
1057 [key: string]: any;
1058 }): {
1059 [key: string]: any;
1060 };
1061}
1062/**
1063 * Properties for defining a `CfnPublisher`
1064 *
1065 * @struct
1066 * @stability external
1067 *
1068 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html
1069 */
1070export interface CfnPublisherProps {
1071 /**
1072 * Whether you accept the [Terms and Conditions](https://docs.aws.amazon.com/https://cloudformation-registry-documents.s3.amazonaws.com/Terms_and_Conditions_for_AWS_CloudFormation_Registry_Publishers.pdf) for publishing extensions in the CloudFormation registry. You must accept the terms and conditions in order to register to publish public extensions to the CloudFormation registry.
1073 *
1074 * The default is `false` .
1075 *
1076 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html#cfn-cloudformation-publisher-accepttermsandconditions
1077 */
1078 readonly acceptTermsAndConditions: boolean | cdk.IResolvable;
1079 /**
1080 * If you are using a Bitbucket or GitHub account for identity verification, the Amazon Resource Name (ARN) for your connection to that account.
1081 *
1082 * For more information, see [Registering your account to publish CloudFormation extensions](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs) in the *CloudFormation CLI User Guide* .
1083 *
1084 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html#cfn-cloudformation-publisher-connectionarn
1085 */
1086 readonly connectionArn?: string;
1087}
1088/**
1089 * A CloudFormation `AWS::CloudFormation::Publisher`
1090 *
1091 * Registers your account as a publisher of public extensions in the CloudFormation registry. Public extensions are available for use by all CloudFormation users.
1092 *
1093 * For information on requirements for registering as a public extension publisher, see [Registering your account to publish CloudFormation extensions](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs) in the *CloudFormation CLI User Guide* .
1094 *
1095 * @cloudformationResource AWS::CloudFormation::Publisher
1096 * @stability external
1097 *
1098 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html
1099 */
1100export declare class CfnPublisher extends cdk.CfnResource implements cdk.IInspectable {
1101 /**
1102 * The CloudFormation resource type name for this resource class.
1103 */
1104 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::Publisher";
1105 /**
1106 * A factory method that creates a new instance of this class from an object
1107 * containing the CloudFormation properties of this resource.
1108 * Used in the @aws-cdk/cloudformation-include module.
1109 *
1110 * @internal
1111 */
1112 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnPublisher;
1113 /**
1114 * The type of account used as the identity provider when registering this publisher with CloudFormation .
1115 *
1116 * Values include: `AWS_Marketplace` | `Bitbucket` | `GitHub` .
1117 * @cloudformationAttribute IdentityProvider
1118 */
1119 readonly attrIdentityProvider: string;
1120 /**
1121 * The ID of the extension publisher. This publisher ID applies to your account in all AWS Regions .
1122 * @cloudformationAttribute PublisherId
1123 */
1124 readonly attrPublisherId: string;
1125 /**
1126 * The URL to the publisher's profile with the identity provider.
1127 * @cloudformationAttribute PublisherProfile
1128 */
1129 readonly attrPublisherProfile: string;
1130 /**
1131 * Whether the publisher is verified.
1132 * @cloudformationAttribute PublisherStatus
1133 */
1134 readonly attrPublisherStatus: string;
1135 /**
1136 * Whether you accept the [Terms and Conditions](https://docs.aws.amazon.com/https://cloudformation-registry-documents.s3.amazonaws.com/Terms_and_Conditions_for_AWS_CloudFormation_Registry_Publishers.pdf) for publishing extensions in the CloudFormation registry. You must accept the terms and conditions in order to register to publish public extensions to the CloudFormation registry.
1137 *
1138 * The default is `false` .
1139 *
1140 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html#cfn-cloudformation-publisher-accepttermsandconditions
1141 */
1142 acceptTermsAndConditions: boolean | cdk.IResolvable;
1143 /**
1144 * If you are using a Bitbucket or GitHub account for identity verification, the Amazon Resource Name (ARN) for your connection to that account.
1145 *
1146 * For more information, see [Registering your account to publish CloudFormation extensions](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs) in the *CloudFormation CLI User Guide* .
1147 *
1148 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html#cfn-cloudformation-publisher-connectionarn
1149 */
1150 connectionArn: string | undefined;
1151 /**
1152 * Create a new `AWS::CloudFormation::Publisher`.
1153 *
1154 * @param scope - scope in which this resource is defined
1155 * @param id - scoped id of the resource
1156 * @param props - resource properties
1157 */
1158 constructor(scope: cdk.Construct, id: string, props: CfnPublisherProps);
1159 /**
1160 * Examines the CloudFormation resource and discloses attributes.
1161 *
1162 * @param inspector - tree inspector to collect and process attributes
1163 *
1164 */
1165 inspect(inspector: cdk.TreeInspector): void;
1166 protected get cfnProperties(): {
1167 [key: string]: any;
1168 };
1169 protected renderProperties(props: {
1170 [key: string]: any;
1171 }): {
1172 [key: string]: any;
1173 };
1174}
1175/**
1176 * Properties for defining a `CfnResourceDefaultVersion`
1177 *
1178 * @struct
1179 * @stability external
1180 *
1181 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html
1182 */
1183export interface CfnResourceDefaultVersionProps {
1184 /**
1185 * The name of the resource.
1186 *
1187 * Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
1188 *
1189 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html#cfn-cloudformation-resourcedefaultversion-typename
1190 */
1191 readonly typeName?: string;
1192 /**
1193 * The Amazon Resource Name (ARN) of the resource version.
1194 *
1195 * Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
1196 *
1197 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html#cfn-cloudformation-resourcedefaultversion-typeversionarn
1198 */
1199 readonly typeVersionArn?: string;
1200 /**
1201 * The ID of a specific version of the resource. The version ID is the value at the end of the Amazon Resource Name (ARN) assigned to the resource version when it's registered.
1202 *
1203 * Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
1204 *
1205 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html#cfn-cloudformation-resourcedefaultversion-versionid
1206 */
1207 readonly versionId?: string;
1208}
1209/**
1210 * A CloudFormation `AWS::CloudFormation::ResourceDefaultVersion`
1211 *
1212 * Specifies the default version of a resource. The default version of a resource will be used in CloudFormation operations.
1213 *
1214 * @cloudformationResource AWS::CloudFormation::ResourceDefaultVersion
1215 * @stability external
1216 *
1217 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html
1218 */
1219export declare class CfnResourceDefaultVersion extends cdk.CfnResource implements cdk.IInspectable {
1220 /**
1221 * The CloudFormation resource type name for this resource class.
1222 */
1223 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::ResourceDefaultVersion";
1224 /**
1225 * A factory method that creates a new instance of this class from an object
1226 * containing the CloudFormation properties of this resource.
1227 * Used in the @aws-cdk/cloudformation-include module.
1228 *
1229 * @internal
1230 */
1231 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnResourceDefaultVersion;
1232 /**
1233 * The Amazon Resource Name (ARN) of the resource.
1234 * @cloudformationAttribute Arn
1235 */
1236 readonly attrArn: string;
1237 /**
1238 * The name of the resource.
1239 *
1240 * Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
1241 *
1242 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html#cfn-cloudformation-resourcedefaultversion-typename
1243 */
1244 typeName: string | undefined;
1245 /**
1246 * The Amazon Resource Name (ARN) of the resource version.
1247 *
1248 * Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
1249 *
1250 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html#cfn-cloudformation-resourcedefaultversion-typeversionarn
1251 */
1252 typeVersionArn: string | undefined;
1253 /**
1254 * The ID of a specific version of the resource. The version ID is the value at the end of the Amazon Resource Name (ARN) assigned to the resource version when it's registered.
1255 *
1256 * Conditional: You must specify either `TypeVersionArn` , or `TypeName` and `VersionId` .
1257 *
1258 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html#cfn-cloudformation-resourcedefaultversion-versionid
1259 */
1260 versionId: string | undefined;
1261 /**
1262 * Create a new `AWS::CloudFormation::ResourceDefaultVersion`.
1263 *
1264 * @param scope - scope in which this resource is defined
1265 * @param id - scoped id of the resource
1266 * @param props - resource properties
1267 */
1268 constructor(scope: cdk.Construct, id: string, props?: CfnResourceDefaultVersionProps);
1269 /**
1270 * Examines the CloudFormation resource and discloses attributes.
1271 *
1272 * @param inspector - tree inspector to collect and process attributes
1273 *
1274 */
1275 inspect(inspector: cdk.TreeInspector): void;
1276 protected get cfnProperties(): {
1277 [key: string]: any;
1278 };
1279 protected renderProperties(props: {
1280 [key: string]: any;
1281 }): {
1282 [key: string]: any;
1283 };
1284}
1285/**
1286 * Properties for defining a `CfnResourceVersion`
1287 *
1288 * @struct
1289 * @stability external
1290 *
1291 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html
1292 */
1293export interface CfnResourceVersionProps {
1294 /**
1295 * A URL to the S3 bucket containing the resource project package that contains the necessary files for the resource you want to register.
1296 *
1297 * For information on generating a schema handler package for the resource you want to register, see [submit](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) in the *CloudFormation CLI User Guide* .
1298 *
1299 * > The user registering the resource must be able to access the package in the S3 bucket. That is, the user needs to have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the schema handler package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* .
1300 *
1301 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-schemahandlerpackage
1302 */
1303 readonly schemaHandlerPackage: string;
1304 /**
1305 * The name of the resource being registered.
1306 *
1307 * We recommend that resource names adhere to the following pattern: *company_or_organization* :: *service* :: *type* .
1308 *
1309 * > The following organization namespaces are reserved and can't be used in your resource names:
1310 * >
1311 * > - `Alexa`
1312 * > - `AMZN`
1313 * > - `Amazon`
1314 * > - `AWS`
1315 * > - `Custom`
1316 * > - `Dev`
1317 *
1318 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-typename
1319 */
1320 readonly typeName: string;
1321 /**
1322 * The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. If your resource calls AWS APIs in any of its handlers, you must create an *[IAM execution role](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
1323 *
1324 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-executionrolearn
1325 */
1326 readonly executionRoleArn?: string;
1327 /**
1328 * Logging configuration information for a resource.
1329 *
1330 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-loggingconfig
1331 */
1332 readonly loggingConfig?: CfnResourceVersion.LoggingConfigProperty | cdk.IResolvable;
1333}
1334/**
1335 * A CloudFormation `AWS::CloudFormation::ResourceVersion`
1336 *
1337 * Registers a resource version with the CloudFormation service. Registering a resource version makes it available for use in CloudFormation templates in your AWS account , and includes:
1338 *
1339 * - Validating the resource schema.
1340 * - Determining which handlers, if any, have been specified for the resource.
1341 * - Making the resource available for use in your account.
1342 *
1343 * For more information on how to develop resources and ready them for registration, see [Creating Resource Providers](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-types.html) in the *CloudFormation CLI User Guide* .
1344 *
1345 * You can have a maximum of 50 resource versions registered at a time. This maximum is per account and per Region.
1346 *
1347 * @cloudformationResource AWS::CloudFormation::ResourceVersion
1348 * @stability external
1349 *
1350 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html
1351 */
1352export declare class CfnResourceVersion extends cdk.CfnResource implements cdk.IInspectable {
1353 /**
1354 * The CloudFormation resource type name for this resource class.
1355 */
1356 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::ResourceVersion";
1357 /**
1358 * A factory method that creates a new instance of this class from an object
1359 * containing the CloudFormation properties of this resource.
1360 * Used in the @aws-cdk/cloudformation-include module.
1361 *
1362 * @internal
1363 */
1364 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnResourceVersion;
1365 /**
1366 * The Amazon Resource Name (ARN) of the resource version.
1367 * @cloudformationAttribute Arn
1368 */
1369 readonly attrArn: string;
1370 /**
1371 * Whether the resource version is set as the default version.
1372 * @cloudformationAttribute IsDefaultVersion
1373 */
1374 readonly attrIsDefaultVersion: cdk.IResolvable;
1375 /**
1376 * The provisioning behavior of the resource type. CloudFormation determines the provisioning type during registration, based on the types of handlers in the schema handler package submitted.
1377 *
1378 * Valid values include:
1379 *
1380 * - `FULLY_MUTABLE` : The resource type includes an update handler to process updates to the type during stack update operations.
1381 * - `IMMUTABLE` : The resource type doesn't include an update handler, so the type can't be updated and must instead be replaced during stack update operations.
1382 * - `NON_PROVISIONABLE` : The resource type doesn't include all the following handlers, and therefore can't actually be provisioned.
1383 *
1384 * - create
1385 * - read
1386 * - delete
1387 * @cloudformationAttribute ProvisioningType
1388 */
1389 readonly attrProvisioningType: string;
1390 /**
1391 * The Amazon Resource Name (ARN) of the resource.
1392 * @cloudformationAttribute TypeArn
1393 */
1394 readonly attrTypeArn: string;
1395 /**
1396 * The ID of a specific version of the resource. The version ID is the value at the end of the Amazon Resource Name (ARN) assigned to the resource version when it is registered.
1397 * @cloudformationAttribute VersionId
1398 */
1399 readonly attrVersionId: string;
1400 /**
1401 * The scope at which the resource is visible and usable in CloudFormation operations.
1402 *
1403 * Valid values include:
1404 *
1405 * - `PRIVATE` : The resource is only visible and usable within the account in which it's registered. CloudFormation marks any resources you register as `PRIVATE` .
1406 * - `PUBLIC` : The resource is publicly visible and usable within any Amazon account.
1407 * @cloudformationAttribute Visibility
1408 */
1409 readonly attrVisibility: string;
1410 /**
1411 * A URL to the S3 bucket containing the resource project package that contains the necessary files for the resource you want to register.
1412 *
1413 * For information on generating a schema handler package for the resource you want to register, see [submit](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) in the *CloudFormation CLI User Guide* .
1414 *
1415 * > The user registering the resource must be able to access the package in the S3 bucket. That is, the user needs to have [GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) permissions for the schema handler package. For more information, see [Actions, Resources, and Condition Keys for Amazon S3](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) in the *AWS Identity and Access Management User Guide* .
1416 *
1417 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-schemahandlerpackage
1418 */
1419 schemaHandlerPackage: string;
1420 /**
1421 * The name of the resource being registered.
1422 *
1423 * We recommend that resource names adhere to the following pattern: *company_or_organization* :: *service* :: *type* .
1424 *
1425 * > The following organization namespaces are reserved and can't be used in your resource names:
1426 * >
1427 * > - `Alexa`
1428 * > - `AMZN`
1429 * > - `Amazon`
1430 * > - `AWS`
1431 * > - `Custom`
1432 * > - `Dev`
1433 *
1434 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-typename
1435 */
1436 typeName: string;
1437 /**
1438 * The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. If your resource calls AWS APIs in any of its handlers, you must create an *[IAM execution role](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
1439 *
1440 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-executionrolearn
1441 */
1442 executionRoleArn: string | undefined;
1443 /**
1444 * Logging configuration information for a resource.
1445 *
1446 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html#cfn-cloudformation-resourceversion-loggingconfig
1447 */
1448 loggingConfig: CfnResourceVersion.LoggingConfigProperty | cdk.IResolvable | undefined;
1449 /**
1450 * Create a new `AWS::CloudFormation::ResourceVersion`.
1451 *
1452 * @param scope - scope in which this resource is defined
1453 * @param id - scoped id of the resource
1454 * @param props - resource properties
1455 */
1456 constructor(scope: cdk.Construct, id: string, props: CfnResourceVersionProps);
1457 /**
1458 * Examines the CloudFormation resource and discloses attributes.
1459 *
1460 * @param inspector - tree inspector to collect and process attributes
1461 *
1462 */
1463 inspect(inspector: cdk.TreeInspector): void;
1464 protected get cfnProperties(): {
1465 [key: string]: any;
1466 };
1467 protected renderProperties(props: {
1468 [key: string]: any;
1469 }): {
1470 [key: string]: any;
1471 };
1472}
1473export declare namespace CfnResourceVersion {
1474 /**
1475 * Logging configuration information for a resource.
1476 *
1477 * @struct
1478 * @stability external
1479 *
1480 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-resourceversion-loggingconfig.html
1481 */
1482 interface LoggingConfigProperty {
1483 /**
1484 * The Amazon CloudWatch log group to which CloudFormation sends error logging information when invoking the type's handlers.
1485 *
1486 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-resourceversion-loggingconfig.html#cfn-cloudformation-resourceversion-loggingconfig-loggroupname
1487 */
1488 readonly logGroupName?: string;
1489 /**
1490 * The ARN of the role that CloudFormation should assume when sending log entries to CloudWatch logs.
1491 *
1492 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-resourceversion-loggingconfig.html#cfn-cloudformation-resourceversion-loggingconfig-logrolearn
1493 */
1494 readonly logRoleArn?: string;
1495 }
1496}
1497/**
1498 * Properties for defining a `CfnStack`
1499 *
1500 * @struct
1501 * @stability external
1502 *
1503 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html
1504 */
1505export interface CfnStackProps {
1506 /**
1507 * Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) .
1508 *
1509 * Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
1510 *
1511 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl
1512 */
1513 readonly templateUrl: string;
1514 /**
1515 * The Amazon Simple Notification Service (Amazon SNS) topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI).
1516 *
1517 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-notificationarns
1518 */
1519 readonly notificationArns?: string[];
1520 /**
1521 * The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter.
1522 *
1523 * > If you use the `Ref` function to pass a parameter value to a nested stack, comma-delimited list parameters must be of type `String` . In other words, you can't pass values that are of type `CommaDelimitedList` to nested stacks.
1524 *
1525 * Conditional. Required if the nested stack requires input parameters.
1526 *
1527 * Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
1528 *
1529 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-parameters
1530 */
1531 readonly parameters?: {
1532 [key: string]: (string);
1533 } | cdk.IResolvable;
1534 /**
1535 * Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.
1536 *
1537 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-tags
1538 */
1539 readonly tags?: cdk.CfnTag[];
1540 /**
1541 * The length of time, in minutes, that CloudFormation waits for the nested stack to reach the `CREATE_COMPLETE` state. The default is no timeout. When CloudFormation detects that the nested stack has reached the `CREATE_COMPLETE` state, it marks the nested stack resource as `CREATE_COMPLETE` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches `CREATE_COMPLETE` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack.
1542 *
1543 * Updates aren't supported.
1544 *
1545 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-timeoutinminutes
1546 */
1547 readonly timeoutInMinutes?: number;
1548}
1549/**
1550 * A CloudFormation `AWS::CloudFormation::Stack`
1551 *
1552 * The `AWS::CloudFormation::Stack` resource nests a stack as a resource in a top-level template.
1553 *
1554 * You can add output values from a nested stack within the containing template. You use the [GetAtt](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) function with the nested stack's logical name and the name of the output value in the nested stack in the format `Outputs. *NestedStackOutputName*` .
1555 *
1556 * > We strongly recommend that updates to nested stacks are run from the parent stack.
1557 *
1558 * When you apply template changes to update a top-level stack, CloudFormation updates the top-level stack and initiates an update to its nested stacks. CloudFormation updates the resources of modified nested stacks, but doesn't update the resources of unmodified nested stacks. For more information, see [CloudFormation stack updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html) .
1559 *
1560 * > You must acknowledge IAM capabilities for nested stacks that contain IAM resources. Also, verify that you have cancel update stack permissions, which is required if an update rolls back. For more information about IAM and CloudFormation , see [Controlling access with AWS Identity and Access Management](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html) .
1561 *
1562 * @cloudformationResource AWS::CloudFormation::Stack
1563 * @stability external
1564 *
1565 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html
1566 */
1567export declare class CfnStack extends cdk.CfnResource implements cdk.IInspectable {
1568 /**
1569 * The CloudFormation resource type name for this resource class.
1570 */
1571 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::Stack";
1572 /**
1573 * A factory method that creates a new instance of this class from an object
1574 * containing the CloudFormation properties of this resource.
1575 * Used in the @aws-cdk/cloudformation-include module.
1576 *
1577 * @internal
1578 */
1579 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnStack;
1580 /**
1581 * Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket. For more information, see [Template anatomy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) .
1582 *
1583 * Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
1584 *
1585 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl
1586 */
1587 templateUrl: string;
1588 /**
1589 * The Amazon Simple Notification Service (Amazon SNS) topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI).
1590 *
1591 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-notificationarns
1592 */
1593 notificationArns: string[] | undefined;
1594 /**
1595 * The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter.
1596 *
1597 * > If you use the `Ref` function to pass a parameter value to a nested stack, comma-delimited list parameters must be of type `String` . In other words, you can't pass values that are of type `CommaDelimitedList` to nested stacks.
1598 *
1599 * Conditional. Required if the nested stack requires input parameters.
1600 *
1601 * Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
1602 *
1603 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-parameters
1604 */
1605 parameters: {
1606 [key: string]: (string);
1607 } | cdk.IResolvable | undefined;
1608 /**
1609 * Key-value pairs to associate with this stack. AWS CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.
1610 *
1611 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-tags
1612 */
1613 readonly tags: cdk.TagManager;
1614 /**
1615 * The length of time, in minutes, that CloudFormation waits for the nested stack to reach the `CREATE_COMPLETE` state. The default is no timeout. When CloudFormation detects that the nested stack has reached the `CREATE_COMPLETE` state, it marks the nested stack resource as `CREATE_COMPLETE` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches `CREATE_COMPLETE` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack.
1616 *
1617 * Updates aren't supported.
1618 *
1619 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-timeoutinminutes
1620 */
1621 timeoutInMinutes: number | undefined;
1622 /**
1623 * Create a new `AWS::CloudFormation::Stack`.
1624 *
1625 * @param scope - scope in which this resource is defined
1626 * @param id - scoped id of the resource
1627 * @param props - resource properties
1628 */
1629 constructor(scope: cdk.Construct, id: string, props: CfnStackProps);
1630 /**
1631 * Examines the CloudFormation resource and discloses attributes.
1632 *
1633 * @param inspector - tree inspector to collect and process attributes
1634 *
1635 */
1636 inspect(inspector: cdk.TreeInspector): void;
1637 protected get cfnProperties(): {
1638 [key: string]: any;
1639 };
1640 protected renderProperties(props: {
1641 [key: string]: any;
1642 }): {
1643 [key: string]: any;
1644 };
1645}
1646/**
1647 * Properties for defining a `CfnStackSet`
1648 *
1649 * @struct
1650 * @stability external
1651 *
1652 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html
1653 */
1654export interface CfnStackSetProps {
1655 /**
1656 * Describes how the IAM roles required for stack set operations are created.
1657 *
1658 * - With `SELF_MANAGED` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see [Grant Self-Managed Stack Set Permissions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html) .
1659 * - With `SERVICE_MANAGED` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see [Grant Service-Managed Stack Set Permissions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html) .
1660 *
1661 * *Allowed Values* : `SERVICE_MANAGED` | `SELF_MANAGED`
1662 *
1663 * > The `PermissionModel` property is required.
1664 *
1665 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-permissionmodel
1666 */
1667 readonly permissionModel: string;
1668 /**
1669 * The name to associate with the stack set. The name must be unique in the Region where you create your stack set.
1670 *
1671 * *Maximum* : `128`
1672 *
1673 * *Pattern* : `^[a-zA-Z][a-zA-Z0-9-]{0,127}$`
1674 *
1675 * > The `StackSetName` property is required.
1676 *
1677 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-stacksetname
1678 */
1679 readonly stackSetName: string;
1680 /**
1681 * The Amazon Resource Number (ARN) of the IAM role to use to create this stack set. Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account.
1682 *
1683 * Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see [Prerequisites: Granting Permissions for Stack Set Operations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html) in the *AWS CloudFormation User Guide* .
1684 *
1685 * *Minimum* : `20`
1686 *
1687 * *Maximum* : `2048`
1688 *
1689 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-administrationrolearn
1690 */
1691 readonly administrationRoleArn?: string;
1692 /**
1693 * [ `Service-managed` permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).
1694 *
1695 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-autodeployment
1696 */
1697 readonly autoDeployment?: CfnStackSet.AutoDeploymentProperty | cdk.IResolvable;
1698 /**
1699 * [Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.
1700 *
1701 * By default, `SELF` is specified. Use `SELF` for stack sets with self-managed permissions.
1702 *
1703 * - To create a stack set with service-managed permissions while signed in to the management account, specify `SELF` .
1704 * - To create a stack set with service-managed permissions while signed in to a delegated administrator account, specify `DELEGATED_ADMIN` .
1705 *
1706 * Your AWS account must be registered as a delegated admin in the management account. For more information, see [Register a delegated administrator](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html) in the *AWS CloudFormation User Guide* .
1707 *
1708 * Stack sets with service-managed permissions are created in the management account, including stack sets that are created by delegated administrators.
1709 *
1710 * *Valid Values* : `SELF` | `DELEGATED_ADMIN`
1711 *
1712 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-callas
1713 */
1714 readonly callAs?: string;
1715 /**
1716 * The capabilities that are allowed in the stack set. Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new AWS Identity and Access Management ( IAM ) users. For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) .
1717 *
1718 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-capabilities
1719 */
1720 readonly capabilities?: string[];
1721 /**
1722 * A description of the stack set.
1723 *
1724 * *Minimum* : `1`
1725 *
1726 * *Maximum* : `1024`
1727 *
1728 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-description
1729 */
1730 readonly description?: string;
1731 /**
1732 * The name of the IAM execution role to use to create the stack set. If you don't specify an execution role, AWS CloudFormation uses the `AWSCloudFormationStackSetExecutionRole` role for the stack set operation.
1733 *
1734 * *Minimum* : `1`
1735 *
1736 * *Maximum* : `64`
1737 *
1738 * *Pattern* : `[a-zA-Z_0-9+=,.@-]+`
1739 *
1740 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-executionrolename
1741 */
1742 readonly executionRoleName?: string;
1743 /**
1744 * Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations.
1745 *
1746 * When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order.
1747 *
1748 * > If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting.
1749 * >
1750 * > You can't modify your stack set's execution configuration while there are running or queued operations for that stack set.
1751 *
1752 * When inactive (default), StackSets performs one operation at a time in request order.
1753 *
1754 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-managedexecution
1755 */
1756 readonly managedExecution?: any | cdk.IResolvable;
1757 /**
1758 * The user-specified preferences for how AWS CloudFormation performs a stack set operation.
1759 *
1760 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-operationpreferences
1761 */
1762 readonly operationPreferences?: CfnStackSet.OperationPreferencesProperty | cdk.IResolvable;
1763 /**
1764 * The input parameters for the stack set template.
1765 *
1766 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-parameters
1767 */
1768 readonly parameters?: Array<CfnStackSet.ParameterProperty | cdk.IResolvable> | cdk.IResolvable;
1769 /**
1770 * A group of stack instances with parameters in some specific accounts and Regions.
1771 *
1772 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-stackinstancesgroup
1773 */
1774 readonly stackInstancesGroup?: Array<CfnStackSet.StackInstancesProperty | cdk.IResolvable> | cdk.IResolvable;
1775 /**
1776 * The key-value pairs to associate with this stack set and the stacks created from it. AWS CloudFormation also propagates these tags to supported resources that are created in the stacks. A maximum number of 50 tags can be specified.
1777 *
1778 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-tags
1779 */
1780 readonly tags?: cdk.CfnTag[];
1781 /**
1782 * The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes.
1783 *
1784 * You must include either `TemplateURL` or `TemplateBody` in a StackSet, but you can't use both. Dynamic references in the `TemplateBody` may not work correctly in all cases. It's recommended to pass templates containing dynamic references through `TemplateUrl` instead.
1785 *
1786 * *Minimum* : `1`
1787 *
1788 * *Maximum* : `51200`
1789 *
1790 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-templatebody
1791 */
1792 readonly templateBody?: string;
1793 /**
1794 * Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket.
1795 *
1796 * You must include either `TemplateURL` or `TemplateBody` in a StackSet, but you can't use both.
1797 *
1798 * *Minimum* : `1`
1799 *
1800 * *Maximum* : `1024`
1801 *
1802 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-templateurl
1803 */
1804 readonly templateUrl?: string;
1805}
1806/**
1807 * A CloudFormation `AWS::CloudFormation::StackSet`
1808 *
1809 * The `AWS::CloudFormation::StackSet` enables you to provision stacks into AWS accounts and across Regions by using a single CloudFormation template. In the stack set, you specify the template to use, in addition to any parameters and capabilities that the template requires.
1810 *
1811 * @cloudformationResource AWS::CloudFormation::StackSet
1812 * @stability external
1813 *
1814 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html
1815 */
1816export declare class CfnStackSet extends cdk.CfnResource implements cdk.IInspectable {
1817 /**
1818 * The CloudFormation resource type name for this resource class.
1819 */
1820 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::StackSet";
1821 /**
1822 * A factory method that creates a new instance of this class from an object
1823 * containing the CloudFormation properties of this resource.
1824 * Used in the @aws-cdk/cloudformation-include module.
1825 *
1826 * @internal
1827 */
1828 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnStackSet;
1829 /**
1830 * The ID of the stack that you're creating.
1831 * @cloudformationAttribute StackSetId
1832 */
1833 readonly attrStackSetId: string;
1834 /**
1835 * Describes how the IAM roles required for stack set operations are created.
1836 *
1837 * - With `SELF_MANAGED` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see [Grant Self-Managed Stack Set Permissions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html) .
1838 * - With `SERVICE_MANAGED` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see [Grant Service-Managed Stack Set Permissions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html) .
1839 *
1840 * *Allowed Values* : `SERVICE_MANAGED` | `SELF_MANAGED`
1841 *
1842 * > The `PermissionModel` property is required.
1843 *
1844 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-permissionmodel
1845 */
1846 permissionModel: string;
1847 /**
1848 * The name to associate with the stack set. The name must be unique in the Region where you create your stack set.
1849 *
1850 * *Maximum* : `128`
1851 *
1852 * *Pattern* : `^[a-zA-Z][a-zA-Z0-9-]{0,127}$`
1853 *
1854 * > The `StackSetName` property is required.
1855 *
1856 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-stacksetname
1857 */
1858 stackSetName: string;
1859 /**
1860 * The Amazon Resource Number (ARN) of the IAM role to use to create this stack set. Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account.
1861 *
1862 * Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see [Prerequisites: Granting Permissions for Stack Set Operations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html) in the *AWS CloudFormation User Guide* .
1863 *
1864 * *Minimum* : `20`
1865 *
1866 * *Maximum* : `2048`
1867 *
1868 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-administrationrolearn
1869 */
1870 administrationRoleArn: string | undefined;
1871 /**
1872 * [ `Service-managed` permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).
1873 *
1874 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-autodeployment
1875 */
1876 autoDeployment: CfnStackSet.AutoDeploymentProperty | cdk.IResolvable | undefined;
1877 /**
1878 * [Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.
1879 *
1880 * By default, `SELF` is specified. Use `SELF` for stack sets with self-managed permissions.
1881 *
1882 * - To create a stack set with service-managed permissions while signed in to the management account, specify `SELF` .
1883 * - To create a stack set with service-managed permissions while signed in to a delegated administrator account, specify `DELEGATED_ADMIN` .
1884 *
1885 * Your AWS account must be registered as a delegated admin in the management account. For more information, see [Register a delegated administrator](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html) in the *AWS CloudFormation User Guide* .
1886 *
1887 * Stack sets with service-managed permissions are created in the management account, including stack sets that are created by delegated administrators.
1888 *
1889 * *Valid Values* : `SELF` | `DELEGATED_ADMIN`
1890 *
1891 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-callas
1892 */
1893 callAs: string | undefined;
1894 /**
1895 * The capabilities that are allowed in the stack set. Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new AWS Identity and Access Management ( IAM ) users. For more information, see [Acknowledging IAM Resources in AWS CloudFormation Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities) .
1896 *
1897 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-capabilities
1898 */
1899 capabilities: string[] | undefined;
1900 /**
1901 * A description of the stack set.
1902 *
1903 * *Minimum* : `1`
1904 *
1905 * *Maximum* : `1024`
1906 *
1907 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-description
1908 */
1909 description: string | undefined;
1910 /**
1911 * The name of the IAM execution role to use to create the stack set. If you don't specify an execution role, AWS CloudFormation uses the `AWSCloudFormationStackSetExecutionRole` role for the stack set operation.
1912 *
1913 * *Minimum* : `1`
1914 *
1915 * *Maximum* : `64`
1916 *
1917 * *Pattern* : `[a-zA-Z_0-9+=,.@-]+`
1918 *
1919 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-executionrolename
1920 */
1921 executionRoleName: string | undefined;
1922 /**
1923 * Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations.
1924 *
1925 * When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order.
1926 *
1927 * > If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting.
1928 * >
1929 * > You can't modify your stack set's execution configuration while there are running or queued operations for that stack set.
1930 *
1931 * When inactive (default), StackSets performs one operation at a time in request order.
1932 *
1933 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-managedexecution
1934 */
1935 managedExecution: any | cdk.IResolvable | undefined;
1936 /**
1937 * The user-specified preferences for how AWS CloudFormation performs a stack set operation.
1938 *
1939 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-operationpreferences
1940 */
1941 operationPreferences: CfnStackSet.OperationPreferencesProperty | cdk.IResolvable | undefined;
1942 /**
1943 * The input parameters for the stack set template.
1944 *
1945 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-parameters
1946 */
1947 parameters: Array<CfnStackSet.ParameterProperty | cdk.IResolvable> | cdk.IResolvable | undefined;
1948 /**
1949 * A group of stack instances with parameters in some specific accounts and Regions.
1950 *
1951 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-stackinstancesgroup
1952 */
1953 stackInstancesGroup: Array<CfnStackSet.StackInstancesProperty | cdk.IResolvable> | cdk.IResolvable | undefined;
1954 /**
1955 * The key-value pairs to associate with this stack set and the stacks created from it. AWS CloudFormation also propagates these tags to supported resources that are created in the stacks. A maximum number of 50 tags can be specified.
1956 *
1957 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-tags
1958 */
1959 readonly tags: cdk.TagManager;
1960 /**
1961 * The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes.
1962 *
1963 * You must include either `TemplateURL` or `TemplateBody` in a StackSet, but you can't use both. Dynamic references in the `TemplateBody` may not work correctly in all cases. It's recommended to pass templates containing dynamic references through `TemplateUrl` instead.
1964 *
1965 * *Minimum* : `1`
1966 *
1967 * *Maximum* : `51200`
1968 *
1969 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-templatebody
1970 */
1971 templateBody: string | undefined;
1972 /**
1973 * Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket.
1974 *
1975 * You must include either `TemplateURL` or `TemplateBody` in a StackSet, but you can't use both.
1976 *
1977 * *Minimum* : `1`
1978 *
1979 * *Maximum* : `1024`
1980 *
1981 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-templateurl
1982 */
1983 templateUrl: string | undefined;
1984 /**
1985 * Create a new `AWS::CloudFormation::StackSet`.
1986 *
1987 * @param scope - scope in which this resource is defined
1988 * @param id - scoped id of the resource
1989 * @param props - resource properties
1990 */
1991 constructor(scope: cdk.Construct, id: string, props: CfnStackSetProps);
1992 /**
1993 * Examines the CloudFormation resource and discloses attributes.
1994 *
1995 * @param inspector - tree inspector to collect and process attributes
1996 *
1997 */
1998 inspect(inspector: cdk.TreeInspector): void;
1999 protected get cfnProperties(): {
2000 [key: string]: any;
2001 };
2002 protected renderProperties(props: {
2003 [key: string]: any;
2004 }): {
2005 [key: string]: any;
2006 };
2007}
2008export declare namespace CfnStackSet {
2009 /**
2010 * [ `Service-managed` permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organizational unit (OU).
2011 *
2012 * @struct
2013 * @stability external
2014 *
2015 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-autodeployment.html
2016 */
2017 interface AutoDeploymentProperty {
2018 /**
2019 * If set to `true` , StackSets automatically deploys additional stack instances to AWS Organizations accounts that are added to a target organization or organizational unit (OU) in the specified Regions. If an account is removed from a target organization or OU, StackSets deletes stack instances from the account in the specified Regions.
2020 *
2021 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-autodeployment.html#cfn-cloudformation-stackset-autodeployment-enabled
2022 */
2023 readonly enabled?: boolean | cdk.IResolvable;
2024 /**
2025 * If set to `true` , stack resources are retained when an account is removed from a target organization or OU. If set to `false` , stack resources are deleted. Specify only if `Enabled` is set to `True` .
2026 *
2027 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-autodeployment.html#cfn-cloudformation-stackset-autodeployment-retainstacksonaccountremoval
2028 */
2029 readonly retainStacksOnAccountRemoval?: boolean | cdk.IResolvable;
2030 }
2031}
2032export declare namespace CfnStackSet {
2033 /**
2034 * The AWS OrganizationalUnitIds or Accounts for which to create stack instances in the specified Regions.
2035 *
2036 * @struct
2037 * @stability external
2038 *
2039 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html
2040 */
2041 interface DeploymentTargetsProperty {
2042 /**
2043 * `CfnStackSet.DeploymentTargetsProperty.AccountFilterType`
2044 *
2045 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html#cfn-cloudformation-stackset-deploymenttargets-accountfiltertype
2046 */
2047 readonly accountFilterType?: string;
2048 /**
2049 * The names of one or more AWS accounts for which you want to deploy stack set updates.
2050 *
2051 * *Pattern* : `^[0-9]{12}$`
2052 *
2053 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html#cfn-cloudformation-stackset-deploymenttargets-accounts
2054 */
2055 readonly accounts?: string[];
2056 /**
2057 * The organization root ID or organizational unit (OU) IDs to which StackSets deploys.
2058 *
2059 * *Pattern* : `^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$`
2060 *
2061 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html#cfn-cloudformation-stackset-deploymenttargets-organizationalunitids
2062 */
2063 readonly organizationalUnitIds?: string[];
2064 }
2065}
2066export declare namespace CfnStackSet {
2067 /**
2068 * The user-specified preferences for how AWS CloudFormation performs a stack set operation. For more information on maximum concurrent accounts and failure tolerance, see [Stack set operation options](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options) .
2069 *
2070 * @struct
2071 * @stability external
2072 *
2073 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html
2074 */
2075 interface OperationPreferencesProperty {
2076 /**
2077 * The number of accounts, per Region, for which this operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions.
2078 *
2079 * Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` (but not both).
2080 *
2081 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-failuretolerancecount
2082 */
2083 readonly failureToleranceCount?: number;
2084 /**
2085 * The percentage of accounts, per Region, for which this stack operation can fail before AWS CloudFormation stops the operation in that Region. If the operation is stopped in a Region, AWS CloudFormation doesn't attempt the operation in any subsequent Regions.
2086 *
2087 * When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds *down* to the next whole number.
2088 *
2089 * Conditional: You must specify either `FailureToleranceCount` or `FailureTolerancePercentage` , but not both.
2090 *
2091 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-failuretolerancepercentage
2092 */
2093 readonly failureTolerancePercentage?: number;
2094 /**
2095 * The maximum number of accounts in which to perform this operation at one time. This is dependent on the value of `FailureToleranceCount` . `MaxConcurrentCount` is at most one more than the `FailureToleranceCount` .
2096 *
2097 * Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.
2098 *
2099 * Conditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both.
2100 *
2101 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-maxconcurrentcount
2102 */
2103 readonly maxConcurrentCount?: number;
2104 /**
2105 * The maximum percentage of accounts in which to perform this operation at one time.
2106 *
2107 * When calculating the number of accounts based on the specified percentage, AWS CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead.
2108 *
2109 * Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.
2110 *
2111 * Conditional: You must specify either `MaxConcurrentCount` or `MaxConcurrentPercentage` , but not both.
2112 *
2113 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-maxconcurrentpercentage
2114 */
2115 readonly maxConcurrentPercentage?: number;
2116 /**
2117 * The concurrency type of deploying StackSets operations in Regions, could be in parallel or one Region at a time.
2118 *
2119 * *Allowed values* : `SEQUENTIAL` | `PARALLEL`
2120 *
2121 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-regionconcurrencytype
2122 */
2123 readonly regionConcurrencyType?: string;
2124 /**
2125 * The order of the Regions where you want to perform the stack operation.
2126 *
2127 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-regionorder
2128 */
2129 readonly regionOrder?: string[];
2130 }
2131}
2132export declare namespace CfnStackSet {
2133 /**
2134 * The Parameter data type.
2135 *
2136 * @struct
2137 * @stability external
2138 *
2139 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-parameter.html
2140 */
2141 interface ParameterProperty {
2142 /**
2143 * The key associated with the parameter. If you don't specify a key and value for a particular parameter, AWS CloudFormation uses the default value that's specified in your template.
2144 *
2145 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-parameter.html#cfn-cloudformation-stackset-parameter-parameterkey
2146 */
2147 readonly parameterKey: string;
2148 /**
2149 * The input value associated with the parameter.
2150 *
2151 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-parameter.html#cfn-cloudformation-stackset-parameter-parametervalue
2152 */
2153 readonly parameterValue: string;
2154 }
2155}
2156export declare namespace CfnStackSet {
2157 /**
2158 * Stack instances in some specific accounts and Regions.
2159 *
2160 * @struct
2161 * @stability external
2162 *
2163 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html
2164 */
2165 interface StackInstancesProperty {
2166 /**
2167 * The AWS `OrganizationalUnitIds` or `Accounts` for which to create stack instances in the specified Regions.
2168 *
2169 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html#cfn-cloudformation-stackset-stackinstances-deploymenttargets
2170 */
2171 readonly deploymentTargets: CfnStackSet.DeploymentTargetsProperty | cdk.IResolvable;
2172 /**
2173 * A list of stack set parameters whose values you want to override in the selected stack instances.
2174 *
2175 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html#cfn-cloudformation-stackset-stackinstances-parameteroverrides
2176 */
2177 readonly parameterOverrides?: Array<CfnStackSet.ParameterProperty | cdk.IResolvable> | cdk.IResolvable;
2178 /**
2179 * The names of one or more Regions where you want to create stack instances using the specified AWS accounts .
2180 *
2181 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html#cfn-cloudformation-stackset-stackinstances-regions
2182 */
2183 readonly regions: string[];
2184 }
2185}
2186/**
2187 * Properties for defining a `CfnTypeActivation`
2188 *
2189 * @struct
2190 * @stability external
2191 *
2192 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html
2193 */
2194export interface CfnTypeActivationProps {
2195 /**
2196 * Whether to automatically update the extension in this account and region when a new *minor* version is published by the extension publisher. Major versions released by the publisher must be manually updated.
2197 *
2198 * The default is `true` .
2199 *
2200 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-autoupdate
2201 */
2202 readonly autoUpdate?: boolean | cdk.IResolvable;
2203 /**
2204 * The name of the IAM execution role to use to activate the extension.
2205 *
2206 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-executionrolearn
2207 */
2208 readonly executionRoleArn?: string;
2209 /**
2210 * Specifies logging configuration information for an extension.
2211 *
2212 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-loggingconfig
2213 */
2214 readonly loggingConfig?: CfnTypeActivation.LoggingConfigProperty | cdk.IResolvable;
2215 /**
2216 * The major version of this extension you want to activate, if multiple major versions are available. The default is the latest major version. CloudFormation uses the latest available *minor* version of the major version selected.
2217 *
2218 * You can specify `MajorVersion` or `VersionBump` , but not both.
2219 *
2220 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-majorversion
2221 */
2222 readonly majorVersion?: string;
2223 /**
2224 * The Amazon Resource Number (ARN) of the public extension.
2225 *
2226 * Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` .
2227 *
2228 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-publictypearn
2229 */
2230 readonly publicTypeArn?: string;
2231 /**
2232 * The ID of the extension publisher.
2233 *
2234 * Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` .
2235 *
2236 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-publisherid
2237 */
2238 readonly publisherId?: string;
2239 /**
2240 * The extension type.
2241 *
2242 * Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` .
2243 *
2244 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-type
2245 */
2246 readonly type?: string;
2247 /**
2248 * The name of the extension.
2249 *
2250 * Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` .
2251 *
2252 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-typename
2253 */
2254 readonly typeName?: string;
2255 /**
2256 * An alias to assign to the public extension, in this account and region. If you specify an alias for the extension, CloudFormation treats the alias as the extension type name within this account and region. You must use the alias to refer to the extension in your templates, API calls, and CloudFormation console.
2257 *
2258 * An extension alias must be unique within a given account and region. You can activate the same public resource multiple times in the same account and region, using different type name aliases.
2259 *
2260 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-typenamealias
2261 */
2262 readonly typeNameAlias?: string;
2263 /**
2264 * Manually updates a previously-activated type to a new major or minor version, if available. You can also use this parameter to update the value of `AutoUpdate` .
2265 *
2266 * - `MAJOR` : CloudFormation updates the extension to the newest major version, if one is available.
2267 * - `MINOR` : CloudFormation updates the extension to the newest minor version, if one is available.
2268 *
2269 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-versionbump
2270 */
2271 readonly versionBump?: string;
2272}
2273/**
2274 * A CloudFormation `AWS::CloudFormation::TypeActivation`
2275 *
2276 * Activates a public third-party extension, making it available for use in stack templates. For more information, see [Using public extensions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html) in the *AWS CloudFormation User Guide* .
2277 *
2278 * Once you have activated a public third-party extension in your account and region, use [SetTypeConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_SetTypeConfiguration.html) to specify configuration properties for the extension. For more information, see [Configuring extensions at the account level](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-register.html#registry-set-configuration) in the *CloudFormation User Guide* .
2279 *
2280 * @cloudformationResource AWS::CloudFormation::TypeActivation
2281 * @stability external
2282 *
2283 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html
2284 */
2285export declare class CfnTypeActivation extends cdk.CfnResource implements cdk.IInspectable {
2286 /**
2287 * The CloudFormation resource type name for this resource class.
2288 */
2289 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::TypeActivation";
2290 /**
2291 * A factory method that creates a new instance of this class from an object
2292 * containing the CloudFormation properties of this resource.
2293 * Used in the @aws-cdk/cloudformation-include module.
2294 *
2295 * @internal
2296 */
2297 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnTypeActivation;
2298 /**
2299 * The Amazon Resource Number (ARN) of the activated extension, in this account and Region.
2300 * @cloudformationAttribute Arn
2301 */
2302 readonly attrArn: string;
2303 /**
2304 * Whether to automatically update the extension in this account and region when a new *minor* version is published by the extension publisher. Major versions released by the publisher must be manually updated.
2305 *
2306 * The default is `true` .
2307 *
2308 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-autoupdate
2309 */
2310 autoUpdate: boolean | cdk.IResolvable | undefined;
2311 /**
2312 * The name of the IAM execution role to use to activate the extension.
2313 *
2314 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-executionrolearn
2315 */
2316 executionRoleArn: string | undefined;
2317 /**
2318 * Specifies logging configuration information for an extension.
2319 *
2320 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-loggingconfig
2321 */
2322 loggingConfig: CfnTypeActivation.LoggingConfigProperty | cdk.IResolvable | undefined;
2323 /**
2324 * The major version of this extension you want to activate, if multiple major versions are available. The default is the latest major version. CloudFormation uses the latest available *minor* version of the major version selected.
2325 *
2326 * You can specify `MajorVersion` or `VersionBump` , but not both.
2327 *
2328 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-majorversion
2329 */
2330 majorVersion: string | undefined;
2331 /**
2332 * The Amazon Resource Number (ARN) of the public extension.
2333 *
2334 * Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` .
2335 *
2336 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-publictypearn
2337 */
2338 publicTypeArn: string | undefined;
2339 /**
2340 * The ID of the extension publisher.
2341 *
2342 * Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` .
2343 *
2344 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-publisherid
2345 */
2346 publisherId: string | undefined;
2347 /**
2348 * The extension type.
2349 *
2350 * Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` .
2351 *
2352 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-type
2353 */
2354 type: string | undefined;
2355 /**
2356 * The name of the extension.
2357 *
2358 * Conditional: You must specify `PublicTypeArn` , or `TypeName` , `Type` , and `PublisherId` .
2359 *
2360 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-typename
2361 */
2362 typeName: string | undefined;
2363 /**
2364 * An alias to assign to the public extension, in this account and region. If you specify an alias for the extension, CloudFormation treats the alias as the extension type name within this account and region. You must use the alias to refer to the extension in your templates, API calls, and CloudFormation console.
2365 *
2366 * An extension alias must be unique within a given account and region. You can activate the same public resource multiple times in the same account and region, using different type name aliases.
2367 *
2368 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-typenamealias
2369 */
2370 typeNameAlias: string | undefined;
2371 /**
2372 * Manually updates a previously-activated type to a new major or minor version, if available. You can also use this parameter to update the value of `AutoUpdate` .
2373 *
2374 * - `MAJOR` : CloudFormation updates the extension to the newest major version, if one is available.
2375 * - `MINOR` : CloudFormation updates the extension to the newest minor version, if one is available.
2376 *
2377 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html#cfn-cloudformation-typeactivation-versionbump
2378 */
2379 versionBump: string | undefined;
2380 /**
2381 * Create a new `AWS::CloudFormation::TypeActivation`.
2382 *
2383 * @param scope - scope in which this resource is defined
2384 * @param id - scoped id of the resource
2385 * @param props - resource properties
2386 */
2387 constructor(scope: cdk.Construct, id: string, props?: CfnTypeActivationProps);
2388 /**
2389 * Examines the CloudFormation resource and discloses attributes.
2390 *
2391 * @param inspector - tree inspector to collect and process attributes
2392 *
2393 */
2394 inspect(inspector: cdk.TreeInspector): void;
2395 protected get cfnProperties(): {
2396 [key: string]: any;
2397 };
2398 protected renderProperties(props: {
2399 [key: string]: any;
2400 }): {
2401 [key: string]: any;
2402 };
2403}
2404export declare namespace CfnTypeActivation {
2405 /**
2406 * Contains logging configuration information for an extension.
2407 *
2408 * @struct
2409 * @stability external
2410 *
2411 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-typeactivation-loggingconfig.html
2412 */
2413 interface LoggingConfigProperty {
2414 /**
2415 * The Amazon CloudWatch Logs group to which CloudFormation sends error logging information when invoking the extension's handlers.
2416 *
2417 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-typeactivation-loggingconfig.html#cfn-cloudformation-typeactivation-loggingconfig-loggroupname
2418 */
2419 readonly logGroupName?: string;
2420 /**
2421 * The Amazon Resource Name (ARN) of the role that CloudFormation should assume when sending log entries to CloudWatch Logs.
2422 *
2423 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-typeactivation-loggingconfig.html#cfn-cloudformation-typeactivation-loggingconfig-logrolearn
2424 */
2425 readonly logRoleArn?: string;
2426 }
2427}
2428/**
2429 * Properties for defining a `CfnWaitCondition`
2430 *
2431 * @struct
2432 * @stability external
2433 *
2434 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html
2435 */
2436export interface CfnWaitConditionProps {
2437 /**
2438 * The number of success signals that CloudFormation must receive before it continues the stack creation process. When the wait condition receives the requisite number of success signals, CloudFormation resumes the creation of the stack. If the wait condition doesn't receive the specified number of success signals before the Timeout period expires, CloudFormation assumes that the wait condition has failed and rolls the stack back.
2439 *
2440 * Updates aren't supported.
2441 *
2442 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-count
2443 */
2444 readonly count?: number;
2445 /**
2446 * A reference to the wait condition handle used to signal this wait condition. Use the `Ref` intrinsic function to specify an [AWS::CloudFormation::WaitConditionHandle](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html) resource.
2447 *
2448 * Anytime you add a WaitCondition resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command.
2449 *
2450 * Updates aren't supported.
2451 *
2452 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-handle
2453 */
2454 readonly handle?: string;
2455 /**
2456 * The length of time (in seconds) to wait for the number of signals that the `Count` property specifies. `Timeout` is a minimum-bound property, meaning the timeout occurs no sooner than the time you specify, but can occur shortly thereafter. The maximum time that can be specified for this property is 12 hours (43200 seconds).
2457 *
2458 * Updates aren't supported.
2459 *
2460 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-timeout
2461 */
2462 readonly timeout?: string;
2463}
2464/**
2465 * A CloudFormation `AWS::CloudFormation::WaitCondition`
2466 *
2467 * > For Amazon EC2 and Auto Scaling resources, we recommend that you use a `CreationPolicy` attribute instead of wait conditions. Add a CreationPolicy attribute to those resources, and use the cfn-signal helper script to signal when an instance creation process has completed successfully.
2468 *
2469 * You can use a wait condition for situations like the following:
2470 *
2471 * - To coordinate stack resource creation with configuration actions that are external to the stack creation.
2472 * - To track the status of a configuration process.
2473 *
2474 * For these situations, we recommend that you associate a [CreationPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-creationpolicy.html) attribute with the wait condition so that you don't have to use a wait condition handle. For more information and an example, see [Creating wait conditions in a template](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-waitcondition.html) . If you use a CreationPolicy with a wait condition, don't specify any of the wait condition's properties.
2475 *
2476 * > If you use the [VPC endpoints](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) feature, resources in the VPC that respond to wait conditions must have access to CloudFormation , specific Amazon Simple Storage Service ( Amazon S3 ) buckets. Resources must send wait condition responses to a presigned Amazon S3 URL. If they can't send responses to Amazon S3 , CloudFormation won't receive a response and the stack operation fails. For more information, see [Setting up VPC endpoints for AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-vpce-bucketnames.html) .
2477 *
2478 * @cloudformationResource AWS::CloudFormation::WaitCondition
2479 * @stability external
2480 *
2481 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html
2482 */
2483export declare class CfnWaitCondition extends cdk.CfnResource implements cdk.IInspectable {
2484 /**
2485 * The CloudFormation resource type name for this resource class.
2486 */
2487 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::WaitCondition";
2488 /**
2489 * A factory method that creates a new instance of this class from an object
2490 * containing the CloudFormation properties of this resource.
2491 * Used in the @aws-cdk/cloudformation-include module.
2492 *
2493 * @internal
2494 */
2495 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnWaitCondition;
2496 /**
2497 * A JSON object that contains the `UniqueId` and `Data` values from the wait condition signal(s) for the specified wait condition. For more information about wait condition signals, see [Wait condition signal JSON format](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-waitcondition.html#using-cfn-waitcondition-signaljson) .
2498 *
2499 * Example return value for a wait condition with 2 signals:
2500 *
2501 * `{ "Signal1" : "Step 1 complete." , "Signal2" : "Step 2 complete." }`
2502 * @cloudformationAttribute Data
2503 */
2504 readonly attrData: cdk.IResolvable;
2505 /**
2506 * The number of success signals that CloudFormation must receive before it continues the stack creation process. When the wait condition receives the requisite number of success signals, CloudFormation resumes the creation of the stack. If the wait condition doesn't receive the specified number of success signals before the Timeout period expires, CloudFormation assumes that the wait condition has failed and rolls the stack back.
2507 *
2508 * Updates aren't supported.
2509 *
2510 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-count
2511 */
2512 count: number | undefined;
2513 /**
2514 * A reference to the wait condition handle used to signal this wait condition. Use the `Ref` intrinsic function to specify an [AWS::CloudFormation::WaitConditionHandle](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html) resource.
2515 *
2516 * Anytime you add a WaitCondition resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command.
2517 *
2518 * Updates aren't supported.
2519 *
2520 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-handle
2521 */
2522 handle: string | undefined;
2523 /**
2524 * The length of time (in seconds) to wait for the number of signals that the `Count` property specifies. `Timeout` is a minimum-bound property, meaning the timeout occurs no sooner than the time you specify, but can occur shortly thereafter. The maximum time that can be specified for this property is 12 hours (43200 seconds).
2525 *
2526 * Updates aren't supported.
2527 *
2528 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-timeout
2529 */
2530 timeout: string | undefined;
2531 /**
2532 * Create a new `AWS::CloudFormation::WaitCondition`.
2533 *
2534 * @param scope - scope in which this resource is defined
2535 * @param id - scoped id of the resource
2536 * @param props - resource properties
2537 */
2538 constructor(scope: cdk.Construct, id: string, props?: CfnWaitConditionProps);
2539 /**
2540 * Examines the CloudFormation resource and discloses attributes.
2541 *
2542 * @param inspector - tree inspector to collect and process attributes
2543 *
2544 */
2545 inspect(inspector: cdk.TreeInspector): void;
2546 protected get cfnProperties(): {
2547 [key: string]: any;
2548 };
2549 protected renderProperties(props: {
2550 [key: string]: any;
2551 }): {
2552 [key: string]: any;
2553 };
2554}
2555/**
2556 * A CloudFormation `AWS::CloudFormation::WaitConditionHandle`
2557 *
2558 * > For Amazon EC2 and Auto Scaling resources, we recommend that you use a `CreationPolicy` attribute instead of wait conditions. Add a `CreationPolicy` attribute to those resources, and use the cfn-signal helper script to signal when an instance creation process has completed successfully.
2559 * >
2560 * > For more information, see [Deploying applications on Amazon EC2 with AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/deploying.applications.html) .
2561 *
2562 * The `AWS::CloudFormation::WaitConditionHandle` type has no properties. When you reference the `WaitConditionHandle` resource by using the Ref function, AWS CloudFormation returns a presigned URL. You pass this URL to applications or scripts that are running on your Amazon EC2 instances to send signals to that URL. An associated `AWS::CloudFormation::WaitCondition` resource checks the URL for the required number of success signals or for a failure signal.
2563 *
2564 * > Anytime you add a `WaitCondition` resource during a stack update or update a resource with a wait condition, you must associate the wait condition with a new `WaitConditionHandle` resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. > Updates aren't supported for this resource.
2565 *
2566 * @cloudformationResource AWS::CloudFormation::WaitConditionHandle
2567 * @stability external
2568 *
2569 * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html
2570 */
2571export declare class CfnWaitConditionHandle extends cdk.CfnResource implements cdk.IInspectable {
2572 /**
2573 * The CloudFormation resource type name for this resource class.
2574 */
2575 static readonly CFN_RESOURCE_TYPE_NAME = "AWS::CloudFormation::WaitConditionHandle";
2576 /**
2577 * A factory method that creates a new instance of this class from an object
2578 * containing the CloudFormation properties of this resource.
2579 * Used in the @aws-cdk/cloudformation-include module.
2580 *
2581 * @internal
2582 */
2583 static _fromCloudFormation(scope: cdk.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnWaitConditionHandle;
2584 /**
2585 * Create a new `AWS::CloudFormation::WaitConditionHandle`.
2586 *
2587 * @param scope - scope in which this resource is defined
2588 * @param id - scoped id of the resource
2589 * @param props - resource properties
2590 */
2591 constructor(scope: cdk.Construct, id: string);
2592 /**
2593 * Examines the CloudFormation resource and discloses attributes.
2594 *
2595 * @param inspector - tree inspector to collect and process attributes
2596 *
2597 */
2598 inspect(inspector: cdk.TreeInspector): void;
2599}