@awboost/cfn-resource-types 0.1.364 → 0.1.365

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,6 +9,10 @@ export type AIOpsInvestigationGroupProperties = {
9
9
  * An array of key-value pairs of notification channels to apply to this resource.
10
10
  */
11
11
  ChatbotNotificationChannels?: ChatbotNotificationChannel[];
12
+ /**
13
+ * An array of cross account configurations.
14
+ */
15
+ CrossAccountConfigurations?: CrossAccountConfiguration[];
12
16
  EncryptionConfig?: EncryptionConfigMap;
13
17
  /**
14
18
  * Investigation Group policy
@@ -86,6 +90,18 @@ export type ChatbotNotificationChannel = {
86
90
  */
87
91
  SNSTopicArn?: string;
88
92
  };
93
+ /**
94
+ * Type definition for `AWS::AIOps::InvestigationGroup.CrossAccountConfiguration`.
95
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-crossaccountconfiguration.html}
96
+ */
97
+ export type CrossAccountConfiguration = {
98
+ /**
99
+ * The Investigation Role's ARN.
100
+ * @minLength `20`
101
+ * @maxLength `2048`
102
+ */
103
+ SourceRoleArn?: string;
104
+ };
89
105
  /**
90
106
  * Type definition for `AWS::AIOps::InvestigationGroup.EncryptionConfigMap`.
91
107
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-encryptionconfigmap.html}
@@ -79,6 +79,7 @@ export type LaunchTemplateSpecification = {
79
79
  LaunchTemplateId?: string;
80
80
  LaunchTemplateName?: string;
81
81
  Overrides?: LaunchTemplateSpecificationOverride[];
82
+ UserdataType?: "EKS_BOOTSTRAP_SH" | "EKS_NODEADM";
82
83
  Version?: string;
83
84
  };
84
85
  /**
@@ -89,6 +90,7 @@ export type LaunchTemplateSpecificationOverride = {
89
90
  LaunchTemplateId?: string;
90
91
  LaunchTemplateName?: string;
91
92
  TargetInstanceTypes?: string[];
93
+ UserdataType?: "EKS_BOOTSTRAP_SH" | "EKS_NODEADM";
92
94
  Version?: string;
93
95
  };
94
96
  /**
@@ -4,6 +4,29 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
4
4
  * The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.
5
5
  The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.
6
6
  Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
7
+ On June 12, 2025, Amazon ECS launched support for updating capacity provider configuration for ECS services. With this launch, ECS also aligned the CFN update behavior for ``CapacityProviderStrategy`` parameter with the standard practice. For more information, see [adds support for updating capacity provider configuration for ECS services](https://docs.aws.amazon.com/about-aws/whats-new/2025/05/amazon-ecs-capacity-provider-configuration-ecs/). Previously ECS ignored the ``CapacityProviderStrategy`` property if it was set to an empty list for example, ``[]`` in CFN, because updating capacity provider configuration was not supported. Now, with support for capacity provider updates, customers can remove capacity providers from a service by passing an empty list. When you specify an empty list (``[]``) for the ``CapacityProviderStrategy`` property in your CFN template, ECS will remove any capacity providers associated with the service, as follows:
8
+ + For services created with a capacity provider strategy after the launch:
9
+ + If there's a cluster default strategy set, the service will revert to using that default strategy.
10
+ + If no cluster default strategy exists, you will receive the following error:
11
+ No launch type to fall back to for empty capacity provider strategy. Your service was not created with a launch type.
12
+
13
+ + For services created with a capacity provider strategy prior to the launch:
14
+ + If ``CapacityProviderStrategy`` had ``FARGATE_SPOT`` or ``FARGATE`` capacity providers, the launch type will be updated to ``FARGATE`` and the capacity provider will be removed.
15
+ + If the strategy included Auto Scaling group capacity providers, the service will revert to EC2 launch type, and the Auto Scaling group capacity providers will not be used.
16
+
17
+
18
+ Recommended Actions
19
+ If you are currently using ``CapacityProviderStrategy: []`` in your CFN templates, you should take one of the following actions:
20
+ + If you do not intend to update the Capacity Provider Strategy:
21
+ + Remove the ``CapacityProviderStrategy`` property entirely from your CFN template
22
+ + Alternatively, use ``!Ref ::NoValue`` for the ``CapacityProviderStrategy`` property in your template
23
+
24
+ + If you intend to maintain or update the Capacity Provider Strategy, specify the actual Capacity Provider Strategy for the service in your CFN template.
25
+
26
+ If your CFN template had an empty list ([]) for ``CapacityProviderStrategy`` prior to the aforementioned launch on June 12, and you are using the same template with ``CapacityProviderStrategy: []``, you might encounter the following error:
27
+ Invalid request provided: When switching from launch type to capacity provider strategy on an existing service, or making a change to a capacity provider strategy on a service that is already using one, you must force a new deployment. (Service: Ecs, Status Code: 400, Request ID: xxx) (SDK Attempt Count: 1)" (RequestToken: xxx HandlerErrorCode: InvalidRequest)
28
+ Note that CFN automatically initiates a new deployment when it detects a parameter change, but customers cannot choose to force a deployment through CFN. This is an invalid input scenario that requires one of the remediation actions listed above.
29
+ If you are experiencing active production issues related to this change, contact AWS Support or your Technical Account Manager.
7
30
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html}
8
31
  */
9
32
  export type ECSServiceProperties = {
@@ -761,6 +784,29 @@ export type VpcLatticeConfiguration = {
761
784
  * The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.
762
785
  The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.
763
786
  Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
787
+ On June 12, 2025, Amazon ECS launched support for updating capacity provider configuration for ECS services. With this launch, ECS also aligned the CFN update behavior for ``CapacityProviderStrategy`` parameter with the standard practice. For more information, see [adds support for updating capacity provider configuration for ECS services](https://docs.aws.amazon.com/about-aws/whats-new/2025/05/amazon-ecs-capacity-provider-configuration-ecs/). Previously ECS ignored the ``CapacityProviderStrategy`` property if it was set to an empty list for example, ``[]`` in CFN, because updating capacity provider configuration was not supported. Now, with support for capacity provider updates, customers can remove capacity providers from a service by passing an empty list. When you specify an empty list (``[]``) for the ``CapacityProviderStrategy`` property in your CFN template, ECS will remove any capacity providers associated with the service, as follows:
788
+ + For services created with a capacity provider strategy after the launch:
789
+ + If there's a cluster default strategy set, the service will revert to using that default strategy.
790
+ + If no cluster default strategy exists, you will receive the following error:
791
+ No launch type to fall back to for empty capacity provider strategy. Your service was not created with a launch type.
792
+
793
+ + For services created with a capacity provider strategy prior to the launch:
794
+ + If ``CapacityProviderStrategy`` had ``FARGATE_SPOT`` or ``FARGATE`` capacity providers, the launch type will be updated to ``FARGATE`` and the capacity provider will be removed.
795
+ + If the strategy included Auto Scaling group capacity providers, the service will revert to EC2 launch type, and the Auto Scaling group capacity providers will not be used.
796
+
797
+
798
+ Recommended Actions
799
+ If you are currently using ``CapacityProviderStrategy: []`` in your CFN templates, you should take one of the following actions:
800
+ + If you do not intend to update the Capacity Provider Strategy:
801
+ + Remove the ``CapacityProviderStrategy`` property entirely from your CFN template
802
+ + Alternatively, use ``!Ref ::NoValue`` for the ``CapacityProviderStrategy`` property in your template
803
+
804
+ + If you intend to maintain or update the Capacity Provider Strategy, specify the actual Capacity Provider Strategy for the service in your CFN template.
805
+
806
+ If your CFN template had an empty list ([]) for ``CapacityProviderStrategy`` prior to the aforementioned launch on June 12, and you are using the same template with ``CapacityProviderStrategy: []``, you might encounter the following error:
807
+ Invalid request provided: When switching from launch type to capacity provider strategy on an existing service, or making a change to a capacity provider strategy on a service that is already using one, you must force a new deployment. (Service: Ecs, Status Code: 400, Request ID: xxx) (SDK Attempt Count: 1)" (RequestToken: xxx HandlerErrorCode: InvalidRequest)
808
+ Note that CFN automatically initiates a new deployment when it detects a parameter change, but customers cannot choose to force a deployment through CFN. This is an invalid input scenario that requires one of the remediation actions listed above.
809
+ If you are experiencing active production issues related to this change, contact AWS Support or your Technical Account Manager.
764
810
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html}
765
811
  */
766
812
  export declare class ECSService extends $Resource<"AWS::ECS::Service", ECSServiceProperties, ECSServiceAttributes> {
@@ -3,6 +3,29 @@ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/re
3
3
  * The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.
4
4
  The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.
5
5
  Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
6
+ On June 12, 2025, Amazon ECS launched support for updating capacity provider configuration for ECS services. With this launch, ECS also aligned the CFN update behavior for ``CapacityProviderStrategy`` parameter with the standard practice. For more information, see [adds support for updating capacity provider configuration for ECS services](https://docs.aws.amazon.com/about-aws/whats-new/2025/05/amazon-ecs-capacity-provider-configuration-ecs/). Previously ECS ignored the ``CapacityProviderStrategy`` property if it was set to an empty list for example, ``[]`` in CFN, because updating capacity provider configuration was not supported. Now, with support for capacity provider updates, customers can remove capacity providers from a service by passing an empty list. When you specify an empty list (``[]``) for the ``CapacityProviderStrategy`` property in your CFN template, ECS will remove any capacity providers associated with the service, as follows:
7
+ + For services created with a capacity provider strategy after the launch:
8
+ + If there's a cluster default strategy set, the service will revert to using that default strategy.
9
+ + If no cluster default strategy exists, you will receive the following error:
10
+ No launch type to fall back to for empty capacity provider strategy. Your service was not created with a launch type.
11
+
12
+ + For services created with a capacity provider strategy prior to the launch:
13
+ + If ``CapacityProviderStrategy`` had ``FARGATE_SPOT`` or ``FARGATE`` capacity providers, the launch type will be updated to ``FARGATE`` and the capacity provider will be removed.
14
+ + If the strategy included Auto Scaling group capacity providers, the service will revert to EC2 launch type, and the Auto Scaling group capacity providers will not be used.
15
+
16
+
17
+ Recommended Actions
18
+ If you are currently using ``CapacityProviderStrategy: []`` in your CFN templates, you should take one of the following actions:
19
+ + If you do not intend to update the Capacity Provider Strategy:
20
+ + Remove the ``CapacityProviderStrategy`` property entirely from your CFN template
21
+ + Alternatively, use ``!Ref ::NoValue`` for the ``CapacityProviderStrategy`` property in your template
22
+
23
+ + If you intend to maintain or update the Capacity Provider Strategy, specify the actual Capacity Provider Strategy for the service in your CFN template.
24
+
25
+ If your CFN template had an empty list ([]) for ``CapacityProviderStrategy`` prior to the aforementioned launch on June 12, and you are using the same template with ``CapacityProviderStrategy: []``, you might encounter the following error:
26
+ Invalid request provided: When switching from launch type to capacity provider strategy on an existing service, or making a change to a capacity provider strategy on a service that is already using one, you must force a new deployment. (Service: Ecs, Status Code: 400, Request ID: xxx) (SDK Attempt Count: 1)" (RequestToken: xxx HandlerErrorCode: InvalidRequest)
27
+ Note that CFN automatically initiates a new deployment when it detects a parameter change, but customers cannot choose to force a deployment through CFN. This is an invalid input scenario that requires one of the remediation actions listed above.
28
+ If you are experiencing active production issues related to this change, contact AWS Support or your Technical Account Manager.
6
29
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html}
7
30
  */
8
31
  export class ECSService extends $Resource {
@@ -53,6 +53,11 @@ export type CopyValueEntry = {
53
53
  */
54
54
  Target: string;
55
55
  };
56
+ /**
57
+ * Type definition for `AWS::Logs::Transformer.EventSource`.
58
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-transformer-eventsource.html}
59
+ */
60
+ export type EventSource = "CloudTrail" | "Route53Resolver" | "VPCFlow" | "EKSAudit" | "AWSWAF";
56
61
  /**
57
62
  * Type definition for `AWS::Logs::Transformer.MoveKeyEntry`.
58
63
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-transformer-movekeyentry.html}
@@ -68,6 +73,11 @@ export type MoveKeyEntry = {
68
73
  */
69
74
  Target: string;
70
75
  };
76
+ /**
77
+ * Type definition for `AWS::Logs::Transformer.OcsfVersion`.
78
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-transformer-ocsfversion.html}
79
+ */
80
+ export type OcsfVersion = "V1.1";
71
81
  /**
72
82
  * Type definition for `AWS::Logs::Transformer.ParseCloudfront`.
73
83
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-transformer-parsecloudfront.html}
@@ -98,6 +108,18 @@ export type ParseRoute53 = {
98
108
  */
99
109
  Source?: string;
100
110
  };
111
+ /**
112
+ * Type definition for `AWS::Logs::Transformer.ParseToOCSF`.
113
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-transformer-parsetoocsf.html}
114
+ */
115
+ export type ParseToOCSF = {
116
+ EventSource: EventSource;
117
+ OcsfVersion: OcsfVersion;
118
+ /**
119
+ * @pattern `^.*[a-zA-Z0-9]+.*$`
120
+ */
121
+ Source?: string;
122
+ };
101
123
  /**
102
124
  * Type definition for `AWS::Logs::Transformer.ParseVPC`.
103
125
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-transformer-parsevpc.html}
@@ -258,6 +280,7 @@ export type Processor = {
258
280
  };
259
281
  ParsePostgres?: ParsePostgres;
260
282
  ParseRoute53?: ParseRoute53;
283
+ ParseToOCSF?: ParseToOCSF;
261
284
  ParseVPC?: ParseVPC;
262
285
  ParseWAF?: ParseWAF;
263
286
  RenameKeys?: {
@@ -33,6 +33,10 @@ export type MediaTailorPlaybackConfigurationProperties = {
33
33
  * The configuration for DASH content.
34
34
  */
35
35
  DashConfiguration?: DashConfiguration;
36
+ /**
37
+ * The setting that controls whether players can use stitched or guided ad insertion. The default, STITCHED_ONLY, forces all player sessions to use stitched (server-side) ad insertion. Choosing PLAYER_SELECT allows players to select either stitched or guided ad insertion at session-initialization time. The default for players that do not specify an insertion mode is stitched.
38
+ */
39
+ InsertionMode?: InsertionMode;
36
40
  /**
37
41
  * The configuration for pre-roll ad insertion.
38
42
  */
@@ -212,6 +216,11 @@ export type DashConfiguration = {
212
216
  */
213
217
  OriginManifestType?: "SINGLE_PERIOD" | "MULTI_PERIOD";
214
218
  };
219
+ /**
220
+ * Type definition for `AWS::MediaTailor::PlaybackConfiguration.InsertionMode`.
221
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediatailor-playbackconfiguration-insertionmode.html}
222
+ */
223
+ export type InsertionMode = "STITCHED_ONLY" | "PLAYER_SELECT";
215
224
  /**
216
225
  * Type definition for `AWS::MediaTailor::PlaybackConfiguration.LivePreRollConfiguration`.
217
226
  * The configuration for pre-roll ad insertion.
@@ -151,10 +151,18 @@ export type VpcOptions = {
151
151
  * Indicates whether to enable ApplianceModeSupport Support for Vpc Attachment. Valid Values: true | false
152
152
  */
153
153
  ApplianceModeSupport?: boolean;
154
+ /**
155
+ * Indicates whether to enable private DNS Support for Vpc Attachment. Valid Values: true | false
156
+ */
157
+ DnsSupport?: boolean;
154
158
  /**
155
159
  * Indicates whether to enable Ipv6 Support for Vpc Attachment. Valid Values: enable | disable
156
160
  */
157
161
  Ipv6Support?: boolean;
162
+ /**
163
+ * Indicates whether to enable Security Group Referencing Support for Vpc Attachment. Valid Values: true | false
164
+ */
165
+ SecurityGroupReferencingSupport?: boolean;
158
166
  };
159
167
  /**
160
168
  * AWS::NetworkManager::VpcAttachment Resoruce Type
@@ -9,6 +9,7 @@ export type Route53ResolverResolverEndpointProperties = {
9
9
  * Indicates whether the Resolver endpoint allows inbound or outbound DNS queries:
10
10
  - INBOUND: allows DNS queries to your VPC from your network
11
11
  - OUTBOUND: allows DNS queries from your VPC to your network
12
+ - INBOUND_DELEGATION: allows DNS queries to your VPC from your network with authoritative answers from private hosted zones
12
13
  */
13
14
  Direction: string;
14
15
  /**
@@ -5,6 +5,12 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
5
5
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html}
6
6
  */
7
7
  export type Route53ResolverResolverRuleProperties = {
8
+ /**
9
+ * The name server domain for queries to be delegated to if a query matches the delegation record.
10
+ * @minLength `1`
11
+ * @maxLength `256`
12
+ */
13
+ DelegationRecord?: string;
8
14
  /**
9
15
  * DNS queries for this domain name are forwarded to the IP addresses that are specified in TargetIps
10
16
  * @minLength `1`
@@ -0,0 +1,27 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-builder/template";
3
+ /**
4
+ * Resource Type definition for AWS::S3Tables::Namespace
5
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-namespace.html}
6
+ */
7
+ export type S3TablesNamespaceProperties = {
8
+ /**
9
+ * A name for the namespace.
10
+ * @minLength `1`
11
+ * @maxLength `255`
12
+ */
13
+ Namespace: string;
14
+ /**
15
+ * The Amazon Resource Name (ARN) of the specified table bucket.
16
+ */
17
+ TableBucketARN: string;
18
+ };
19
+ /**
20
+ * Resource Type definition for AWS::S3Tables::Namespace
21
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-namespace.html}
22
+ */
23
+ export declare class S3TablesNamespace extends $Resource<"AWS::S3Tables::Namespace", S3TablesNamespaceProperties, Record<string, never>> {
24
+ static readonly Type = "AWS::S3Tables::Namespace";
25
+ constructor(logicalId: string, properties: S3TablesNamespaceProperties, options?: $ResourceOptions);
26
+ }
27
+ //# sourceMappingURL=AWS-S3Tables-Namespace.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ /**
3
+ * Resource Type definition for AWS::S3Tables::Namespace
4
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-namespace.html}
5
+ */
6
+ export class S3TablesNamespace extends $Resource {
7
+ static Type = "AWS::S3Tables::Namespace";
8
+ constructor(logicalId, properties, options) {
9
+ super(logicalId, S3TablesNamespace.Type, properties, options);
10
+ }
11
+ }
12
+ //# sourceMappingURL=AWS-S3Tables-Namespace.js.map
@@ -0,0 +1,99 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-builder/template";
3
+ /**
4
+ * Resource Type definition for AWS::WorkspacesInstances::Volume - Manages WorkSpaces Volume resources
5
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volume.html}
6
+ */
7
+ export type WorkspacesInstancesVolumeProperties = {
8
+ /**
9
+ * The Availability Zone in which to create the volume
10
+ * @pattern `^[a-z]{2}-[a-z]+-\d[a-z](-[a-z0-9]+)?$`
11
+ */
12
+ AvailabilityZone: string;
13
+ /**
14
+ * Indicates whether the volume should be encrypted
15
+ */
16
+ Encrypted?: boolean;
17
+ /**
18
+ * The number of I/O operations per second (IOPS)
19
+ * @min `0`
20
+ */
21
+ Iops?: number;
22
+ /**
23
+ * The identifier of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use for Amazon EBS encryption
24
+ * @maxLength `128`
25
+ */
26
+ KmsKeyId?: string;
27
+ /**
28
+ * The size of the volume, in GiBs
29
+ * @min `0`
30
+ */
31
+ SizeInGB?: number;
32
+ /**
33
+ * The snapshot from which to create the volume
34
+ * @pattern `^snap-[0-9a-zA-Z]{1,63}$`
35
+ */
36
+ SnapshotId?: string;
37
+ /**
38
+ * The tags passed to EBS volume
39
+ * @maxLength `30`
40
+ */
41
+ TagSpecifications?: TagSpecification[];
42
+ /**
43
+ * The throughput to provision for a volume, with a maximum of 1,000 MiB/s
44
+ * @min `0`
45
+ */
46
+ Throughput?: number;
47
+ /**
48
+ * The volume type
49
+ */
50
+ VolumeType?: "standard" | "io1" | "io2" | "gp2" | "sc1" | "st1" | "gp3";
51
+ };
52
+ /**
53
+ * Attribute type definition for `AWS::WorkspacesInstances::Volume`.
54
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volume.html#aws-resource-workspacesinstances-volume-return-values}
55
+ */
56
+ export type WorkspacesInstancesVolumeAttributes = {
57
+ /**
58
+ * Unique identifier for the volume
59
+ * @pattern `^vol-[0-9a-zA-Z]{1,63}$`
60
+ */
61
+ VolumeId: string;
62
+ };
63
+ /**
64
+ * Type definition for `AWS::WorkspacesInstances::Volume.Tag`.
65
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-volume-tag.html}
66
+ */
67
+ export type Tag = {
68
+ /**
69
+ * The key name of the tag
70
+ * @minLength `1`
71
+ * @maxLength `128`
72
+ */
73
+ Key: string;
74
+ /**
75
+ * The value for the tag
76
+ * @maxLength `256`
77
+ */
78
+ Value: string;
79
+ };
80
+ /**
81
+ * Type definition for `AWS::WorkspacesInstances::Volume.TagSpecification`.
82
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-volume-tagspecification.html}
83
+ */
84
+ export type TagSpecification = {
85
+ ResourceType?: "instance" | "volume" | "spot-instances-request" | "network-interface";
86
+ /**
87
+ * The tags to apply to the resource
88
+ */
89
+ Tags?: Tag[];
90
+ };
91
+ /**
92
+ * Resource Type definition for AWS::WorkspacesInstances::Volume - Manages WorkSpaces Volume resources
93
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volume.html}
94
+ */
95
+ export declare class WorkspacesInstancesVolume extends $Resource<"AWS::WorkspacesInstances::Volume", WorkspacesInstancesVolumeProperties, WorkspacesInstancesVolumeAttributes> {
96
+ static readonly Type = "AWS::WorkspacesInstances::Volume";
97
+ constructor(logicalId: string, properties: WorkspacesInstancesVolumeProperties, options?: $ResourceOptions);
98
+ }
99
+ //# sourceMappingURL=AWS-WorkspacesInstances-Volume.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ /**
3
+ * Resource Type definition for AWS::WorkspacesInstances::Volume - Manages WorkSpaces Volume resources
4
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volume.html}
5
+ */
6
+ export class WorkspacesInstancesVolume extends $Resource {
7
+ static Type = "AWS::WorkspacesInstances::Volume";
8
+ constructor(logicalId, properties, options) {
9
+ super(logicalId, WorkspacesInstancesVolume.Type, properties, options);
10
+ }
11
+ }
12
+ //# sourceMappingURL=AWS-WorkspacesInstances-Volume.js.map
@@ -0,0 +1,36 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-builder/template";
3
+ /**
4
+ * Resource Type definition for AWS::WorkspacesInstances::VolumeAssociation
5
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volumeassociation.html}
6
+ */
7
+ export type WorkspacesInstancesVolumeAssociationProperties = {
8
+ /**
9
+ * The device name for the volume attachment
10
+ * @maxLength `32`
11
+ */
12
+ Device: string;
13
+ /**
14
+ * Mode to use when disassociating the volume
15
+ */
16
+ DisassociateMode?: "FORCE" | "NO_FORCE";
17
+ /**
18
+ * ID of the volume to attach to the workspace instance
19
+ * @pattern `^vol-[0-9a-zA-Z]{1,63}$`
20
+ */
21
+ VolumeId: string;
22
+ /**
23
+ * ID of the workspace instance to associate with the volume
24
+ * @pattern `^wsinst-[0-9a-zA-Z]{8,63}$`
25
+ */
26
+ WorkspaceInstanceId: string;
27
+ };
28
+ /**
29
+ * Resource Type definition for AWS::WorkspacesInstances::VolumeAssociation
30
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volumeassociation.html}
31
+ */
32
+ export declare class WorkspacesInstancesVolumeAssociation extends $Resource<"AWS::WorkspacesInstances::VolumeAssociation", WorkspacesInstancesVolumeAssociationProperties, Record<string, never>> {
33
+ static readonly Type = "AWS::WorkspacesInstances::VolumeAssociation";
34
+ constructor(logicalId: string, properties: WorkspacesInstancesVolumeAssociationProperties, options?: $ResourceOptions);
35
+ }
36
+ //# sourceMappingURL=AWS-WorkspacesInstances-VolumeAssociation.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ /**
3
+ * Resource Type definition for AWS::WorkspacesInstances::VolumeAssociation
4
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volumeassociation.html}
5
+ */
6
+ export class WorkspacesInstancesVolumeAssociation extends $Resource {
7
+ static Type = "AWS::WorkspacesInstances::VolumeAssociation";
8
+ constructor(logicalId, properties, options) {
9
+ super(logicalId, WorkspacesInstancesVolumeAssociation.Type, properties, options);
10
+ }
11
+ }
12
+ //# sourceMappingURL=AWS-WorkspacesInstances-VolumeAssociation.js.map
@@ -0,0 +1,270 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-builder/template";
3
+ /**
4
+ * Resource Type definition for AWS::WorkspacesInstances::WorkspaceInstance
5
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-workspaceinstance.html}
6
+ */
7
+ export type WorkspacesInstancesWorkspaceInstanceProperties = {
8
+ ManagedInstance?: {
9
+ BlockDeviceMappings?: BlockDeviceMapping[];
10
+ CpuOptions?: CpuOptionsRequest;
11
+ CreditSpecification?: CreditSpecificationRequest;
12
+ DisableApiStop?: boolean;
13
+ EbsOptimized?: boolean;
14
+ EnclaveOptions?: EnclaveOptionsRequest;
15
+ HibernationOptions?: HibernationOptionsRequest;
16
+ IamInstanceProfile?: IamInstanceProfileSpecification;
17
+ /**
18
+ * @pattern `^ami-[0-9a-zA-Z]{1,63}$`
19
+ */
20
+ ImageId: string;
21
+ /**
22
+ * @pattern `^([a-z0-9-]+)\.([a-z0-9]+)$`
23
+ */
24
+ InstanceType: string;
25
+ /**
26
+ * @maxLength `64`
27
+ */
28
+ KeyName?: string;
29
+ MaintenanceOptions?: InstanceMaintenanceOptionsRequest;
30
+ MetadataOptions?: InstanceMetadataOptionsRequest;
31
+ Monitoring?: RunInstancesMonitoringEnabled;
32
+ NetworkInterfaces?: InstanceNetworkInterfaceSpecification[];
33
+ NetworkPerformanceOptions?: InstanceNetworkPerformanceOptionsRequest;
34
+ Placement?: Placement;
35
+ PrivateDnsNameOptions?: PrivateDnsNameOptionsRequest;
36
+ /**
37
+ * @maxLength `30`
38
+ */
39
+ TagSpecifications?: TagSpecification[];
40
+ /**
41
+ * @maxLength `16000`
42
+ */
43
+ UserData?: string;
44
+ };
45
+ /**
46
+ * @maxLength `30`
47
+ */
48
+ Tags?: Tag[];
49
+ };
50
+ /**
51
+ * Attribute type definition for `AWS::WorkspacesInstances::WorkspaceInstance`.
52
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-workspaceinstance.html#aws-resource-workspacesinstances-workspaceinstance-return-values}
53
+ */
54
+ export type WorkspacesInstancesWorkspaceInstanceAttributes = {
55
+ EC2ManagedInstance: {
56
+ InstanceId: string;
57
+ };
58
+ /**
59
+ * The current state of the workspace instance
60
+ */
61
+ ProvisionState: "ALLOCATING" | "ALLOCATED" | "DEALLOCATING" | "DEALLOCATED" | "ERROR_ALLOCATING" | "ERROR_DEALLOCATING";
62
+ /**
63
+ * Unique identifier for the workspace instance
64
+ * @pattern `^wsinst-[0-9a-zA-Z]{8,63}$`
65
+ */
66
+ WorkspaceInstanceId: string;
67
+ };
68
+ /**
69
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.BlockDeviceMapping`.
70
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-blockdevicemapping.html}
71
+ */
72
+ export type BlockDeviceMapping = {
73
+ /**
74
+ * @maxLength `32`
75
+ */
76
+ DeviceName?: string;
77
+ Ebs?: EbsBlockDevice;
78
+ /**
79
+ * @maxLength `32`
80
+ */
81
+ NoDevice?: string;
82
+ /**
83
+ * @pattern `^ephemeral(0|[1-9][0-9]{0,2})$`
84
+ */
85
+ VirtualName?: string;
86
+ };
87
+ /**
88
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.CpuOptionsRequest`.
89
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-cpuoptionsrequest.html}
90
+ */
91
+ export type CpuOptionsRequest = {
92
+ /**
93
+ * @min `0`
94
+ */
95
+ CoreCount?: number;
96
+ /**
97
+ * @min `0`
98
+ */
99
+ ThreadsPerCore?: number;
100
+ };
101
+ /**
102
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.CreditSpecificationRequest`.
103
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-creditspecificationrequest.html}
104
+ */
105
+ export type CreditSpecificationRequest = {
106
+ CpuCredits?: "standard" | "unlimited";
107
+ };
108
+ /**
109
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.EbsBlockDevice`.
110
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-ebsblockdevice.html}
111
+ */
112
+ export type EbsBlockDevice = {
113
+ Encrypted?: boolean;
114
+ /**
115
+ * @min `0`
116
+ */
117
+ Iops?: number;
118
+ /**
119
+ * @maxLength `128`
120
+ */
121
+ KmsKeyId?: string;
122
+ /**
123
+ * @min `0`
124
+ */
125
+ Throughput?: number;
126
+ /**
127
+ * @min `0`
128
+ */
129
+ VolumeSize?: number;
130
+ VolumeType?: "standard" | "io1" | "io2" | "gp2" | "sc1" | "st1" | "gp3";
131
+ };
132
+ /**
133
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.EnclaveOptionsRequest`.
134
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-enclaveoptionsrequest.html}
135
+ */
136
+ export type EnclaveOptionsRequest = {
137
+ Enabled?: boolean;
138
+ };
139
+ /**
140
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.HibernationOptionsRequest`.
141
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-hibernationoptionsrequest.html}
142
+ */
143
+ export type HibernationOptionsRequest = {
144
+ Configured?: boolean;
145
+ };
146
+ /**
147
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.IamInstanceProfileSpecification`.
148
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-iaminstanceprofilespecification.html}
149
+ */
150
+ export type IamInstanceProfileSpecification = {
151
+ /**
152
+ * @maxLength `64`
153
+ */
154
+ Name?: string;
155
+ };
156
+ /**
157
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.InstanceMaintenanceOptionsRequest`.
158
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancemaintenanceoptionsrequest.html}
159
+ */
160
+ export type InstanceMaintenanceOptionsRequest = {
161
+ AutoRecovery?: "disabled" | "default";
162
+ };
163
+ /**
164
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.InstanceMetadataOptionsRequest`.
165
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancemetadataoptionsrequest.html}
166
+ */
167
+ export type InstanceMetadataOptionsRequest = {
168
+ HttpEndpoint?: "enabled" | "disabled";
169
+ HttpProtocolIpv6?: "enabled" | "disabled";
170
+ /**
171
+ * @min `1`
172
+ * @max `64`
173
+ */
174
+ HttpPutResponseHopLimit?: number;
175
+ HttpTokens?: "optional" | "required";
176
+ InstanceMetadataTags?: "enabled" | "disabled";
177
+ };
178
+ /**
179
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.InstanceNetworkInterfaceSpecification`.
180
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancenetworkinterfacespecification.html}
181
+ */
182
+ export type InstanceNetworkInterfaceSpecification = {
183
+ /**
184
+ * @maxLength `1000`
185
+ * @pattern `^[\S\s]*$`
186
+ */
187
+ Description?: string;
188
+ /**
189
+ * @min `0`
190
+ */
191
+ DeviceIndex?: number;
192
+ Groups?: string[];
193
+ /**
194
+ * @pattern `^subnet-[0-9a-zA-Z]{1,63}$`
195
+ */
196
+ SubnetId?: string;
197
+ };
198
+ /**
199
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.InstanceNetworkPerformanceOptionsRequest`.
200
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-instancenetworkperformanceoptionsrequest.html}
201
+ */
202
+ export type InstanceNetworkPerformanceOptionsRequest = {
203
+ BandwidthWeighting?: "default" | "vpc-1" | "ebs-1";
204
+ };
205
+ /**
206
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.Placement`.
207
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-placement.html}
208
+ */
209
+ export type Placement = {
210
+ /**
211
+ * @pattern `^[a-z]{2}-[a-z]+-\d[a-z](-[a-z0-9]+)?$`
212
+ */
213
+ AvailabilityZone?: string;
214
+ /**
215
+ * @maxLength `255`
216
+ */
217
+ GroupName?: string;
218
+ Tenancy?: "default" | "dedicated" | "host";
219
+ };
220
+ /**
221
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.PrivateDnsNameOptionsRequest`.
222
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-privatednsnameoptionsrequest.html}
223
+ */
224
+ export type PrivateDnsNameOptionsRequest = {
225
+ EnableResourceNameDnsAAAARecord?: boolean;
226
+ EnableResourceNameDnsARecord?: boolean;
227
+ HostnameType?: "ip-name" | "resource-name";
228
+ };
229
+ /**
230
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.RunInstancesMonitoringEnabled`.
231
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-runinstancesmonitoringenabled.html}
232
+ */
233
+ export type RunInstancesMonitoringEnabled = {
234
+ Enabled?: boolean;
235
+ };
236
+ /**
237
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.Tag`.
238
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-tag.html}
239
+ */
240
+ export type Tag = {
241
+ /**
242
+ * @minLength `1`
243
+ * @maxLength `128`
244
+ */
245
+ Key: string;
246
+ /**
247
+ * @maxLength `256`
248
+ */
249
+ Value?: string;
250
+ };
251
+ /**
252
+ * Type definition for `AWS::WorkspacesInstances::WorkspaceInstance.TagSpecification`.
253
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesinstances-workspaceinstance-tagspecification.html}
254
+ */
255
+ export type TagSpecification = {
256
+ ResourceType?: "instance" | "volume" | "spot-instances-request" | "network-interface";
257
+ /**
258
+ * @maxLength `30`
259
+ */
260
+ Tags?: Tag[];
261
+ };
262
+ /**
263
+ * Resource Type definition for AWS::WorkspacesInstances::WorkspaceInstance
264
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-workspaceinstance.html}
265
+ */
266
+ export declare class WorkspacesInstancesWorkspaceInstance extends $Resource<"AWS::WorkspacesInstances::WorkspaceInstance", WorkspacesInstancesWorkspaceInstanceProperties, WorkspacesInstancesWorkspaceInstanceAttributes> {
267
+ static readonly Type = "AWS::WorkspacesInstances::WorkspaceInstance";
268
+ constructor(logicalId: string, properties: WorkspacesInstancesWorkspaceInstanceProperties, options?: $ResourceOptions);
269
+ }
270
+ //# sourceMappingURL=AWS-WorkspacesInstances-WorkspaceInstance.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/resource";
2
+ /**
3
+ * Resource Type definition for AWS::WorkspacesInstances::WorkspaceInstance
4
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-workspaceinstance.html}
5
+ */
6
+ export class WorkspacesInstancesWorkspaceInstance extends $Resource {
7
+ static Type = "AWS::WorkspacesInstances::WorkspaceInstance";
8
+ constructor(logicalId, properties, options) {
9
+ super(logicalId, WorkspacesInstancesWorkspaceInstance.Type, properties, options);
10
+ }
11
+ }
12
+ //# sourceMappingURL=AWS-WorkspacesInstances-WorkspaceInstance.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awboost/cfn-resource-types",
3
- "version": "0.1.364",
3
+ "version": "0.1.365",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },