@awboost/cfn-resource-types 0.1.369 → 0.1.371

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.
@@ -11,12 +11,18 @@ export type DynamoDBGlobalTableProperties = {
11
11
  AttributeDefinitions: AttributeDefinition[];
12
12
  BillingMode?: string;
13
13
  GlobalSecondaryIndexes?: GlobalSecondaryIndex[];
14
+ /**
15
+ * @minLength `1`
16
+ * @maxLength `1`
17
+ */
18
+ GlobalTableWitnesses?: GlobalTableWitness[];
14
19
  /**
15
20
  * @minLength `1`
16
21
  * @maxLength `2`
17
22
  */
18
23
  KeySchema: KeySchema[];
19
24
  LocalSecondaryIndexes?: LocalSecondaryIndex[];
25
+ MultiRegionConsistency?: "EVENTUAL" | "STRONG";
20
26
  /**
21
27
  * @minLength `1`
22
28
  */
@@ -96,6 +102,13 @@ export type GlobalSecondaryIndex = {
96
102
  WriteOnDemandThroughputSettings?: WriteOnDemandThroughputSettings;
97
103
  WriteProvisionedThroughputSettings?: WriteProvisionedThroughputSettings;
98
104
  };
105
+ /**
106
+ * Type definition for `AWS::DynamoDB::GlobalTable.GlobalTableWitness`.
107
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-globaltablewitness.html}
108
+ */
109
+ export type GlobalTableWitness = {
110
+ Region?: string;
111
+ };
99
112
  /**
100
113
  * Type definition for `AWS::DynamoDB::GlobalTable.KeySchema`.
101
114
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-keyschema.html}
@@ -396,7 +396,7 @@ export type LogConfiguration = {
396
396
  The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:
397
397
  + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using Fargate.Optional when using EC2. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance.
398
398
  The following options apply to all supported log drivers.
399
- + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS is changing the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost.
399
+ + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the non-blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS changed the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost.
400
400
  To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.
401
401
  When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.
402
402
  Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.
@@ -5,18 +5,62 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
5
5
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html}
6
6
  */
7
7
  export type KinesisStreamConsumerProperties = {
8
+ /**
9
+ * The name of the Kinesis Stream Consumer. For a given Kinesis data stream, each consumer must have a unique name. However, consumer names don't have to be unique across data streams.
10
+ * @minLength `1`
11
+ * @maxLength `128`
12
+ * @pattern `^[a-zA-Z0-9_.-]+$`
13
+ */
8
14
  ConsumerName: string;
15
+ /**
16
+ * The Amazon resource name (ARN) of the Kinesis data stream that you want to register the consumer with.
17
+ * @minLength `1`
18
+ * @maxLength `2048`
19
+ * @pattern `^arn:aws.*:kinesis:.*:\d{12}:stream/\S+`
20
+ */
9
21
  StreamARN: string;
22
+ /**
23
+ * An arbitrary set of tags (key–value pairs) to associate with the Kinesis consumer.
24
+ * @maxLength `50`
25
+ */
26
+ Tags?: Tag[];
10
27
  };
11
28
  /**
12
29
  * Attribute type definition for `AWS::Kinesis::StreamConsumer`.
13
30
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html#aws-resource-kinesis-streamconsumer-return-values}
14
31
  */
15
32
  export type KinesisStreamConsumerAttributes = {
33
+ /**
34
+ * The ARN returned by Kinesis Data Streams when you registered the consumer. If you don't know the ARN of the consumer that you want to deregister, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream. The description of a consumer contains its ARN.
35
+ */
16
36
  ConsumerARN: string;
37
+ /**
38
+ * Timestamp when the consumer was created.
39
+ */
17
40
  ConsumerCreationTimestamp: string;
41
+ /**
42
+ * A consumer can't read data while in the CREATING or DELETING states. Valid Values: CREATING | DELETING | ACTIVE
43
+ */
18
44
  ConsumerStatus: string;
19
- Id: string;
45
+ };
46
+ /**
47
+ * Type definition for `AWS::Kinesis::StreamConsumer.Tag`.
48
+ * An arbitrary set of tags (key-value pairs) to associate with the Kinesis consumer.
49
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-streamconsumer-tag.html}
50
+ */
51
+ export type Tag = {
52
+ /**
53
+ * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
54
+ * @minLength `1`
55
+ * @maxLength `128`
56
+ */
57
+ Key: string;
58
+ /**
59
+ * The value for the tag. You can specify a value that is 0 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
60
+ * @minLength `0`
61
+ * @maxLength `255`
62
+ */
63
+ Value: string;
20
64
  };
21
65
  /**
22
66
  * Resource Type definition for AWS::Kinesis::StreamConsumer
@@ -16,6 +16,7 @@ export type QBusinessDataAccessorProperties = {
16
16
  * @pattern `^[a-zA-Z0-9][a-zA-Z0-9-]{35}$`
17
17
  */
18
18
  ApplicationId: string;
19
+ AuthenticationDetail?: DataAccessorAuthenticationDetail;
19
20
  /**
20
21
  * @minLength `1`
21
22
  * @maxLength `100`
@@ -94,6 +95,43 @@ export type AttributeFilter = {
94
95
  NotFilter?: AttributeFilter;
95
96
  OrAllFilters?: AttributeFilter[];
96
97
  };
98
+ /**
99
+ * Type definition for `AWS::QBusiness::DataAccessor.DataAccessorAuthenticationConfiguration`.
100
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-dataaccessor-dataaccessorauthenticationconfiguration.html}
101
+ */
102
+ export type DataAccessorAuthenticationConfiguration = {
103
+ IdcTrustedTokenIssuerConfiguration: DataAccessorIdcTrustedTokenIssuerConfiguration;
104
+ };
105
+ /**
106
+ * Type definition for `AWS::QBusiness::DataAccessor.DataAccessorAuthenticationDetail`.
107
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-dataaccessor-dataaccessorauthenticationdetail.html}
108
+ */
109
+ export type DataAccessorAuthenticationDetail = {
110
+ AuthenticationConfiguration?: DataAccessorAuthenticationConfiguration;
111
+ AuthenticationType: DataAccessorAuthenticationType;
112
+ /**
113
+ * @minLength `1`
114
+ * @maxLength `1`
115
+ */
116
+ ExternalIds?: string[];
117
+ };
118
+ /**
119
+ * Type definition for `AWS::QBusiness::DataAccessor.DataAccessorAuthenticationType`.
120
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-dataaccessor-dataaccessorauthenticationtype.html}
121
+ */
122
+ export type DataAccessorAuthenticationType = "AWS_IAM_IDC_TTI" | "AWS_IAM_IDC_AUTH_CODE";
123
+ /**
124
+ * Type definition for `AWS::QBusiness::DataAccessor.DataAccessorIdcTrustedTokenIssuerConfiguration`.
125
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-dataaccessor-dataaccessoridctrustedtokenissuerconfiguration.html}
126
+ */
127
+ export type DataAccessorIdcTrustedTokenIssuerConfiguration = {
128
+ /**
129
+ * @minLength `0`
130
+ * @maxLength `1284`
131
+ * @pattern `^arn:aws:sso::[0-9]{12}:trustedTokenIssuer/(sso)?ins-[a-zA-Z0-9-.]{16}/tti-[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`
132
+ */
133
+ IdcTrustedTokenIssuerArn: string;
134
+ };
97
135
  /**
98
136
  * Type definition for `AWS::QBusiness::DataAccessor.DocumentAttribute`.
99
137
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-dataaccessor-documentattribute.html}
@@ -16,6 +16,11 @@ export type QBusinessPermissionProperties = {
16
16
  * @pattern `^[a-zA-Z0-9][a-zA-Z0-9-]{35}$`
17
17
  */
18
18
  ApplicationId: string;
19
+ /**
20
+ * @minLength `1`
21
+ * @maxLength `10`
22
+ */
23
+ Conditions?: Condition[];
19
24
  /**
20
25
  * @minLength `1`
21
26
  * @maxLength `1284`
@@ -29,6 +34,22 @@ export type QBusinessPermissionProperties = {
29
34
  */
30
35
  StatementId: string;
31
36
  };
37
+ /**
38
+ * Type definition for `AWS::QBusiness::Permission.Condition`.
39
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-permission-condition.html}
40
+ */
41
+ export type Condition = {
42
+ /**
43
+ * @pattern `^aws:PrincipalTag/qbusiness-dataaccessor:[a-zA-Z]+`
44
+ */
45
+ ConditionKey: string;
46
+ ConditionOperator: "StringEquals";
47
+ /**
48
+ * @minLength `1`
49
+ * @maxLength `1`
50
+ */
51
+ ConditionValues: string[];
52
+ };
32
53
  /**
33
54
  * Definition of AWS::QBusiness::Permission Resource Type
34
55
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-permission.html}
@@ -0,0 +1,97 @@
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::RedshiftServerless::Snapshot Resource Type.
5
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-snapshot.html}
6
+ */
7
+ export type RedshiftServerlessSnapshotProperties = {
8
+ /**
9
+ * The namespace the snapshot is associated with.
10
+ * @minLength `3`
11
+ * @maxLength `64`
12
+ * @pattern `^(?=^[a-z0-9-]+$).{3,64}$`
13
+ */
14
+ NamespaceName?: string;
15
+ /**
16
+ * The retention period of the snapshot.
17
+ */
18
+ RetentionPeriod?: number;
19
+ /**
20
+ * The name of the snapshot.
21
+ * @minLength `3`
22
+ * @maxLength `64`
23
+ * @pattern `^(?=^[a-z0-9-]+$).{3,64}$`
24
+ */
25
+ SnapshotName: string;
26
+ /**
27
+ * An array of key-value pairs to apply to this resource.
28
+ * @minLength `0`
29
+ * @maxLength `200`
30
+ */
31
+ Tags?: Tag[];
32
+ };
33
+ /**
34
+ * Attribute type definition for `AWS::RedshiftServerless::Snapshot`.
35
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-snapshot.html#aws-resource-redshiftserverless-snapshot-return-values}
36
+ */
37
+ export type RedshiftServerlessSnapshotAttributes = {
38
+ /**
39
+ * The owner account of the snapshot.
40
+ */
41
+ OwnerAccount: string;
42
+ /**
43
+ * Definition for snapshot resource
44
+ */
45
+ Snapshot: {
46
+ AdminUsername: string;
47
+ KmsKeyId: string;
48
+ NamespaceArn: string;
49
+ /**
50
+ * @minLength `3`
51
+ * @maxLength `64`
52
+ * @pattern `^[a-z0-9-]+$`
53
+ */
54
+ NamespaceName: string;
55
+ OwnerAccount: string;
56
+ RetentionPeriod: number;
57
+ SnapshotArn: string;
58
+ SnapshotCreateTime: string;
59
+ /**
60
+ * @minLength `3`
61
+ * @maxLength `64`
62
+ * @pattern `^[a-z0-9-]+$`
63
+ */
64
+ SnapshotName: string;
65
+ Status: SnapshotStatus;
66
+ };
67
+ };
68
+ /**
69
+ * Type definition for `AWS::RedshiftServerless::Snapshot.SnapshotStatus`.
70
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshiftserverless-snapshot-snapshotstatus.html}
71
+ */
72
+ export type SnapshotStatus = "AVAILABLE" | "CREATING" | "DELETED" | "CANCELLED" | "FAILED" | "COPYING";
73
+ /**
74
+ * Type definition for `AWS::RedshiftServerless::Snapshot.Tag`.
75
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshiftserverless-snapshot-tag.html}
76
+ */
77
+ export type Tag = {
78
+ /**
79
+ * @minLength `1`
80
+ * @maxLength `128`
81
+ */
82
+ Key: string;
83
+ /**
84
+ * @minLength `0`
85
+ * @maxLength `256`
86
+ */
87
+ Value: string;
88
+ };
89
+ /**
90
+ * Resource Type definition for AWS::RedshiftServerless::Snapshot Resource Type.
91
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-snapshot.html}
92
+ */
93
+ export declare class RedshiftServerlessSnapshot extends $Resource<"AWS::RedshiftServerless::Snapshot", RedshiftServerlessSnapshotProperties, RedshiftServerlessSnapshotAttributes> {
94
+ static readonly Type = "AWS::RedshiftServerless::Snapshot";
95
+ constructor(logicalId: string, properties: RedshiftServerlessSnapshotProperties, options?: $ResourceOptions);
96
+ }
97
+ //# sourceMappingURL=AWS-RedshiftServerless-Snapshot.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::RedshiftServerless::Snapshot Resource Type.
4
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-snapshot.html}
5
+ */
6
+ export class RedshiftServerlessSnapshot extends $Resource {
7
+ static Type = "AWS::RedshiftServerless::Snapshot";
8
+ constructor(logicalId, properties, options) {
9
+ super(logicalId, RedshiftServerlessSnapshot.Type, properties, options);
10
+ }
11
+ }
12
+ //# sourceMappingURL=AWS-RedshiftServerless-Snapshot.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awboost/cfn-resource-types",
3
- "version": "0.1.369",
3
+ "version": "0.1.371",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },