/* eslint-disable */ /** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ /** * Configure authorization to control access to your API Gateway API\. * For more information about configuring access using AWS SAM see [Controlling access to API Gateway APIs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-controlling-access-to-apis.html)\. * *Type*: [ApiAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-apiauth.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Auth = Auth1; /** * If the `DefaultAuthorizer` and `Cors` properties are set, then setting `AddDefaultAuthorizerToCorsPreflight` will cause the default authorizer to be added to the `Options` property in the OpenAPI section\. * *Type*: Boolean * *Required*: No * *Default*: True * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AddDefaultAuthorizerToCorsPreflight = boolean; /** * If set to true then an API key is required for all API events\. For more information about API keys see [Create and Use Usage Plans with API Keys](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) in the *API Gateway Developer Guide*\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ApiKeyRequired = boolean; /** * List of authorization scopes for this authorizer\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AuthorizationScopes = string[]; /** * This property can be used to specify an `IdentitySource` in an incoming request for an authorizer\. * *Type*: [CognitoAuthorizationIdentity](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-cognitoauthorizationidentity.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Identity = CognitoAuthorizerIdentity; /** * Specify the header name for Authorization in the OpenApi definition\. * *Type*: String * *Required*: No * *Default*: Authorization * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Header = string; /** * The time\-to\-live \(TTL\) period, in seconds, that specifies how long API Gateway caches authorizer results\. If you specify a value greater than 0, API Gateway caches the authorizer responses\. By default, API Gateway sets this property to 300\. The maximum value is 3600, or 1 hour\. * *Type*: Integer * *Required*: No * *Default*: 300 * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ReauthorizeEvery = | { [k: string]: unknown; } | number; /** * Specify a validation expression for validating the incoming Identity * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ValidationExpression = string; /** * Can refer to a user pool/specify a userpool arn to which you want to add this cognito authorizer * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type UserPoolArn = | { [k: string]: unknown; } | string; /** * List of authorization scopes for this authorizer\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AuthorizationScopes1 = string[]; /** * Specify the function arn of the Lambda function which provides authorization for the API\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type FunctionArn = | { [k: string]: unknown; } | string; /** * Adds authorizer credentials to the OpenApi definition of the Lambda authorizer\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type FunctionInvokeRole = string; /** * This property can be used to define the type of Lambda Authorizer for an Api\. * *Valid values*: `TOKEN` or `REQUEST` * *Type*: String * *Required*: No * *Default*: `TOKEN` * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type FunctionPayloadType = 'TOKEN'; /** * This property can be used to specify an `IdentitySource` in an incoming request for an authorizer\. This property is only required if the `FunctionPayloadType` property is set to `REQUEST`\. * *Type*: [LambdaTokenAuthorizationIdentity](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-lambdatokenauthorizationidentity.html) * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Identity1 = LambdaTokenAuthorizerIdentity; /** * Specify the header name for Authorization in the OpenApi definition\. * *Type*: String * *Required*: No * *Default*: Authorization * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Header1 = string; /** * The time\-to\-live \(TTL\) period, in seconds, that specifies how long API Gateway caches authorizer results\. If you specify a value greater than 0, API Gateway caches the authorizer responses\. By default, API Gateway sets this property to 300\. The maximum value is 3600, or 1 hour\. * *Type*: Integer * *Required*: No * *Default*: 300 * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ReauthorizeEvery1 = | { [k: string]: unknown; } | number; /** * Specify a validation expression for validating the incoming Identity\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ValidationExpression1 = string; /** * List of authorization scopes for this authorizer\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AuthorizationScopes2 = string[]; /** * Specify the function arn of the Lambda function which provides authorization for the API\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type FunctionArn1 = | { [k: string]: unknown; } | string; /** * Adds authorizer credentials to the OpenApi definition of the Lambda authorizer\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type FunctionInvokeRole1 = string; /** * This property can be used to define the type of Lambda Authorizer for an API\. * *Valid values*: `TOKEN` or `REQUEST` * *Type*: String * *Required*: No * *Default*: `TOKEN` * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type FunctionPayloadType1 = 'REQUEST'; /** * This property can be used to specify an `IdentitySource` in an incoming request for an authorizer\. This property is only required if the `FunctionPayloadType` property is set to `REQUEST`\. * *Type*: [LambdaRequestAuthorizationIdentity](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-lambdarequestauthorizationidentity.html) * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Identity2 = LambdaRequestAuthorizerIdentity; /** * Converts the given context strings to the mapping expressions of format `context.contextString`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Context = string[]; /** * Converts the headers to comma\-separated string of mapping expressions of format `method.request.header.name`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Headers = string[]; /** * Converts the given query strings to comma\-separated string of mapping expressions of format `method.request.querystring.queryString`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type QueryStrings = string[]; /** * The time\-to\-live \(TTL\) period, in seconds, that specifies how long API Gateway caches authorizer results\. If you specify a value greater than 0, API Gateway caches the authorizer responses\. By default, API Gateway sets this property to 300\. The maximum value is 3600, or 1 hour\. * *Type*: Integer * *Required*: No * *Default*: 300 * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ReauthorizeEvery2 = | { [k: string]: unknown; } | number; /** * Converts the given stage variables to comma\-separated string of mapping expressions of format `stageVariables.stageVariable`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type StageVariables = string[]; /** * Specify a default authorizer for an API Gateway API, which will be used for authorizing API calls by default\. * If the Api EventSource for the function associated with this API is configured to use IAM Permissions, then this property must be set to `AWS_IAM`, otherwise an error will result\. * *Type*: String * *Required*: No * *Default*: None * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type DefaultAuthorizer = string; /** * Sets integration credentials for all resources and methods to this value\. * `CALLER_CREDENTIALS` maps to `arn:aws:iam::*:user/*`, which uses the caller credentials to invoke the endpoint\. * *Valid values*: `CALLER_CREDENTIALS`, `NONE`, `IAMRoleArn` * *Type*: String * *Required*: No * *Default*: `CALLER_CREDENTIALS` * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type InvokeRole = string; /** * Configure Resource Policy for all methods and paths on an API\. * *Type*: [ResourcePolicyStatement](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-resourcepolicystatement.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *Additional notes*: This setting can also be defined on individual `AWS::Serverless::Function` using the [ApiFunctionAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-apifunctionauth.html)\. This is required for APIs with `EndpointConfiguration: PRIVATE`\. */ export type ResourcePolicy = ResourcePolicy1; /** * The AWS accounts to block\. * *Type*: List of String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AwsAccountBlacklist = ( | string | { [k: string]: unknown; } )[]; /** * The AWS accounts to allow\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List of String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AwsAccountWhitelist = ( | string | { [k: string]: unknown; } )[]; /** * A list of custom resource policy statements to apply to this API\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type CustomStatements = ( | string | { [k: string]: unknown; } )[]; /** * The list of virtual private clouds \(VPCs\) to block, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpcBlacklist = ( | string | { [k: string]: unknown; } )[]; /** * The list of VPCs to allow, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpcWhitelist = ( | string | { [k: string]: unknown; } )[]; /** * The list of VPC endpoints to block, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpceBlacklist = ( | string | { [k: string]: unknown; } )[]; /** * The list of VPC endpoints to allow, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpceWhitelist = ( | string | { [k: string]: unknown; } )[]; /** * The IP addresses or address ranges to block\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IpRangeBlacklist = ( | string | { [k: string]: unknown; } )[]; /** * The IP addresses or address ranges to allow\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IpRangeWhitelist = ( | string | { [k: string]: unknown; } )[]; /** * The source VPC or VPC endpoints to block\. Source VPC names must start with `"vpc-"` and source VPC endpoint names must start with `"vpce-"`\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SourceVpcBlacklist = ( | string | { [k: string]: unknown; } )[]; /** * The source VPC or VPC endpoints to allow\. Source VPC names must start with `"vpc-"` and source VPC endpoint names must start with `"vpce-"`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SourceVpcWhitelist = ( | string | { [k: string]: unknown; } )[]; /** * Configures a usage plan associated with this API\. For more information about usage plans see [Create and Use Usage Plans with API Keys](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) in the *API Gateway Developer Guide*\. * This AWS SAM property generates three additional AWS CloudFormation resources when this property is set: an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html), and an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html)\. For information about this scenario, see [UsagePlan property is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-api.html#sam-specification-generated-resources-api-usage-plan)\. For general information about generated AWS CloudFormation resources, see [Generated AWS CloudFormation resources](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)\. * *Type*: [ApiUsagePlan](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-apiusageplan.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type UsagePlan = UsagePlan1; /** * Determines how this usage plan is configured\. Valid values are `PER_API`, `SHARED`, and `NONE`\. * `PER_API` creates [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html), and [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html) resources that are specific to this API\. These resources have logical IDs of `UsagePlan`, `ApiKey`, and `UsagePlanKey`, respectively\. * `SHARED` creates [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html), and [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html) resources that are shared across any API that also has `CreateUsagePlan: SHARED` in the same AWS SAM template\. These resources have logical IDs of `ServerlessUsagePlan`, `ServerlessApiKey`, and `ServerlessUsagePlanKey`, respectively\. If you use this option, we recommend that you add additional configuration for this usage plan on only one API resource to avoid conflicting definitions and an uncertain state\. * `NONE` disables the creation or association of a usage plan with this API\. This is only necessary if `SHARED` or `PER_API` is specified in the [Globals section of the AWS SAM template](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-template-anatomy-globals.html)\. * *Valid values*: `PER_API`, `SHARED`, and `NONE` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type CreateUsagePlan = | { [k: string]: unknown; } | ('PER_API' | 'SHARED' | 'NONE'); /** * Manage Cross\-origin resource sharing \(CORS\) for all your API Gateway APIs\. Specify the domain to allow as a string or specify a dictionary with additional Cors configuration\. NOTE: CORS requires AWS SAM to modify your OpenAPI definition\. So, it works only if inline OpenApi is defined with DefinitionBody\. * For more information about CORS, see [Enable CORS for an API Gateway REST API Resource](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) in the *API Gateway Developer Guide*\. * *Type*: String \| [CorsConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-corsconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Cors = | { [k: string]: unknown; } | string | Cors1; /** * Boolean indicating whether request is allowed to contain credentials\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AllowCredentials = boolean; /** * String of headers to allow\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AllowHeaders = string; /** * String containing the HTTP methods to allow\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AllowMethods = string; /** * String of origin to allow\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AllowOrigin = string; /** * String containing the number of seconds to cache CORS Preflight request\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type MaxAge = string; /** * Configures a custom domain for this API Gateway API\. * *Type*: [DomainConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Domain = Domain1; /** * Defines the type of API Gateway endpoint to map to the custom domain\. The value of this property determines how the `CertificateArn` property is mapped in AWS CloudFormation\. * *Valid values*: `REGIONAL` or `EDGE` * *Type*: String * *Required*: No * *Default*: `REGIONAL` * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type EndpointConfiguration = | { [k: string]: unknown; } | ('REGIONAL' | 'EDGE'); /** * Indicates whether non\-alphanumeric characters are allowed in basepaths defined by the `BasePath` property\. When set to `True`, non\-alphanumeric characters are removed from basepaths\. * Use `NormalizeBasePath` with the `BasePath` property\. * *Type*: Boolean * *Required*: No * *Default*: True * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type NormalizeBasePath = boolean; /** * Defines an Amazon RouteĀ 53 configuration\. * *Type*: [Route53Configuration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-route53configuration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Route53 = Route531; /** * When this property is set, AWS SAM creates a `AWS::Route53::RecordSet` resource and sets [Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type) to `AAAA` for the provided HostedZone\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IpV6 = boolean; /** * Version of OpenApi to use\. This can either be `2.0` for the Swagger specification, or one of the OpenApi 3\.0 versions, like `3.0.1`\. For more information about OpenAPI, see the [OpenAPI Specification](https://swagger.io/specification/)\. * AWS SAM creates a stage called `Stage` by default\. Setting this property to any valid value will prevent the creation of the stage `Stage`\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type OpenApiVersion = number | string; /** * The name of the Lambda alias\. For more information about Lambda aliases, see [Lambda function aliases](https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html) in the *AWS Lambda Developer Guide*\. For examples that use this property, see [Deploying serverless applications gradually](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html)\. * AWS SAM generates [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html) and [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html) resources when this property is set\. For information about this scenario, see [AutoPublishAlias property is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-function.html#sam-specification-generated-resources-function-autopublishalias)\. For general information about generated AWS CloudFormation resources, see [Generated AWS CloudFormation resources](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AutoPublishAlias = | { [k: string]: unknown; } | string; /** * The function code's Amazon S3 URI, path to local folder, or [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) object\. This property only applies if the `PackageType` property is set to `Zip`, otherwise it is ignored\. * **Notes**: * 1\. If the `PackageType` property is set to `Zip` \(default\), then one of `CodeUri` or `InlineCode` is required\. * 2\. If an Amazon S3 URI or [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) object is provided, the Amazon S3 object referenced must be a valid [Lambda deployment package](https://docs.aws.amazon.com/lambda/latest/dg/deployment-package-v2.html)\. * 3\. If the path to a local folder is provided, for the code to be transformed properly the template must go through the workflow that includes [sam build](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-build.html) followed by either [sam deploy](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-deploy.html) or [sam package](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-package.html)\. By default, relative paths are resolved with respect to the AWS SAM template's location\. * *Type*: String \| [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is similar to the [`Code`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code) property of an `AWS::Lambda::Function` resource\. The nested Amazon S3 properties are named differently\. */ export type CodeUri = string | CodeUri1; /** * An Amazon S3 bucket in the same AWS Region as your function\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is passed directly to the [`S3Bucket`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3bucket) property of the `AWS::Lambda::Function` `Code` data type\. */ export type Bucket = | { [k: string]: unknown; } | string; /** * The Amazon S3 key of the deployment package\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is passed directly to the [`S3Key`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3key) property of the `AWS::Lambda::Function` `Code` data type\. */ export type Key = | { [k: string]: unknown; } | string; /** * For versioned objects, the version of the deployment package object to use\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is passed directly to the [`S3ObjectVersion`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3objectversion) property of the `AWS::Lambda::Function` `Code` data type\. */ export type Version = | { [k: string]: unknown; } | string; /** * Configures an Amazon Simple Notification Service \(Amazon SNS\) topic or Amazon Simple Queue Service \(Amazon SQS\) queue where Lambda sends events that it can't process\. For more information about dead\-letter queue functionality, see [AWS Lambda function dead letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq) in the *AWS Lambda Developer Guide*\. * If your Lambda function's event source is an Amazon SQS queue, configure a dead\-letter queue for the source queue, not for the Lambda function\. The dead\-letter queue that you configure for a function is used for the function's [asynchronous invocation queue](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html), not for event source queues\. * *Type*: Map \| [DeadLetterQueue](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deadletterqueue.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html) property of an `AWS::Lambda::Function` resource\. In AWS CloudFormation the type is derived from the `TargetArn`, whereas in AWS SAM you must pass the type along with the `TargetArn`\. */ export type DeadLetterQueue = | { [k: string]: unknown; } | DeadLetterQueue1; /** * The Amazon Resource Name \(ARN\) of an Amazon SQS queue or Amazon SNS topic\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is passed directly to the [`TargetArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html#cfn-lambda-function-deadletterconfig-targetarn) property of the `AWS::Lambda::Function` `DeadLetterConfig` data type\. */ export type TargetArn = string; /** * The type of dead letter queue\. * *Valid values*: `SNS`, `SQS` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type = 'SNS' | 'SQS'; /** * The settings to enable gradual Lambda deployments\. * If a `DeploymentPreference` object is specified, AWS SAM creates an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html) called `ServerlessDeploymentApplication` \(one per stack\), an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html) called `DeploymentGroup`, and an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) called `CodeDeployServiceRole`\. * *Type*: [DeploymentPreference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deploymentpreference.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *See also*: For more information about this property, see [Deploying serverless applications gradually](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html)\. */ export type DeploymentPreference = DeploymentPreference1; /** * A list of CloudWatch alarms that you want to be triggered by any errors raised by the deployment\. * This property accepts the `Fn::If` intrinsic function\. See the Examples section at the bottom of this topic for an example template that uses `Fn::If`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Alarms = | { [k: string]: unknown; } | { [k: string]: unknown; }[]; /** * Whether this deployment preference is enabled\. * *Type*: Boolean * *Required*: No * *Default*: True * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Enabled = | { [k: string]: unknown; } | boolean; /** * Validation Lambda functions that are run before and after traffic shifting\. * *Type*: [Hooks](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-hooks.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Hooks = Hooks1; /** * Lambda function that is run after traffic shifting\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type PostTraffic = | { [k: string]: unknown; } | string; /** * Lambda function that is run before traffic shifting\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type PreTraffic = | { [k: string]: unknown; } | string; /** * If True, and if this deployment preference is enabled, the function's Condition will be passed through to the generated CodeDeploy resource\. Generally, you should set this to True\. Otherwise, the CodeDeploy resource would be created even if the function's Condition resolves to False\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type PassthroughCondition = | { [k: string]: unknown; } | boolean; /** * An IAM role ARN that CodeDeploy will use for traffic shifting\. An IAM role will not be created if this is provided\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Role = | { [k: string]: unknown; } | string; /** * There are two categories of deployment types at the moment: Linear and Canary\. For more information about available deployment types see [Deploying serverless applications gradually](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html)\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type1 = | { [k: string]: unknown; } | string; /** * The object that describes event invoke configuration on a Lambda function\. * *Type*: [EventInvokeConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventinvokeconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type EventInvokeConfig = EventInvokeConfig1; /** * A configuration object that specifies the destination of an event after Lambda processes it\. * *Type*: [EventInvokeDestinationConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventinvokedestinationconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DestinationConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig.html) property of an `AWS::Lambda::EventInvokeConfig` resource\. SAM requires an extra parameter, "Type", that does not exist in CloudFormation\. */ export type DestinationConfig = EventInvokeDestinationConfig; /** * A destination for events that failed processing\. * *Type*: [OnFailure](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-onfailure.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`OnFailure`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig-onfailure.html) property of an `AWS::Lambda::EventInvokeConfig` resource\. Requires `Type`, an additional SAM\-only property\. */ export type OnFailure = EventInvokeOnFailure; /** * The Amazon Resource Name \(ARN\) of the destination resource\. * *Type*: String * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is similar to the [`OnFailure`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig-onfailure.html#cfn-lambda-eventinvokeconfig-destinationconfig-onfailure-destination) property of an `AWS::Lambda::EventInvokeConfig` resource\. SAM will add any necessary permissions to the auto\-generated IAM Role associated with this function to access the resource referenced in this property\. * *Additional notes*: If the type is Lambda/EventBridge, Destination is required\. */ export type Destination = | { [k: string]: unknown; } | string; /** * Type of the resource referenced in the destination\. Supported types are `SQS`, `SNS`, `Lambda`, and `EventBridge`\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *Additional notes*: If the type is SQS/SNS and the `Destination` property is left blank, then the SQS/SNS resource is auto generated by SAM\. To reference the resource, use `.DestinationQueue` for SQS or `.DestinationTopic` for SNS\. If the type is Lambda/EventBridge, `Destination` is required\. */ export type Type2 = 'SQS' | 'SNS' | 'Lambda' | 'EventBridge'; /** * A destination for events that were processed successfully\. * *Type*: [OnSuccess](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-onsuccess.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`OnSuccess`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig-onsuccess.html) property of an `AWS::Lambda::EventInvokeConfig` resource\. Requires `Type`, an additional SAM\-only property\. */ export type OnSuccess = EventInvokeOnSuccess; /** * The Amazon Resource Name \(ARN\) of the destination resource\. * *Type*: String * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is similar to the [`OnSuccess`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig-onsuccess.html#cfn-lambda-eventinvokeconfig-destinationconfig-onsuccess-destination) property of an `AWS::Lambda::EventInvokeConfig` resource\. SAM will add any necessary permissions to the auto\-generated IAM Role associated with this function to access the resource referenced in this property\. * *Additional notes*: If the type is Lambda/EventBridge, Destination is required\. */ export type Destination1 = | { [k: string]: unknown; } | string; /** * Type of the resource referenced in the destination\. Supported types are `SQS`, `SNS`, `Lambda`, and `EventBridge`\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *Additional notes*: If the type is SQS/SNS and the `Destination` property is left blank, then the SQS/SNS resource is auto generated by SAM\. To reference the resource, use `.DestinationQueue` for SQS or `.DestinationTopic` for SNS\. If the type is Lambda/EventBridge, `Destination` is required\. */ export type Type3 = 'SQS' | 'SNS' | 'Lambda' | 'EventBridge'; /** * The maximum age of a request that Lambda sends to a function for processing\. * *Type*: Integer * *Required*: No * *AWS CloudFormation compatibility*: This property is passed directly to the [`MaximumEventAgeInSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-maximumeventageinseconds) property of an `AWS::Lambda::EventInvokeConfig` resource\. */ export type MaximumEventAgeInSeconds = number; /** * The maximum number of times to retry before the function returns an error\. * *Type*: Integer * *Required*: No * *AWS CloudFormation compatibility*: This property is passed directly to the [`MaximumRetryAttempts`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-maximumretryattempts) property of an `AWS::Lambda::EventInvokeConfig` resource\. */ export type MaximumRetryAttempts = number; export type PassThroughProp = unknown; /** * The string that specifies the function's X\-Ray tracing mode\. For more information about X\-Ray, see [Using AWS Lambda with AWS X\-Ray](https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html) in the *AWS Lambda Developer Guide*\. * *Valid values*: `Active` or `PassThrough` * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`TracingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig) property of an `AWS::Lambda::Function` resource\. If the `Tracing` property is set to `Active` and the `Role` property is not specified, then AWS SAM adds the `arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess` policy to the Lambda execution role that it creates for you\. */ export type Tracing = | { [k: string]: unknown; } | ('Active' | 'PassThrough'); /** * Configures authorization for controlling access to your API Gateway HTTP API\. * For more information, see [Controlling access to HTTP APIs with JWT authorizers](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-jwt-authorizer.html) in the *API Gateway Developer Guide*\. * *Type*: [HttpApiAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapiauth.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Auth2 = Auth3; /** * List of authorization scopes for this authorizer\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AuthorizationScopes3 = string[]; /** * Identity source expression for this authorizer\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IdentitySource = string; /** * Specifies the format of the payload sent to an HTTP API Lambda authorizer\. Required for HTTP API Lambda authorizers\. * This is passed through to the `authorizerPayloadFormatVersion` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition\. * *Valid values*: `1.0` or `2.0` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AuthorizerPayloadFormatVersion = ('1.0' | '2.0') | number; /** * Specifies whether a Lambda authorizer returns a response in a simple format\. By default, a Lambda authorizer must return an AWS Identity and Access Management \(IAM\) policy\. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy\. * This is passed through to the `enableSimpleResponses` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type EnableSimpleResponses = boolean; /** * The Amazon Resource Name \(ARN\) of the Lambda function that provides authorization for the API\. * This is passed through to the `authorizerUri` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type FunctionArn2 = | { [k: string]: unknown; } | string; /** * The ARN of the IAM role that has the credentials required for API Gateway to invoke the authorizer function\. Specify this parameter if your function's resource\-based policy doesn't grant API Gateway `lambda:InvokeFunction` permission\. * This is passed through to the `authorizerCredentials` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition\. * For more information, see [Create a Lambda authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html#http-api-lambda-authorizer.example-create) in the *API Gateway Developer Guide*\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type FunctionInvokeRole2 = | { [k: string]: unknown; } | string; /** * Specifies an `IdentitySource` in an incoming request for an authorizer\. * This is passed through to the `identitySource` section of an `x-amazon-apigateway-authorizer` in the `securitySchemes` section of an OpenAPI definition\. * *Type*: [LambdaAuthorizationIdentity](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-lambdaauthorizationidentity.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Identity3 = LambdaAuthorizerIdentity; /** * Converts the given context strings to a list of mapping expressions in the format `$context.contextString`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Context1 = string[]; /** * Converts the headers to a list of mapping expressions in the format `$request.header.name`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Headers1 = string[]; /** * Converts the given query strings to a list of mapping expressions in the format `$request.querystring.queryString`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type QueryStrings1 = string[]; /** * The time\-to\-live \(TTL\) period, in seconds, that specifies how long API Gateway caches authorizer results\. If you specify a value greater than 0, API Gateway caches the authorizer responses\. The maximum value is 3600, or 1 hour\. * *Type*: Integer * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ReauthorizeEvery3 = number; /** * Converts the given stage variables to a list of mapping expressions in the format `$stageVariables.stageVariable`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type StageVariables1 = string[]; /** * Specify the default authorizer to use for authorizing API calls to your API Gateway API\. You can specify `AWS_IAM` as a default authorizer if `EnableIamAuthorizer` is set to `true`\. Otherwise, specify an authorizer that you've defined in `Authorizers`\. * *Type*: String * *Required*: No * *Default*: None * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type DefaultAuthorizer1 = string; /** * Specify whether to use IAM authorization for the API route\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type EnableIamAuthorizer = boolean; /** * Configures a custom domain for this API Gateway HTTP API\. * *Type*: [HttpApiDomainConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapidomainconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Domain2 = Domain3; /** * A list of the basepaths to configure with the Amazon API Gateway domain name\. * *Type*: List * *Required*: No * *Default*: / * *AWS CloudFormation compatibility*: This property is similar to the [`ApiMappingKey`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-apimappingkey) property of an `AWS::ApiGatewayV2::ApiMapping` resource\. AWS SAM creates multiple `AWS::ApiGatewayV2::ApiMapping` resources, one per value specified in this property\. */ export type BasePath1 = string[]; /** * Defines the type of API Gateway endpoint to map to the custom domain\. The value of this property determines how the `CertificateArn` property is mapped in AWS CloudFormation\. * The only valid value for HTTP APIs is `REGIONAL`\. * *Type*: String * *Required*: No * *Default*: `REGIONAL` * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type EndpointConfiguration2 = | { [k: string]: unknown; } | 'REGIONAL'; /** * Defines an Amazon RouteĀ 53 configuration\. * *Type*: [Route53Configuration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-route53configuration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Route532 = Route533; /** * When this property is set, AWS SAM creates a `AWS::Route53::RecordSet` resource and sets [Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type) to `AAAA` for the provided HostedZone\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IpV61 = boolean; /** * The destination resource\. * *Type*: [ResourceReference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-connector-resourcereference.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Destination2 = ResourceReference; /** * The [logical ID](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html) of a resource in the same template\. * When `Id` is specified, if the connector generates AWS Identity and Access Management \(IAM\) policies, the IAM role associated to those policies will be inferred from the resource `Id`\. When `Id` is not specified, provide `RoleName` of the resource for connectors to attach generated IAM policies to an IAM role\. * *Type*: String * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Id = string; /** * The AWS CloudFormation type of a resource\. For more information, go to [AWS resource and property types reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)\. * *Type*: String * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type4 = string; /** * The permission type that the source resource is allowed to perform on the destination resource\. * `Read` includes AWS Identity and Access Management \(IAM\) actions that allow reading data from the resource\. * `Write` inclues IAM actions that allow initiating and writing data to a resource\. * *Valid values*: `Read` or `Write` * *Type*: List * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Permissions = ('Read' | 'Write')[]; /** * The source resource\. * *Type*: [ResourceReference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-connector-resourcereference.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Source = ResourceReference; export type Type5 = 'AWS::Serverless::Connector'; /** * The destination resource\. * *Type*: [ResourceReference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-connector-resourcereference.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Destination3 = ResourceReference; /** * The permission type that the source resource is allowed to perform on the destination resource\. * `Read` includes AWS Identity and Access Management \(IAM\) actions that allow reading data from the resource\. * `Write` inclues IAM actions that allow initiating and writing data to a resource\. * *Valid values*: `Read` or `Write` * *Type*: List * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Permissions1 = ('Read' | 'Write')[]; /** * The name of the Lambda alias\. For more information about Lambda aliases, see [Lambda function aliases](https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html) in the *AWS Lambda Developer Guide*\. For examples that use this property, see [Deploying serverless applications gradually](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html)\. * AWS SAM generates [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html) and [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html) resources when this property is set\. For information about this scenario, see [AutoPublishAlias property is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-function.html#sam-specification-generated-resources-function-autopublishalias)\. For general information about generated AWS CloudFormation resources, see [Generated AWS CloudFormation resources](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AutoPublishAlias1 = | { [k: string]: unknown; } | string; /** * The string value that is used, along with the value in `CodeUri`, to determine whether a new Lambda version should be published\. This property is only used when `AutoPublishAlias` is also defined\. * This property addresses a problem that occurs when an AWS SAM template has the following characteristics: the `DeploymentPreference` object is configured for gradual deployments \(as described in [Deploying serverless applications gradually](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html)\), the `AutoPublishAlias` property is set and doesn't change between deployments, and the `CodeUri` property is set and doesn't change between deployments\. * This scenario can occur when the deployment package stored in an Amazon Simple Storage Service \(Amazon S3\) location is replaced by a new deployment package that contains updated Lambda function code, but the `CodeUri` property remains unchanged \(as opposed to the new deployment package being uploaded to a new Amazon S3 location and the `CodeUri` being changed to the new location\)\. * In this scenario, to trigger the gradual deployment successfully, you must provide a unique value for `AutoPublishCodeSha256`\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AutoPublishCodeSha256 = | { [k: string]: unknown; } | string; /** * The ARN of the [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html) resource, used to enable code signing for this function\. For more information about code signing, see [Configuring code signing for AWS SAM applications](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/authoring-codesigning.html)\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is passed directly to the [`CodeSigningConfigArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-codesigningconfigarn) property of an `AWS::Lambda::Function` resource\. */ export type CodeSigningConfigArn = | { [k: string]: unknown; } | string; /** * The function code's Amazon S3 URI, path to local folder, or [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) object\. This property only applies if the `PackageType` property is set to `Zip`, otherwise it is ignored\. * **Notes**: * 1\. If the `PackageType` property is set to `Zip` \(default\), then one of `CodeUri` or `InlineCode` is required\. * 2\. If an Amazon S3 URI or [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) object is provided, the Amazon S3 object referenced must be a valid [Lambda deployment package](https://docs.aws.amazon.com/lambda/latest/dg/deployment-package-v2.html)\. * 3\. If the path to a local folder is provided, for the code to be transformed properly the template must go through the workflow that includes [sam build](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-build.html) followed by either [sam deploy](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-deploy.html) or [sam package](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-package.html)\. By default, relative paths are resolved with respect to the AWS SAM template's location\. * *Type*: String \| [FunctionCode](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functioncode.html) * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is similar to the [`Code`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code) property of an `AWS::Lambda::Function` resource\. The nested Amazon S3 properties are named differently\. */ export type CodeUri2 = string | CodeUri1; /** * Configures an Amazon Simple Notification Service \(Amazon SNS\) topic or Amazon Simple Queue Service \(Amazon SQS\) queue where Lambda sends events that it can't process\. For more information about dead\-letter queue functionality, see [AWS Lambda function dead letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq) in the *AWS Lambda Developer Guide*\. * If your Lambda function's event source is an Amazon SQS queue, configure a dead\-letter queue for the source queue, not for the Lambda function\. The dead\-letter queue that you configure for a function is used for the function's [asynchronous invocation queue](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html), not for event source queues\. * *Type*: Map \| [DeadLetterQueue](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deadletterqueue.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html) property of an `AWS::Lambda::Function` resource\. In AWS CloudFormation the type is derived from the `TargetArn`, whereas in AWS SAM you must pass the type along with the `TargetArn`\. */ export type DeadLetterQueue2 = | { [k: string]: unknown; } | DeadLetterQueue1; /** * The settings to enable gradual Lambda deployments\. * If a `DeploymentPreference` object is specified, AWS SAM creates an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html) called `ServerlessDeploymentApplication` \(one per stack\), an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html) called `DeploymentGroup`, and an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) called `CodeDeployServiceRole`\. * *Type*: [DeploymentPreference](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deploymentpreference.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *See also*: For more information about this property, see [Deploying serverless applications gradually](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html)\. */ export type DeploymentPreference2 = DeploymentPreference1; /** * The object that describes event invoke configuration on a Lambda function\. * *Type*: [EventInvokeConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventinvokeconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type EventInvokeConfig2 = EventInvokeConfig1; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties2 = S3EventProperties; /** * S3 bucket name\. This bucket must exist in the same template\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is similar to the [`BucketName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-name) property of an `AWS::S3::Bucket` resource\. This is a required field in SAM\. This field only accepts a reference to the S3 bucket created in this template */ export type Bucket1 = | { [k: string]: unknown; } | string; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type6 = 'S3'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties3 = SNSEventProperties; /** * Set this property to true, or specify `SqsSubscriptionObject` to enable batching SNS topic notifications in an SQS queue\. Setting this property to `true` creates a new SQS queue, whereas specifying a `SqsSubscriptionObject` uses an existing SQS queue\. * *Type*: Boolean \| [SqsSubscriptionObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqssubscriptionobject.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SqsSubscription = boolean | SqsSubscription1; /** * The maximum number of items to retrieve in a single batch for the SQS queue\. * *Type*: String * *Required*: No * *Default*: 10 * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type BatchSize = | { [k: string]: unknown; } | string; /** * Disables the SQS event source mapping to pause polling and invocation\. * *Type*: Boolean * *Required*: No * *Default*: True * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Enabled1 = boolean; /** * Specify an existing SQS queue arn\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type QueueArn = | { [k: string]: unknown; } | string; /** * Give a custom logicalId name for the [AWS::SQS::QueuePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html) resource\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type QueuePolicyLogicalId = string; /** * Specify the queue URL associated with the `QueueArn` property\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type QueueUrl1 = | { [k: string]: unknown; } | string; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type7 = 'SNS'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties4 = KinesisEventProperties; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type8 = 'Kinesis'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties5 = DynamoDBEventProperties; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type9 = 'DynamoDB'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties6 = SQSEventProperties; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type10 = 'SQS'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties7 = ApiEventProperties; /** * Auth configuration for this specific Api\+Path\+Method\. * Useful for overriding the API's `DefaultAuthorizer` setting auth config on an individual path when no `DefaultAuthorizer` is specified or overriding the default `ApiKeyRequired` setting\. * *Type*: [ApiFunctionAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-apifunctionauth.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Auth4 = ApiAuth; /** * Requires an API key for this API, path, and method\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ApiKeyRequired1 = boolean; /** * The authorization scopes to apply to this API, path, and method\. * The scopes that you specify will override any scopes applied by the `DefaultAuthorizer` property if you have specified it\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AuthorizationScopes4 = string[]; /** * The `Authorizer` for a specific Function * If you have specified a Global Authorizer on the API and want to make a specific Function public, override by setting `Authorizer` to `NONE`\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Authorizer = string; /** * Specifies the `InvokeRole` to use for `AWS_IAM` authorization\. * *Type*: String * *Required*: No * *Default*: `CALLER_CREDENTIALS` * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *Additional notes*: `CALLER_CREDENTIALS` maps to `arn:aws:iam::*:user/*`, which uses the caller credentials to invoke the endpoint\. */ export type InvokeRole1 = | { [k: string]: unknown; } | string; /** * Configure Resource Policy for this path on an API\. * *Type*: [ResourcePolicyStatement](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-resourcepolicystatement.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ResourcePolicy2 = ResourcePolicy3; /** * The AWS accounts to block\. * *Type*: List of String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AwsAccountBlacklist1 = ( | string | { [k: string]: unknown; } )[]; /** * The AWS accounts to allow\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List of String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AwsAccountWhitelist1 = ( | string | { [k: string]: unknown; } )[]; /** * A list of custom resource policy statements to apply to this API\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type CustomStatements1 = ( | string | { [k: string]: unknown; } )[]; /** * The list of virtual private clouds \(VPCs\) to block, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpcBlacklist1 = ( | string | { [k: string]: unknown; } )[]; /** * The list of VPCs to allow, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpcWhitelist1 = ( | string | { [k: string]: unknown; } )[]; /** * The list of VPC endpoints to block, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpceBlacklist1 = ( | string | { [k: string]: unknown; } )[]; /** * The list of VPC endpoints to allow, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpceWhitelist1 = ( | string | { [k: string]: unknown; } )[]; /** * The IP addresses or address ranges to block\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IpRangeBlacklist1 = ( | string | { [k: string]: unknown; } )[]; /** * The IP addresses or address ranges to allow\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IpRangeWhitelist1 = ( | string | { [k: string]: unknown; } )[]; /** * The source VPC or VPC endpoints to block\. Source VPC names must start with `"vpc-"` and source VPC endpoint names must start with `"vpce-"`\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SourceVpcBlacklist1 = ( | string | { [k: string]: unknown; } )[]; /** * The source VPC or VPC endpoints to allow\. Source VPC names must start with `"vpc-"` and source VPC endpoint names must start with `"vpce-"`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SourceVpcWhitelist1 = ( | string | { [k: string]: unknown; } )[]; /** * HTTP method for which this function is invoked\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Method = string; /** * Uri path for which this function is invoked\. Must start with `/`\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Path = string; /** * Request model to use for this specific Api\+Path\+Method\. This should reference the name of a model specified in the `Models` section of an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource\. * *Type*: [RequestModel](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-requestmodel.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type RequestModel = RequestModel1; /** * Name of a model defined in the Models property of the [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html)\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Model1 = string; /** * Adds a `required` property in the parameters section of the OpenApi definition for the given API endpoint\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Required = boolean; /** * Specifies whether API Gateway uses the `Model` to validate the request body\. For more information, see [Enable request validation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) in the *API Gateway Developer Guide*\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ValidateBody = boolean; /** * Specifies whether API Gateway uses the `Model` to validate request path parameters, query strings, and headers\. For more information, see [Enable request validation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) in the *API Gateway Developer Guide*\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ValidateParameters = boolean; /** * Request parameters configuration for this specific Api\+Path\+Method\. All parameter names must start with `method.request` and must be limited to `method.request.header`, `method.request.querystring`, or `method.request.path`\. * If a parameter is a string and not a Function Request Parameter Object, then `Required` and `Caching` will default to false\. * *Type*: String \| [RequestParameter](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-requestparameter.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type RequestParameters = string | RequestParameters1; /** * Adds `cacheKeyParameters` section to the API Gateway OpenApi definition * *Type*: Boolean * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Caching = boolean; /** * This field specifies whether a parameter is required * *Type*: Boolean * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Required1 = boolean; /** * Identifier of a RestApi resource, which must contain an operation with the given path and method\. Typically, this is set to reference an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource defined in this template\. * If you don't define this property, AWS SAM creates a default [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource using a generated `OpenApi` document\. That resource contains a union of all paths and methods defined by `Api` events in the same template that do not specify a `RestApiId`\. * This cannot reference an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource defined in another template\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type RestApiId = string | Ref; export type Ref1 = string; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type11 = 'Api'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties8 = EventsScheduleProperties; /** * Configure the Amazon Simple Queue Service \(Amazon SQS\) queue where EventBridge sends events after a failed target invocation\. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function\. For more information, see [Event retry policy and using dead\-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*\. * The [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html) resource type has a similar data type, `DeadLetterQueue`, which handles failures that occur after successful invocation of the target Lambda function\. Examples of these types of failures include Lambda throttling, or errors returned by the Lambda target function\. For more information about the function `DeadLetterQueue` property, see [AWS Lambda function dead\-letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq) in the *AWS Lambda Developer Guide*\. * *Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-scheduledeadletterconfig.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig) property of the `AWS::Events::Rule` `Target` data type\. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead\-letter queue for you\. */ export type DeadLetterConfig = DeadLetterConfig1; /** * The custom name of the dead letter queue that AWS SAM creates if `Type` is specified\. * If the `Type` property is not set, this property is ignored\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type QueueLogicalId = string; /** * The type of the queue\. When this property is set, AWS SAM automatically creates a dead\-letter queue and attaches necessary [resource\-based policy](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html#dlq-perms) to grant permission to rule resource to send events to the queue\. * Specify either the `Type` property or `Arn` property, but not both\. * *Valid values*: `SQS` * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type12 = 'SQS'; /** * Indicates whether the rule is enabled\. * To disable the rule, set this property to `false`\. * Specify either the `Enabled` or `State` property, but not both\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) property of an `AWS::Events::Rule` resource\. If this property is set to `true` then AWS SAM passes `ENABLED`, otherwise it passes `DISABLED`\. */ export type Enabled5 = boolean; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type13 = 'Schedule'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties9 = ScheduleV2EventProperties; /** * Configure the Amazon Simple Queue Service \(Amazon SQS\) queue where EventBridge sends events after a failed target invocation\. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function\. For more information, see [Configuring a dead\-letter queue for EventBridge Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/configuring-schedule-dlq.html) in the *EventBridge Scheduler User Guide*\. * The [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html) resource type has a similar data type, `DeadLetterQueue`, which handles failures that occur after successful invocation of the target Lambda function\. Examples of these types of failures include Lambda throttling, or errors returned by the Lambda target function\. For more information about the function `DeadLetterQueue` property, see [AWS Lambda function dead\-letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq) in the *AWS Lambda Developer Guide*\. * *Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-scheduledeadletterconfig.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-deadletterconfig) property of the `AWS::Scheduler::Schedule` `Target` data type\. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead\-letter queue for you\. */ export type DeadLetterConfig2 = DeadLetterConfig1; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type14 = 'ScheduleV2'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties10 = CloudWatchEventProperties; /** * Indicates whether the rule is enabled\. * To disable the rule, set this property to `false`\. * Specify either the `Enabled` or `State` property, but not both\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) property of an `AWS::Events::Rule` resource\. If this property is set to `true` then AWS SAM passes `ENABLED`, otherwise it passes `DISABLED`\. */ export type Enabled6 = boolean; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type15 = 'CloudWatchEvent'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties11 = EventBridgeRuleEventProperties; /** * Configure the Amazon Simple Queue Service \(Amazon SQS\) queue where EventBridge sends events after a failed target invocation\. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function\. For more information, see [Event retry policy and using dead\-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*\. * The [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html) resource type has a similar data type, `DeadLetterQueue`, which handles failures that occur after successful invocation of the target Lambda function\. Examples of these types of failures include Lambda throttling, or errors returned by the Lambda target function\. For more information about the function `DeadLetterQueue` property, see [AWS Lambda function dead\-letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq) in the *AWS Lambda Developer Guide*\. * *Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deadletterconfig.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig) property of the `AWS::Events::Rule` `Target` data type\. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead\-letter queue for you\. */ export type DeadLetterConfig3 = DeadLetterConfig1; /** * The AWS resource that EventBridge invokes when a rule is triggered\. You can use this property to specify the logical ID of the target\. If this property is not specified, then AWS SAM generates the logical ID of the target\. * *Type*: [Target](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-target.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Targets`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets) property of an `AWS::Events::Rule` resource\. The AWS SAM version of this property only allows you to specify the logical ID of a single target\. */ export type Target = EventBridgeRuleTarget; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type16 = 'EventBridgeRule'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties12 = CloudWatchLogsEventProperties; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type17 = 'CloudWatchLogs'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties13 = IoTRuleEventProperties; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type18 = 'IoTRule'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties14 = AlexaSkillEventProperties; /** * The Alexa Skill ID for your Alexa Skill\. For more information about Skill ID see [Configure the trigger for a Lambda function](https://developer.amazon.com/docs/custom-skills/host-a-custom-skill-as-an-aws-lambda-function.html#configuring-the-alexa-skills-kit-trigger) in the Alexa Skills Kit documentation\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SkillId = string; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type19 = 'AlexaSkill'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties15 = CognitoEventProperties; /** * Reference to UserPool defined in the same template * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type UserPool = | { [k: string]: unknown; } | string; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type20 = 'Cognito'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties16 = HttpApiEventProperties; /** * Identifier of an [AWS::Serverless::HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-httpapi.html) resource defined in this template\. * If not defined, a default [AWS::Serverless::HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-httpapi.html) resource is created called `ServerlessHttpApi` using a generated OpenApi document containing a union of all paths and methods defined by Api events defined in this template that do not specify an `ApiId`\. * This cannot reference an [AWS::Serverless::HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-httpapi.html) resource defined in another template\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ApiId = | { [k: string]: unknown; } | string; /** * Auth configuration for this specific Api\+Path\+Method\. * Useful for overriding the API's `DefaultAuthorizer` or setting auth config on an individual path when no `DefaultAuthorizer` is specified\. * *Type*: [HttpApiFunctionAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapifunctionauth.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Auth5 = HttpApiAuth; /** * The authorization scopes to apply to this API, path, and method\. * Scopes listed here will override any scopes applied by the `DefaultAuthorizer` if one exists\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AuthorizationScopes5 = string[]; /** * The `Authorizer` for a specific Function\. To use IAM authorization, specify `AWS_IAM` and specify `true` for `EnableIamAuthorizer` in the `Globals` section of your template\. * If you have specified a Global Authorizer on the API and want to make a specific Function public, override by setting `Authorizer` to `NONE`\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Authorizer1 = string; /** * HTTP method for which this function is invoked\. * If no `Path` and `Method` are specified, SAM will create a default API path that routes any request that doesn't map to a different endpoint to this Lambda function\. Only one of these default paths can exist per API\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Method1 = string; /** * Uri path for which this function is invoked\. Must start with `/`\. * If no `Path` and `Method` are specified, SAM will create a default API path that routes any request that doesn't map to a different endpoint to this Lambda function\. Only one of these default paths can exist per API\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Path1 = string; /** * Specifies the format of the payload sent to an integration\. * NOTE: PayloadFormatVersion requires SAM to modify your OpenAPI definition, so it only works with inline OpenApi defined in the `DefinitionBody` property\. * *Type*: String * *Required*: No * *Default*: 2\.0 * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type PayloadFormatVersion = | { [k: string]: unknown; } | string; /** * Custom timeout between 50 and 29,000 milliseconds\. * NOTE: TimeoutInMillis requires SAM to modify your OpenAPI definition, so it only works with inline OpenApi defined in the `DefinitionBody` property\. * *Type*: Integer * *Required*: No * *Default*: 5000 * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type TimeoutInMillis = | { [k: string]: unknown; } | number; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type21 = 'HttpApi'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties17 = MSKEventProperties; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type22 = 'MSK'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties18 = MQEventProperties; /** * The AWS Key Management Service \(AWS KMS\) key ID of a customer managed key from AWS Secrets Manager\. Required when you use a customer managed key from Secrets Manager with a Lambda execution role that doesn't included the `kms:Decrypt` permission\. * The value of this property is a UUID\. For example: `1abc23d4-567f-8ab9-cde0-1fab234c5d67`\. * *Type*: String * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SecretsManagerKmsKeyId = string; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type23 = 'MQ'; /** * Object describing properties of this event mapping\. The set of properties must conform to the defined Type\. * *Type*: [S3](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-s3.html) \| [SNS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sns.html) \| [Kinesis](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-kinesis.html) \| [DynamoDB](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-dynamodb.html) \| [SQS](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-sqs.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-api.html) \| [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-schedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventbridgerule.html) \| [CloudWatchLogs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cloudwatchlogs.html) \| [IoTRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-iotrule.html) \| [AlexaSkill](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-alexaskill.html) \| [Cognito](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-cognito.html) \| [HttpApi](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-httpapi.html) \| [MSK](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-msk.html) \| [MQ](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-mq.html) \| [SelfManagedKafka](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-selfmanagedkafka.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties19 = SelfManagedKafkaEventProperties; /** * The list of bootstrap servers for your Kafka brokers\. Include the port, for example `broker.example.com:xxxx` * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type KafkaBootstrapServers = ( | string | { [k: string]: unknown; } )[]; /** * The event type\. * *Valid values*: `S3`, `SNS`, `Kinesis`, `DynamoDB`, `SQS`, `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `CloudWatchLogs`, `IoTRule`, `AlexaSkill`, `Cognito`, `EventBridgeRule`, `HttpApi`, `MSK`, `MQ`, `SelfManagedKafka` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type24 = 'SelfManagedKafka'; /** * The object that describes a function URL\. A function URL is an HTTPS endpoint that you can use to invoke your function\. * For more information, see [Function URLs](https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html) in the *AWS Lambda Developer Guide*\. * *Type*: [FunctionUrlConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-functionurlconfig.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type FunctionUrlConfig = FunctionUrlConfig1; /** * The type of authorization for your function URL\. Set to `AWS_IAM` to use IAM to authorize requests\. Set to `NONE` for open access\. * For more information, see [Function URLs](https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html) in the *AWS Lambda Developer Guide* * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is passed directly to the [`AuthType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html#cfn-lambda-url-authorizationtype) property of an `AWS::Lambda::Url` resource\. */ export type AuthType = | { [k: string]: unknown; } | string; /** * One or more policies that this function needs\. They will be appended to the default role for this function\. * This property accepts a single string or a list of strings, and can be the name of AWS managed policies or AWS SAM policy templates, or inline IAM policy documents formatted in YAML\. * For more information about AWS managed policies, see [AWS managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) in the IAM User Guide\. For more information about AWS SAM policy templates, see [AWS SAM policy templates](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-policy-templates.html) in the AWS Serverless Application Model Developer Guide\. For more information about inline policies, see [Inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) in the IAM User Guide\. * If the `Role` property is set, this property is ignored\. * *Type*: String \| List \| Map * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Policies`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies) property of an `AWS::IAM::Role` resource\. AWS SAM supports AWS managed policy names and AWS SAM policy templates, in addition to JSON policy documents\. AWS CloudFormation accepts only JSON policy documents\. */ export type Policies = | string | { [k: string]: unknown; } | ( | string | { [k: string]: unknown; } )[]; /** * The ARN of an IAM role to use as this function's execution role\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Role`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-role) property of an `AWS::Lambda::Function` resource\. This is required in AWS CloudFormation but not in AWS SAM\. If a role isn't specified, one is created for you with a logical ID of `Role`\. */ export type Role1 = | { [k: string]: unknown; } | string; /** * The string that specifies the function's X\-Ray tracing mode\. For more information about X\-Ray, see [Using AWS Lambda with AWS X\-Ray](https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html) in the *AWS Lambda Developer Guide*\. * *Valid values*: `Active` or `PassThrough` * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`TracingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig) property of an `AWS::Lambda::Function` resource\. If the `Tracing` property is set to `Active` and the `Role` property is not specified, then AWS SAM adds the `arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess` policy to the Lambda execution role that it creates for you\. */ export type Tracing1 = | { [k: string]: unknown; } | ('Active' | 'PassThrough'); export type Type25 = 'AWS::Serverless::Function'; /** * Attribute name and type to be used as the table's primary key\. If not provided, the primary key will be a `String` with a value of `id`\. * The value of this property cannot be modified after this resource is created\. * *Type*: [PrimaryKeyObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-simpletable-primarykeyobject.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type PrimaryKey = PrimaryKey1; export type Type27 = 'AWS::Serverless::SimpleTable'; /** * An object describing the properties of this event mapping\. The set of properties must conform to the defined `Type`\. * *Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties22 = ScheduleEventProperties; /** * Configure the Amazon Simple Queue Service \(Amazon SQS\) queue where EventBridge sends events after a failed target invocation\. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function\. For more information, see [Event retry policy and using dead\-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*\. * *Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinescheduledeadletterconfig.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig) property of the `AWS::Events::Rule` `Target` data type\. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead\-letter queue for you\. */ export type DeadLetterConfig4 = DeadLetterConfig5; /** * The custom name of the dead letter queue that AWS SAM creates if `Type` is specified\. * If the `Type` property is not set, this property is ignored\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type QueueLogicalId1 = string; /** * The type of the queue\. When this property is set, AWS SAM automatically creates a dead\-letter queue and attaches necessary [resource\-based policy](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html#dlq-perms) to grant permission to rule resource to send events to the queue\. * Specify either the `Type` property or `Arn` property, but not both\. * *Valid values*: `SQS` * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type28 = 'SQS'; /** * Indicates whether the rule is enabled\. * To disable the rule, set this property to `false`\. * Specify either the `Enabled` or `State` property, but not both\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`State`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) property of an `AWS::Events::Rule` resource\. If this property is set to `true` then AWS SAM passes `ENABLED`, otherwise it passes `DISABLED`\. */ export type Enabled9 = boolean; /** * The event type\. * *Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type29 = 'Schedule'; /** * An object describing the properties of this event mapping\. The set of properties must conform to the defined `Type`\. * *Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties23 = ScheduleV2EventProperties1; /** * Configure the Amazon Simple Queue Service \(Amazon SQS\) queue where EventBridge sends events after a failed target invocation\. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function\. For more information, see [Configuring a dead\-letter queue for EventBridge Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/configuring-schedule-dlq.html) in the *EventBridge Scheduler User Guide*\. * *Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinescheduledeadletterconfig.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-deadletterconfig) property of the `AWS::Scheduler::Schedule` `Target` data type\. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead\-letter queue for you\. */ export type DeadLetterConfig6 = DeadLetterConfig5; /** * The event type\. * *Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type30 = 'ScheduleV2'; /** * An object describing the properties of this event mapping\. The set of properties must conform to the defined `Type`\. * *Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties24 = CloudWatchEventProperties1; /** * The event type\. * *Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type31 = 'CloudWatchEvent'; /** * An object describing the properties of this event mapping\. The set of properties must conform to the defined `Type`\. * *Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties25 = EventBridgeRuleEventProperties1; /** * Configure the Amazon Simple Queue Service \(Amazon SQS\) queue where EventBridge sends events after a failed target invocation\. Invocation can fail, for example, when sending an event to a Lambda function that doesn't exist, or when EventBridge has insufficient permissions to invoke the Lambda function\. For more information, see [Event retry policy and using dead\-letter queues](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) in the *Amazon EventBridge User Guide*\. * *Type*: [DeadLetterConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinedeadletterconfig.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DeadLetterConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig) property of the `AWS::Events::Rule` `Target` data type\. The AWS SAM version of this property includes additional subproperties, in case you want AWS SAM to create the dead\-letter queue for you\. */ export type DeadLetterConfig7 = DeadLetterConfig5; /** * The event type\. * *Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type32 = 'EventBridgeRule'; /** * An object describing the properties of this event mapping\. The set of properties must conform to the defined `Type`\. * *Type*: [Schedule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedule.html) \| [ScheduleV2](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineschedulev2.html) \| [CloudWatchEvent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachinecloudwatchevent.html) \| [EventBridgeRule](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventbridgerule.html) \| [Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineapi.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Properties26 = ApiEventProperties1; /** * The authorization configuration for this API, path, and method\. * Use this property to override the API's `DefaultAuthorizer` setting for an individual path, when no `DefaultAuthorizer` is specified, or to override the default `ApiKeyRequired` setting\. * *Type*: [ApiStateMachineAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-apistatemachineauth.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Auth6 = Auth7; /** * Requires an API key for this API, path, and method\. * *Type*: Boolean * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ApiKeyRequired2 = boolean; /** * The authorization scopes to apply to this API, path, and method\. * The scopes that you specify will override any scopes applied by the `DefaultAuthorizer` property if you have specified it\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AuthorizationScopes6 = string[]; /** * The `Authorizer` for a specific state machine\. * If you have specified a global authorizer for the API and want to make this state machine public, override the global authorizer by setting `Authorizer` to `NONE`\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Authorizer2 = string; /** * Configure the resource policy for this API and path\. * *Type*: [ResourcePolicyStatement](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-resourcepolicystatement.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ResourcePolicy4 = ResourcePolicy5; /** * The AWS accounts to block\. * *Type*: List of String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AwsAccountBlacklist2 = ( | string | { [k: string]: unknown; } )[]; /** * The AWS accounts to allow\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List of String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type AwsAccountWhitelist2 = ( | string | { [k: string]: unknown; } )[]; /** * A list of custom resource policy statements to apply to this API\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type CustomStatements2 = ( | string | { [k: string]: unknown; } )[]; /** * The list of virtual private clouds \(VPCs\) to block, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpcBlacklist2 = ( | string | { [k: string]: unknown; } )[]; /** * The list of VPCs to allow, where each VPC is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpcWhitelist2 = ( | string | { [k: string]: unknown; } )[]; /** * The list of VPC endpoints to block, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpceBlacklist2 = ( | string | { [k: string]: unknown; } )[]; /** * The list of VPC endpoints to allow, where each VPC endpoint is specified as a reference such as a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) or the `Ref` [intrinsic function](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html)\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IntrinsicVpceWhitelist2 = ( | string | { [k: string]: unknown; } )[]; /** * The IP addresses or address ranges to block\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IpRangeBlacklist2 = ( | string | { [k: string]: unknown; } )[]; /** * The IP addresses or address ranges to allow\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type IpRangeWhitelist2 = ( | string | { [k: string]: unknown; } )[]; /** * The source VPC or VPC endpoints to block\. Source VPC names must start with `"vpc-"` and source VPC endpoint names must start with `"vpce-"`\. For an example use of this property, see the Examples section at the bottom of this page\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SourceVpcBlacklist2 = ( | string | { [k: string]: unknown; } )[]; /** * The source VPC or VPC endpoints to allow\. Source VPC names must start with `"vpc-"` and source VPC endpoint names must start with `"vpce-"`\. * *Type*: List * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SourceVpcWhitelist2 = ( | string | { [k: string]: unknown; } )[]; /** * The HTTP method for which this function is invoked\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Method2 = string; /** * The URI path for which this function is invoked\. The value must start with `/`\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Path2 = string; /** * The identifier of a `RestApi` resource, which must contain an operation with the given path and method\. Typically, this is set to reference an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource that is defined in this template\. * If you don't define this property, AWS SAM creates a default [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource using a generated `OpenApi` document\. That resource contains a union of all paths and methods defined by `Api` events in the same template that do not specify a `RestApiId`\. * This property can't reference an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html) resource that is defined in another template\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type RestApiId1 = | { [k: string]: unknown; } | string; export type Unescapemappingtemplate = boolean; /** * The event type\. * *Valid values*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule` * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Type33 = 'Api'; /** * One or more policies that this state machine's execution role needs\. * This property accepts a single string or a list of strings\. The property can be the name of AWS managed AWS Identity and Access Management \(IAM\) policies, AWS SAM policy templates, or one or more inline policy documents formatted as a map\. * If the `Role` property is set, this property is ignored\. * *Type*: String \| List \| Map * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Policies1 = | string | { [k: string]: unknown; } | ( | string | { [k: string]: unknown; } )[]; export type Type35 = 'AWS::Serverless::StateMachine'; /** * Amazon S3 Uri, path to local folder, or LayerContent object of the layer code\. * If an Amazon S3 Uri or LayerContent object is provided, The Amazon S3 object referenced must be a valid ZIP archive that contains the contents of an [Lambda layer](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)\. * If a path to a local folder is provided, for the content to be transformed properly the template must go through the workflow that includes [sam build](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-build.html) followed by either [sam deploy](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-deploy.html) or [sam package](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-package.html)\. By default, relative paths are resolved with respect to the AWS SAM template's location\. * *Type*: String \| [LayerContent](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-layerversion-layercontent.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is similar to the [`Content`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-content) property of an `AWS::Lambda::LayerVersion` resource\. The nested Amazon S3 properties are named differently\. */ export type ContentUri = string | ContentUri1; /** * Specifies whether old versions of your LayerVersion are retained or deleted after an update\. * *Valid values*: `Retain` or `Delete` * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *Additional notes*: When you specify `Retain`, AWS SAM adds a [Resource attributes](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-resource-attributes.html) of `DeletionPolicy: Retain` to the transformed `AWS::Lambda::LayerVersion` resource\. */ export type RetentionPolicy = | { [k: string]: unknown; } | string; export type Type36 = 'AWS::Serverless::LayerVersion'; /** * Configure authorization to control access to your API Gateway API\. * For more information about configuring access using AWS SAM see [Controlling access to API Gateway APIs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-controlling-access-to-apis.html)\. * *Type*: [ApiAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-apiauth.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Auth8 = Auth1; /** * Manage Cross\-origin resource sharing \(CORS\) for all your API Gateway APIs\. Specify the domain to allow as a string or specify a dictionary with additional Cors configuration\. NOTE: CORS requires AWS SAM to modify your OpenAPI definition\. So, it works only if inline OpenApi is defined with DefinitionBody\. * For more information about CORS, see [Enable CORS for an API Gateway REST API Resource](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) in the *API Gateway Developer Guide*\. * *Type*: String \| [CorsConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-corsconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Cors3 = | { [k: string]: unknown; } | string | Cors1; /** * Amazon S3 Uri, local file path, or location object of the the OpenAPI document defining the API\. The Amazon S3 object this property references must be a valid OpenAPI file\. If neither `DefinitionUri` nor `DefinitionBody` are specified, SAM will generate a `DefinitionBody` for you based on your template configuration\. * If a local file path is provided, the template must go through the workflow that includes the `sam deploy` or `sam package` command, in order for the definition to be transformed properly\. * Intrinsic functions are not supported in external OpenApi files referenced by `DefinitionUri`\. Use instead the `DefinitionBody` property with the [Include Transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) to import an OpenApi definition into the template\. * *Type*: String \| [ApiDefinition](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-apidefinition.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`BodyS3Location`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location) property of an `AWS::ApiGateway::RestApi` resource\. The nested Amazon S3 properties are named differently\. */ export type DefinitionUri2 = string | DefinitionUri3; /** * Configures a custom domain for this API Gateway API\. * *Type*: [DomainConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-domainconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Domain4 = Domain1; /** * The endpoint type of a REST API\. * *Type*: [EndpointConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-endpointconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`EndpointConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-endpointconfiguration) property of an `AWS::ApiGateway::RestApi` resource\. The nested configuration properties are named differently\. */ export type EndpointConfiguration3 = | { [k: string]: unknown; } | EndpointConfiguration4; /** * Version of OpenApi to use\. This can either be `2.0` for the Swagger specification, or one of the OpenApi 3\.0 versions, like `3.0.1`\. For more information about OpenAPI, see the [OpenAPI Specification](https://swagger.io/specification/)\. * AWS SAM creates a stage called `Stage` by default\. Setting this property to any valid value will prevent the creation of the stage `Stage`\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type OpenApiVersion1 = number | string; /** * The name of the stage, which API Gateway uses as the first path segment in the invoke Uniform Resource Identifier \(URI\)\. * To reference the stage resource, use `.Stage`\. For more information about referencing resources generated when an [AWS::Serverless::Api](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-resource-api.html#sam-resource-api) resource is specified, see [AWS CloudFormation resources generated when AWS::Serverless::Api is specified](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources-api.html)\. For general information about generated AWS CloudFormation resources, see [Generated AWS CloudFormation resources](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is similar to the [`StageName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-stagename) property of an `AWS::ApiGateway::Stage` resource\. It is required in SAM, but not required in API Gateway * *Additional notes*: The Implicit API has a stage name of "Prod"\. */ export type StageName = | { [k: string]: unknown; } | string; export type Type38 = 'AWS::Serverless::Api'; /** * Configures authorization for controlling access to your API Gateway HTTP API\. * For more information, see [Controlling access to HTTP APIs with JWT authorizers](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-jwt-authorizer.html) in the *API Gateway Developer Guide*\. * *Type*: [HttpApiAuth](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapiauth.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Auth9 = Auth3; /** * The Amazon Simple Storage Service \(Amazon S3\) URI, local file path, or location object of the the OpenAPI definition that defines the HTTP API\. The Amazon S3 object that this property references must be a valid OpenAPI definition file\. If you don't specify a `DefinitionUri` or a `DefinitionBody` are specified, AWS SAM generates a `DefinitionBody` for you based on your template configuration\. * If you provide a local file path, the template must go through the workflow that includes the `sam deploy` or `sam package` command for the definition to be transformed properly\. * Intrinsic functions are not supported in external OpenApi definition files that you reference with `DefinitionUri`\. To import an OpenApi definition into the template, use the `DefinitionBody` property with the [Include transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html)\. * *Type*: String \| [HttpApiDefinition](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapidefinition.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`BodyS3Location`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-bodys3location) property of an `AWS::ApiGatewayV2::Api` resource\. The nested Amazon S3 properties are named differently\. */ export type DefinitionUri4 = string | DefinitionUri5; /** * The name of the Amazon S3 bucket where the OpenAPI file is stored\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is passed directly to the [`Bucket`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-bucket) property of the `AWS::ApiGatewayV2::Api` `BodyS3Location` data type\. */ export type Bucket4 = string; /** * The Amazon S3 key of the OpenAPI file\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is passed directly to the [`Key`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-key) property of the `AWS::ApiGatewayV2::Api` `BodyS3Location` data type\. */ export type Key3 = string; /** * For versioned objects, the version of the OpenAPI file\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is passed directly to the [`Version`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-version) property of the `AWS::ApiGatewayV2::Api` `BodyS3Location` data type\. */ export type Version3 = string; /** * The description of the HTTP API resource\. * When you specify `Description`, AWS SAM will modify the HTTP API resource's OpenApi definition by setting the `description` field\. The following scenarios will result in an error: * + The `DefinitionBody` property is specified with the `description` field set in the Open API definition – This results in a conflict of the `description` field that AWS SAM won't resolve\. * + The `DefinitionUri` property is specified – AWS SAM won't modify an Open API definition that is retrieved from Amazon S3\. * *Type*: String * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Description9 = string; /** * Configures a custom domain for this API Gateway HTTP API\. * *Type*: [HttpApiDomainConfiguration](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-httpapidomainconfiguration.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type Domain5 = Domain3; export type Type39 = 'AWS::Serverless::HttpApi'; /** * Template URL, file path, or location object of a nested application\. * If a template URL is provided, it must follow the format specified in the [CloudFormation TemplateUrl documentation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl) and contain a valid CloudFormation or SAM template\. An [ApplicationLocationObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-application-applicationlocationobject.html) can be used to specify an application that has been published to the [AWS Serverless Application Repository](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/what-is-serverlessrepo.html)\. * If a local file path is provided, the template must go through the workflow that includes the `sam deploy` or `sam package` command, in order for the application to be transformed properly\. * *Type*: String \| [ApplicationLocationObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-application-applicationlocationobject.html) * *Required*: Yes * *AWS CloudFormation compatibility*: This property is similar to the [`TemplateURL`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl) property of an `AWS::CloudFormation::Stack` resource\. The CloudFormation version does not take an [ApplicationLocationObject](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-application-applicationlocationobject.html) to retrieve an application from the AWS Serverless Application Repository\. */ export type Location = string | Location1; /** * The Amazon Resource Name \(ARN\) of the application\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type ApplicationId = | { [k: string]: unknown; } | string; /** * The semantic version of the application\. * *Type*: String * *Required*: Yes * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export type SemanticVersion = | { [k: string]: unknown; } | string; export type Type40 = 'AWS::Serverless::Application'; export interface Model { AWSTemplateFormatVersion?: '2010-09-09'; Conditions?: { /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ [k: string]: { [k: string]: unknown; }; }; /** * Template description */ Description?: string; Globals?: Globals; Mappings?: { /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ [k: string]: { [k: string]: unknown; }; }; Metadata?: { [k: string]: unknown; }; Outputs?: { /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ [k: string]: { [k: string]: unknown; }; }; Parameters?: { [k: string]: Parameter; }; Resources: Resources; Transform?: string | string[]; } export interface Globals { Api?: Globals1; Function?: Globals2; HttpApi?: Globals3; SimpleTable?: Globals4; } export interface Globals1 { AccessLogSetting?: unknown; Auth?: Auth; BinaryMediaTypes?: unknown; CacheClusterEnabled?: unknown; CacheClusterSize?: unknown; CanarySetting?: unknown; Cors?: Cors; DefinitionUri?: unknown; Domain?: Domain; EndpointConfiguration?: unknown; GatewayResponses?: GatewayResponses; MethodSettings?: unknown; MinimumCompressionSize?: unknown; Name?: unknown; OpenApiVersion?: OpenApiVersion; TracingEnabled?: unknown; Variables?: unknown; } export interface Auth1 { AddDefaultAuthorizerToCorsPreflight?: AddDefaultAuthorizerToCorsPreflight; ApiKeyRequired?: ApiKeyRequired; Authorizers?: Authorizers; DefaultAuthorizer?: DefaultAuthorizer; InvokeRole?: InvokeRole; ResourcePolicy?: ResourcePolicy; UsagePlan?: UsagePlan; } /** * The authorizer used to control access to your API Gateway API\. * For more information, see [Controlling access to API Gateway APIs](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-controlling-access-to-apis.html)\. * *Type*: [CognitoAuthorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-cognitoauthorizer.html) \| [LambdaTokenAuthorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-lambdatokenauthorizer.html) \| [LambdaRequestAuthorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-api-lambdarequestauthorizer.html) * *Required*: No * *Default*: None * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *Additional notes*: SAM adds the Authorizers to the OpenApi definition of an Api\. */ export interface Authorizers { [k: string]: | CognitoAuthorizer | LambdaTokenAuthorizer | LambdaRequestAuthorizer; } export interface CognitoAuthorizer { AuthorizationScopes?: AuthorizationScopes; Identity?: Identity; UserPoolArn: UserPoolArn; } export interface CognitoAuthorizerIdentity { Header?: Header; ReauthorizeEvery?: ReauthorizeEvery; ValidationExpression?: ValidationExpression; } export interface LambdaTokenAuthorizer { AuthorizationScopes?: AuthorizationScopes1; FunctionArn: FunctionArn; FunctionInvokeRole?: FunctionInvokeRole; FunctionPayloadType?: FunctionPayloadType; Identity?: Identity1; } export interface LambdaTokenAuthorizerIdentity { Header?: Header1; ReauthorizeEvery?: ReauthorizeEvery1; ValidationExpression?: ValidationExpression1; } export interface LambdaRequestAuthorizer { AuthorizationScopes?: AuthorizationScopes2; FunctionArn: FunctionArn1; FunctionInvokeRole?: FunctionInvokeRole1; FunctionPayloadType?: FunctionPayloadType1; Identity?: Identity2; } export interface LambdaRequestAuthorizerIdentity { Context?: Context; Headers?: Headers; QueryStrings?: QueryStrings; ReauthorizeEvery?: ReauthorizeEvery2; StageVariables?: StageVariables; } export interface ResourcePolicy1 { AwsAccountBlacklist?: AwsAccountBlacklist; AwsAccountWhitelist?: AwsAccountWhitelist; CustomStatements?: CustomStatements; IntrinsicVpcBlacklist?: IntrinsicVpcBlacklist; IntrinsicVpcWhitelist?: IntrinsicVpcWhitelist; IntrinsicVpceBlacklist?: IntrinsicVpceBlacklist; IntrinsicVpceWhitelist?: IntrinsicVpceWhitelist; IpRangeBlacklist?: IpRangeBlacklist; IpRangeWhitelist?: IpRangeWhitelist; SourceVpcBlacklist?: SourceVpcBlacklist; SourceVpcWhitelist?: SourceVpcWhitelist; } export interface UsagePlan1 { CreateUsagePlan: CreateUsagePlan; Description?: unknown; Quota?: unknown; Tags?: unknown; Throttle?: unknown; UsagePlanName?: unknown; } export interface Cors1 { AllowCredentials?: AllowCredentials; AllowHeaders?: AllowHeaders; AllowMethods?: AllowMethods; AllowOrigin: AllowOrigin; MaxAge?: MaxAge; } export interface Domain1 { BasePath?: unknown; CertificateArn: unknown; DomainName: unknown; EndpointConfiguration?: EndpointConfiguration; MutualTlsAuthentication?: unknown; NormalizeBasePath?: NormalizeBasePath; OwnershipVerificationCertificateArn?: unknown; Route53?: Route53; SecurityPolicy?: unknown; } export interface Route531 { DistributionDomainName?: unknown; EvaluateTargetHealth?: unknown; HostedZoneId?: unknown; HostedZoneName?: unknown; IpV6?: IpV6; } /** * Configures Gateway Responses for an API\. Gateway Responses are responses returned by API Gateway, either directly or through the use of Lambda Authorizers\. For more information, see the documentation for the [Api Gateway OpenApi extension for Gateway Responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.html)\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export interface GatewayResponses { [k: string]: unknown; } export interface Globals2 { Architectures?: unknown; AssumeRolePolicyDocument?: AssumeRolePolicyDocument; AutoPublishAlias?: AutoPublishAlias; CodeUri?: CodeUri; DeadLetterQueue?: DeadLetterQueue; DeploymentPreference?: DeploymentPreference; Description?: unknown; Environment?: unknown; EphemeralStorage?: unknown; EventInvokeConfig?: EventInvokeConfig; Handler?: unknown; KmsKeyArn?: unknown; Layers?: unknown; MemorySize?: unknown; PermissionsBoundary?: unknown; ProvisionedConcurrencyConfig?: unknown; ReservedConcurrentExecutions?: unknown; RolePath?: unknown; Runtime?: unknown; RuntimeManagementConfig?: PassThroughProp; SnapStart?: unknown; Tags?: Tags1; Timeout?: unknown; Tracing?: Tracing; VpcConfig?: unknown; } /** * Adds an AssumeRolePolicyDocument for the default created `Role` for this function\. If this property isn't specified, AWS SAM adds a default assume role for this function\. * *Type*: JSON * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`AssumeRolePolicyDocument`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument) property of an `AWS::IAM::Role` resource\. AWS SAM adds this property to the generated IAM role for this function\. If a role's Amazon Resource Name \(ARN\) is provided for this function, this property does nothing\. */ export interface AssumeRolePolicyDocument { [k: string]: unknown; } export interface CodeUri1 { Bucket: Bucket; Key: Key; Version?: Version; } export interface DeadLetterQueue1 { TargetArn: TargetArn; Type: Type; } export interface DeploymentPreference1 { Alarms?: Alarms; Enabled?: Enabled; Hooks?: Hooks; PassthroughCondition?: PassthroughCondition; Role?: Role; TriggerConfigurations?: unknown; Type?: Type1; } export interface Hooks1 { PostTraffic?: PostTraffic; PreTraffic?: PreTraffic; } export interface EventInvokeConfig1 { DestinationConfig?: DestinationConfig; MaximumEventAgeInSeconds?: MaximumEventAgeInSeconds; MaximumRetryAttempts?: MaximumRetryAttempts; } export interface EventInvokeDestinationConfig { OnFailure?: OnFailure; OnSuccess?: OnSuccess; } export interface EventInvokeOnFailure { Destination?: Destination; Type?: Type2; } export interface EventInvokeOnSuccess { Destination?: Destination1; Type?: Type3; } /** * A map \(string to string\) that specifies the tags added to this function\. For details about valid keys and values for tags, see [Tag Key and Value Requirements](https://docs.aws.amazon.com/lambda/latest/dg/configuration-tags.html#configuration-tags-restrictions) in the *AWS Lambda Developer Guide*\. * When the stack is created, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles that are generated for this function\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags) property of an `AWS::Lambda::Function` resource\. The `Tags` property in AWS SAM consists of key\-value pairs \(whereas in AWS CloudFormation this property consists of a list of `Tag` objects\)\. Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles that are generated for this function\. */ export interface Tags1 { [k: string]: unknown; } export interface Globals3 { AccessLogSettings?: unknown; Auth?: Auth2; CorsConfiguration?: unknown; DefaultRouteSettings?: unknown; Domain?: Domain2; FailOnWarnings?: unknown; RouteSettings?: unknown; StageVariables?: unknown; Tags?: Tags2; } export interface Auth3 { Authorizers?: Authorizers1; DefaultAuthorizer?: DefaultAuthorizer1; EnableIamAuthorizer?: EnableIamAuthorizer; } /** * The authorizer used to control access to your API Gateway API\. * *Type*: [OAuth2Authorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-oauth2authorizer.html) \| [LambdaAuthorizer](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-httpapi-lambdaauthorizer.html) * *Required*: No * *Default*: None * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *Additional notes*: AWS SAM adds the authorizers to the OpenAPI definition\. */ export interface Authorizers1 { [k: string]: OAuth2Authorizer | LambdaAuthorizer; } export interface OAuth2Authorizer { AuthorizationScopes?: AuthorizationScopes3; IdentitySource?: IdentitySource; JwtConfiguration?: unknown; } export interface LambdaAuthorizer { AuthorizerPayloadFormatVersion: AuthorizerPayloadFormatVersion; EnableSimpleResponses?: EnableSimpleResponses; FunctionArn: FunctionArn2; FunctionInvokeRole?: FunctionInvokeRole2; Identity?: Identity3; } export interface LambdaAuthorizerIdentity { Context?: Context1; Headers?: Headers1; QueryStrings?: QueryStrings1; ReauthorizeEvery?: ReauthorizeEvery3; StageVariables?: StageVariables1; } export interface Domain3 { BasePath?: BasePath1; CertificateArn: unknown; DomainName: unknown; EndpointConfiguration?: EndpointConfiguration2; MutualTlsAuthentication?: unknown; OwnershipVerificationCertificateArn?: unknown; Route53?: Route532; SecurityPolicy?: unknown; } export interface Route533 { DistributionDomainName?: unknown; EvaluateTargetHealth?: unknown; HostedZoneId?: unknown; HostedZoneName?: unknown; IpV6?: IpV61; } /** * A map \(string to string\) that specifies the tags to add to this API Gateway stage\. Keys can be 1 to 128 Unicode characters in length and cannot include the prefix `aws:`\. You can use any of the following characters: the set of Unicode letters, digits, whitespace, `_`, `.`, `/`, `=`, `+`, and `-`\. Values can be 1 to 256 Unicode characters in length\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *Additional notes*: The `Tags` property requires AWS SAM to modify your OpenAPI definition, so tags are added only if the `DefinitionBody` property is specified—no tags are added if the `DefinitionUri` property is specified\. AWS SAM automatically adds an `httpapi:createdBy:SAM` tag\. Tags are also added to the `AWS::ApiGatewayV2::Stage` resource and the `AWS::ApiGatewayV2::DomainName` resource \(if `DomainName` is specified\)\. */ export interface Tags2 { [k: string]: unknown; } export interface Globals4 { SSESpecification?: unknown; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface Parameter { AllowedPattern?: string; AllowedValues?: unknown[]; ConstraintDescription?: string; Default?: string; Description?: string; MaxLength?: string; MaxValue?: string; MinLength?: string; MinValue?: string; NoEcho?: string | boolean; Type: | 'String' | 'Number' | 'List' | 'CommaDelimitedList' | 'AWS::EC2::AvailabilityZone::Name' | 'AWS::EC2::Image::Id' | 'AWS::EC2::Instance::Id' | 'AWS::EC2::KeyPair::KeyName' | 'AWS::EC2::SecurityGroup::GroupName' | 'AWS::EC2::SecurityGroup::Id' | 'AWS::EC2::Subnet::Id' | 'AWS::EC2::Volume::Id' | 'AWS::EC2::VPC::Id' | 'AWS::Route53::HostedZone::Id' | 'List' | 'List' | 'List' | 'List' | 'List' | 'List' | 'List' | 'List' | 'List' | 'List' | 'AWS::SSM::Parameter::Name' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value>' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value' | 'AWS::SSM::Parameter::Value>' | 'AWS::SSM::Parameter::Value>' | 'AWS::SSM::Parameter::Value>' | 'AWS::SSM::Parameter::Value>' | 'AWS::SSM::Parameter::Value>' | 'AWS::SSM::Parameter::Value>' | 'AWS::SSM::Parameter::Value>' | 'AWS::SSM::Parameter::Value>' | 'AWS::SSM::Parameter::Value>'; } export interface Resources { [k: string]: | Resource | Resource1 | Resource2 | Resource3 | Resource4 | Resource5 | Resource6 | Resource7 | AWSACMPCACertificate | AWSACMPCACertificateAuthority | AWSACMPCACertificateAuthorityActivation | AWSACMPCAPermission | AWSAPSRuleGroupsNamespace | AWSAPSWorkspace | AWSAccessAnalyzerAnalyzer | AWSAmazonMQBroker | AWSAmazonMQConfiguration | AWSAmazonMQConfigurationAssociation | AWSAmplifyApp | AWSAmplifyBranch | AWSAmplifyDomain | AWSAmplifyUIBuilderComponent | AWSAmplifyUIBuilderForm | AWSAmplifyUIBuilderTheme | AWSApiGatewayAccount | AWSApiGatewayApiKey | AWSApiGatewayAuthorizer | AWSApiGatewayBasePathMapping | AWSApiGatewayClientCertificate | AWSApiGatewayDeployment | AWSApiGatewayDocumentationPart | AWSApiGatewayDocumentationVersion | AWSApiGatewayDomainName | AWSApiGatewayGatewayResponse | AWSApiGatewayMethod | AWSApiGatewayModel | AWSApiGatewayRequestValidator | AWSApiGatewayResource | AWSApiGatewayRestApi | AWSApiGatewayStage | AWSApiGatewayUsagePlan | AWSApiGatewayUsagePlanKey | AWSApiGatewayVpcLink | AWSApiGatewayV2Api | AWSApiGatewayV2ApiGatewayManagedOverrides | AWSApiGatewayV2ApiMapping | AWSApiGatewayV2Authorizer | AWSApiGatewayV2Deployment | AWSApiGatewayV2DomainName | AWSApiGatewayV2Integration | AWSApiGatewayV2IntegrationResponse | AWSApiGatewayV2Model | AWSApiGatewayV2Route | AWSApiGatewayV2RouteResponse | AWSApiGatewayV2Stage | AWSApiGatewayV2VpcLink | AWSAppConfigApplication | AWSAppConfigConfigurationProfile | AWSAppConfigDeployment | AWSAppConfigDeploymentStrategy | AWSAppConfigEnvironment | AWSAppConfigHostedConfigurationVersion | AWSAppFlowConnector | AWSAppFlowConnectorProfile | AWSAppFlowFlow | AWSAppIntegrationsDataIntegration | AWSAppIntegrationsEventIntegration | AWSAppMeshGatewayRoute | AWSAppMeshMesh | AWSAppMeshRoute | AWSAppMeshVirtualGateway | AWSAppMeshVirtualNode | AWSAppMeshVirtualRouter | AWSAppMeshVirtualService | AWSAppRunnerObservabilityConfiguration | AWSAppRunnerService | AWSAppRunnerVpcConnector | AWSAppRunnerVpcIngressConnection | AWSAppStreamAppBlock | AWSAppStreamApplication | AWSAppStreamApplicationEntitlementAssociation | AWSAppStreamApplicationFleetAssociation | AWSAppStreamDirectoryConfig | AWSAppStreamEntitlement | AWSAppStreamFleet | AWSAppStreamImageBuilder | AWSAppStreamStack | AWSAppStreamStackFleetAssociation | AWSAppStreamStackUserAssociation | AWSAppStreamUser | AWSAppSyncApiCache | AWSAppSyncApiKey | AWSAppSyncDataSource | AWSAppSyncDomainName | AWSAppSyncDomainNameApiAssociation | AWSAppSyncFunctionConfiguration | AWSAppSyncGraphQLApi | AWSAppSyncGraphQLSchema | AWSAppSyncResolver | AWSApplicationAutoScalingScalableTarget | AWSApplicationAutoScalingScalingPolicy | AWSApplicationInsightsApplication | AWSAthenaDataCatalog | AWSAthenaNamedQuery | AWSAthenaPreparedStatement | AWSAthenaWorkGroup | AWSAuditManagerAssessment | AWSAutoScalingAutoScalingGroup | AWSAutoScalingLaunchConfiguration | AWSAutoScalingLifecycleHook | AWSAutoScalingScalingPolicy | AWSAutoScalingScheduledAction | AWSAutoScalingWarmPool | AWSAutoScalingPlansScalingPlan | AWSBackupBackupPlan | AWSBackupBackupSelection | AWSBackupBackupVault | AWSBackupFramework | AWSBackupReportPlan | AWSBatchComputeEnvironment | AWSBatchJobDefinition | AWSBatchJobQueue | AWSBatchSchedulingPolicy | AWSBillingConductorBillingGroup | AWSBillingConductorCustomLineItem | AWSBillingConductorPricingPlan | AWSBillingConductorPricingRule | AWSBudgetsBudget | AWSBudgetsBudgetsAction | AWSCEAnomalyMonitor | AWSCEAnomalySubscription | AWSCECostCategory | AWSCURReportDefinition | AWSCassandraKeyspace | AWSCassandraTable | AWSCertificateManagerAccount | AWSCertificateManagerCertificate | AWSChatbotSlackChannelConfiguration | AWSCloud9EnvironmentEC2 | AWSCloudFormationCustomResource | AWSCloudFormationHookDefaultVersion | AWSCloudFormationHookTypeConfig | AWSCloudFormationHookVersion | AWSCloudFormationMacro | AWSCloudFormationModuleDefaultVersion | AWSCloudFormationModuleVersion | AWSCloudFormationPublicTypeVersion | AWSCloudFormationPublisher | AWSCloudFormationResourceDefaultVersion | AWSCloudFormationResourceVersion | AWSCloudFormationStack | AWSCloudFormationStackSet | AWSCloudFormationTypeActivation | AWSCloudFormationWaitCondition | AWSCloudFormationWaitConditionHandle | AWSCloudFrontCachePolicy | AWSCloudFrontCloudFrontOriginAccessIdentity | AWSCloudFrontContinuousDeploymentPolicy | AWSCloudFrontDistribution | AWSCloudFrontFunction | AWSCloudFrontKeyGroup | AWSCloudFrontMonitoringSubscription | AWSCloudFrontOriginAccessControl | AWSCloudFrontOriginRequestPolicy | AWSCloudFrontPublicKey | AWSCloudFrontRealtimeLogConfig | AWSCloudFrontResponseHeadersPolicy | AWSCloudFrontStreamingDistribution | AWSCloudTrailEventDataStore | AWSCloudTrailTrail | AWSCloudWatchAlarm | AWSCloudWatchAnomalyDetector | AWSCloudWatchCompositeAlarm | AWSCloudWatchDashboard | AWSCloudWatchInsightRule | AWSCloudWatchMetricStream | AWSCodeArtifactDomain | AWSCodeArtifactRepository | AWSCodeBuildProject | AWSCodeBuildReportGroup | AWSCodeBuildSourceCredential | AWSCodeCommitRepository | AWSCodeDeployApplication | AWSCodeDeployDeploymentConfig | AWSCodeDeployDeploymentGroup | AWSCodeGuruProfilerProfilingGroup | AWSCodeGuruReviewerRepositoryAssociation | AWSCodePipelineCustomActionType | AWSCodePipelinePipeline | AWSCodePipelineWebhook | AWSCodeStarGitHubRepository | AWSCodeStarConnectionsConnection | AWSCodeStarNotificationsNotificationRule | AWSCognitoIdentityPool | AWSCognitoIdentityPoolRoleAttachment | AWSCognitoUserPool | AWSCognitoUserPoolClient | AWSCognitoUserPoolDomain | AWSCognitoUserPoolGroup | AWSCognitoUserPoolIdentityProvider | AWSCognitoUserPoolResourceServer | AWSCognitoUserPoolRiskConfigurationAttachment | AWSCognitoUserPoolUICustomizationAttachment | AWSCognitoUserPoolUser | AWSCognitoUserPoolUserToGroupAttachment | AWSConfigAggregationAuthorization | AWSConfigConfigRule | AWSConfigConfigurationAggregator | AWSConfigConfigurationRecorder | AWSConfigConformancePack | AWSConfigDeliveryChannel | AWSConfigOrganizationConfigRule | AWSConfigOrganizationConformancePack | AWSConfigRemediationConfiguration | AWSConfigStoredQuery | AWSConnectContactFlow | AWSConnectContactFlowModule | AWSConnectHoursOfOperation | AWSConnectInstance | AWSConnectInstanceStorageConfig | AWSConnectPhoneNumber | AWSConnectQuickConnect | AWSConnectRule | AWSConnectTaskTemplate | AWSConnectUser | AWSConnectUserHierarchyGroup | AWSConnectCampaignsCampaign | AWSControlTowerEnabledControl | AWSCustomerProfilesDomain | AWSCustomerProfilesIntegration | AWSCustomerProfilesObjectType | AWSDAXCluster | AWSDAXParameterGroup | AWSDAXSubnetGroup | AWSDLMLifecyclePolicy | AWSDMSCertificate | AWSDMSEndpoint | AWSDMSEventSubscription | AWSDMSReplicationInstance | AWSDMSReplicationSubnetGroup | AWSDMSReplicationTask | AWSDataBrewDataset | AWSDataBrewJob | AWSDataBrewProject | AWSDataBrewRecipe | AWSDataBrewRuleset | AWSDataBrewSchedule | AWSDataPipelinePipeline | AWSDataSyncAgent | AWSDataSyncLocationEFS | AWSDataSyncLocationFSxLustre | AWSDataSyncLocationFSxONTAP | AWSDataSyncLocationFSxOpenZFS | AWSDataSyncLocationFSxWindows | AWSDataSyncLocationHDFS | AWSDataSyncLocationNFS | AWSDataSyncLocationObjectStorage | AWSDataSyncLocationS3 | AWSDataSyncLocationSMB | AWSDataSyncTask | AWSDetectiveGraph | AWSDetectiveMemberInvitation | AWSDevOpsGuruNotificationChannel | AWSDevOpsGuruResourceCollection | AWSDirectoryServiceMicrosoftAD | AWSDirectoryServiceSimpleAD | AWSDocDBDBCluster | AWSDocDBDBClusterParameterGroup | AWSDocDBDBInstance | AWSDocDBDBSubnetGroup | AWSDocDBElasticCluster | AWSDynamoDBGlobalTable | AWSDynamoDBTable | AWSEC2CapacityReservation | AWSEC2CapacityReservationFleet | AWSEC2CarrierGateway | AWSEC2ClientVpnAuthorizationRule | AWSEC2ClientVpnEndpoint | AWSEC2ClientVpnRoute | AWSEC2ClientVpnTargetNetworkAssociation | AWSEC2CustomerGateway | AWSEC2DHCPOptions | AWSEC2EC2Fleet | AWSEC2EIP | AWSEC2EIPAssociation | AWSEC2EgressOnlyInternetGateway | AWSEC2EnclaveCertificateIamRoleAssociation | AWSEC2FlowLog | AWSEC2GatewayRouteTableAssociation | AWSEC2Host | AWSEC2IPAM | AWSEC2IPAMAllocation | AWSEC2IPAMPool | AWSEC2IPAMScope | AWSEC2Instance | AWSEC2InternetGateway | AWSEC2KeyPair | AWSEC2LaunchTemplate | AWSEC2LocalGatewayRoute | AWSEC2LocalGatewayRouteTableVPCAssociation | AWSEC2NatGateway | AWSEC2NetworkAcl | AWSEC2NetworkAclEntry | AWSEC2NetworkInsightsAccessScope | AWSEC2NetworkInsightsAccessScopeAnalysis | AWSEC2NetworkInsightsAnalysis | AWSEC2NetworkInsightsPath | AWSEC2NetworkInterface | AWSEC2NetworkInterfaceAttachment | AWSEC2NetworkInterfacePermission | AWSEC2NetworkPerformanceMetricSubscription | AWSEC2PlacementGroup | AWSEC2PrefixList | AWSEC2Route | AWSEC2RouteTable | AWSEC2SecurityGroup | AWSEC2SecurityGroupEgress | AWSEC2SecurityGroupIngress | AWSEC2SpotFleet | AWSEC2Subnet | AWSEC2SubnetCidrBlock | AWSEC2SubnetNetworkAclAssociation | AWSEC2SubnetRouteTableAssociation | AWSEC2TrafficMirrorFilter | AWSEC2TrafficMirrorFilterRule | AWSEC2TrafficMirrorSession | AWSEC2TrafficMirrorTarget | AWSEC2TransitGateway | AWSEC2TransitGatewayAttachment | AWSEC2TransitGatewayConnect | AWSEC2TransitGatewayMulticastDomain | AWSEC2TransitGatewayMulticastDomainAssociation | AWSEC2TransitGatewayMulticastGroupMember | AWSEC2TransitGatewayMulticastGroupSource | AWSEC2TransitGatewayPeeringAttachment | AWSEC2TransitGatewayRoute | AWSEC2TransitGatewayRouteTable | AWSEC2TransitGatewayRouteTableAssociation | AWSEC2TransitGatewayRouteTablePropagation | AWSEC2TransitGatewayVpcAttachment | AWSEC2VPC | AWSEC2VPCCidrBlock | AWSEC2VPCDHCPOptionsAssociation | AWSEC2VPCEndpoint | AWSEC2VPCEndpointConnectionNotification | AWSEC2VPCEndpointService | AWSEC2VPCEndpointServicePermissions | AWSEC2VPCGatewayAttachment | AWSEC2VPCPeeringConnection | AWSEC2VPNConnection | AWSEC2VPNConnectionRoute | AWSEC2VPNGateway | AWSEC2VPNGatewayRoutePropagation | AWSEC2Volume | AWSEC2VolumeAttachment | AWSECRPublicRepository | AWSECRPullThroughCacheRule | AWSECRRegistryPolicy | AWSECRReplicationConfiguration | AWSECRRepository | AWSECSCapacityProvider | AWSECSCluster | AWSECSClusterCapacityProviderAssociations | AWSECSPrimaryTaskSet | AWSECSService | AWSECSTaskDefinition | AWSECSTaskSet | AWSEFSAccessPoint | AWSEFSFileSystem | AWSEFSMountTarget | AWSEKSAddon | AWSEKSCluster | AWSEKSFargateProfile | AWSEKSIdentityProviderConfig | AWSEKSNodegroup | AWSEMRCluster | AWSEMRInstanceFleetConfig | AWSEMRInstanceGroupConfig | AWSEMRSecurityConfiguration | AWSEMRStep | AWSEMRStudio | AWSEMRStudioSessionMapping | AWSEMRContainersVirtualCluster | AWSEMRServerlessApplication | AWSElastiCacheCacheCluster | AWSElastiCacheGlobalReplicationGroup | AWSElastiCacheParameterGroup | AWSElastiCacheReplicationGroup | AWSElastiCacheSecurityGroup | AWSElastiCacheSecurityGroupIngress | AWSElastiCacheSubnetGroup | AWSElastiCacheUser | AWSElastiCacheUserGroup | AWSElasticBeanstalkApplication | AWSElasticBeanstalkApplicationVersion | AWSElasticBeanstalkConfigurationTemplate | AWSElasticBeanstalkEnvironment | AWSElasticLoadBalancingLoadBalancer | AWSElasticLoadBalancingV2Listener | AWSElasticLoadBalancingV2ListenerCertificate | AWSElasticLoadBalancingV2ListenerRule | AWSElasticLoadBalancingV2LoadBalancer | AWSElasticLoadBalancingV2TargetGroup | AWSElasticsearchDomain | AWSEventSchemasDiscoverer | AWSEventSchemasRegistry | AWSEventSchemasRegistryPolicy | AWSEventSchemasSchema | AWSEventsApiDestination | AWSEventsArchive | AWSEventsConnection | AWSEventsEndpoint | AWSEventsEventBus | AWSEventsEventBusPolicy | AWSEventsRule | AWSEvidentlyExperiment | AWSEvidentlyFeature | AWSEvidentlyLaunch | AWSEvidentlyProject | AWSEvidentlySegment | AWSFISExperimentTemplate | AWSFMSNotificationChannel | AWSFMSPolicy | AWSFSxDataRepositoryAssociation | AWSFSxFileSystem | AWSFSxSnapshot | AWSFSxStorageVirtualMachine | AWSFSxVolume | AWSFinSpaceEnvironment | AWSForecastDataset | AWSForecastDatasetGroup | AWSFraudDetectorDetector | AWSFraudDetectorEntityType | AWSFraudDetectorEventType | AWSFraudDetectorLabel | AWSFraudDetectorOutcome | AWSFraudDetectorVariable | AWSGameLiftAlias | AWSGameLiftBuild | AWSGameLiftFleet | AWSGameLiftGameServerGroup | AWSGameLiftGameSessionQueue | AWSGameLiftLocation | AWSGameLiftMatchmakingConfiguration | AWSGameLiftMatchmakingRuleSet | AWSGameLiftScript | AWSGlobalAcceleratorAccelerator | AWSGlobalAcceleratorEndpointGroup | AWSGlobalAcceleratorListener | AWSGlueClassifier | AWSGlueConnection | AWSGlueCrawler | AWSGlueDataCatalogEncryptionSettings | AWSGlueDatabase | AWSGlueDevEndpoint | AWSGlueJob | AWSGlueMLTransform | AWSGluePartition | AWSGlueRegistry | AWSGlueSchema | AWSGlueSchemaVersion | AWSGlueSchemaVersionMetadata | AWSGlueSecurityConfiguration | AWSGlueTable | AWSGlueTrigger | AWSGlueWorkflow | AWSGrafanaWorkspace | AWSGreengrassConnectorDefinition | AWSGreengrassConnectorDefinitionVersion | AWSGreengrassCoreDefinition | AWSGreengrassCoreDefinitionVersion | AWSGreengrassDeviceDefinition | AWSGreengrassDeviceDefinitionVersion | AWSGreengrassFunctionDefinition | AWSGreengrassFunctionDefinitionVersion | AWSGreengrassGroup | AWSGreengrassGroupVersion | AWSGreengrassLoggerDefinition | AWSGreengrassLoggerDefinitionVersion | AWSGreengrassResourceDefinition | AWSGreengrassResourceDefinitionVersion | AWSGreengrassSubscriptionDefinition | AWSGreengrassSubscriptionDefinitionVersion | AWSGreengrassV2ComponentVersion | AWSGreengrassV2Deployment | AWSGroundStationConfig | AWSGroundStationDataflowEndpointGroup | AWSGroundStationMissionProfile | AWSGuardDutyDetector | AWSGuardDutyFilter | AWSGuardDutyIPSet | AWSGuardDutyMaster | AWSGuardDutyMember | AWSGuardDutyThreatIntelSet | AWSHealthLakeFHIRDatastore | AWSIAMAccessKey | AWSIAMGroup | AWSIAMInstanceProfile | AWSIAMManagedPolicy | AWSIAMOIDCProvider | AWSIAMPolicy | AWSIAMRole | AWSIAMSAMLProvider | AWSIAMServerCertificate | AWSIAMServiceLinkedRole | AWSIAMUser | AWSIAMUserToGroupAddition | AWSIAMVirtualMFADevice | AWSIVSChannel | AWSIVSPlaybackKeyPair | AWSIVSRecordingConfiguration | AWSIVSStreamKey | AWSIdentityStoreGroup | AWSIdentityStoreGroupMembership | AWSImageBuilderComponent | AWSImageBuilderContainerRecipe | AWSImageBuilderDistributionConfiguration | AWSImageBuilderImage | AWSImageBuilderImagePipeline | AWSImageBuilderImageRecipe | AWSImageBuilderInfrastructureConfiguration | AWSInspectorAssessmentTarget | AWSInspectorAssessmentTemplate | AWSInspectorResourceGroup | AWSInspectorV2Filter | AWSIoT1ClickDevice | AWSIoT1ClickPlacement | AWSIoT1ClickProject | AWSIoTAccountAuditConfiguration | AWSIoTAuthorizer | AWSIoTCACertificate | AWSIoTCertificate | AWSIoTCustomMetric | AWSIoTDimension | AWSIoTDomainConfiguration | AWSIoTFleetMetric | AWSIoTJobTemplate | AWSIoTLogging | AWSIoTMitigationAction | AWSIoTPolicy | AWSIoTPolicyPrincipalAttachment | AWSIoTProvisioningTemplate | AWSIoTResourceSpecificLogging | AWSIoTRoleAlias | AWSIoTScheduledAudit | AWSIoTSecurityProfile | AWSIoTThing | AWSIoTThingPrincipalAttachment | AWSIoTTopicRule | AWSIoTTopicRuleDestination | AWSIoTAnalyticsChannel | AWSIoTAnalyticsDataset | AWSIoTAnalyticsDatastore | AWSIoTAnalyticsPipeline | AWSIoTCoreDeviceAdvisorSuiteDefinition | AWSIoTEventsAlarmModel | AWSIoTEventsDetectorModel | AWSIoTEventsInput | AWSIoTFleetHubApplication | AWSIoTFleetWiseCampaign | AWSIoTFleetWiseDecoderManifest | AWSIoTFleetWiseFleet | AWSIoTFleetWiseModelManifest | AWSIoTFleetWiseSignalCatalog | AWSIoTFleetWiseVehicle | AWSIoTSiteWiseAccessPolicy | AWSIoTSiteWiseAsset | AWSIoTSiteWiseAssetModel | AWSIoTSiteWiseDashboard | AWSIoTSiteWiseGateway | AWSIoTSiteWisePortal | AWSIoTSiteWiseProject | AWSIoTThingsGraphFlowTemplate | AWSIoTTwinMakerComponentType | AWSIoTTwinMakerEntity | AWSIoTTwinMakerScene | AWSIoTTwinMakerSyncJob | AWSIoTTwinMakerWorkspace | AWSIoTWirelessDestination | AWSIoTWirelessDeviceProfile | AWSIoTWirelessFuotaTask | AWSIoTWirelessMulticastGroup | AWSIoTWirelessNetworkAnalyzerConfiguration | AWSIoTWirelessPartnerAccount | AWSIoTWirelessServiceProfile | AWSIoTWirelessTaskDefinition | AWSIoTWirelessWirelessDevice | AWSIoTWirelessWirelessGateway | AWSKMSAlias | AWSKMSKey | AWSKMSReplicaKey | AWSKafkaConnectConnector | AWSKendraDataSource | AWSKendraFaq | AWSKendraIndex | AWSKinesisStream | AWSKinesisStreamConsumer | AWSKinesisAnalyticsApplication | AWSKinesisAnalyticsApplicationOutput | AWSKinesisAnalyticsApplicationReferenceDataSource | AWSKinesisAnalyticsV2Application | AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption | AWSKinesisAnalyticsV2ApplicationOutput | AWSKinesisAnalyticsV2ApplicationReferenceDataSource | AWSKinesisFirehoseDeliveryStream | AWSKinesisVideoSignalingChannel | AWSKinesisVideoStream | AWSLakeFormationDataCellsFilter | AWSLakeFormationDataLakeSettings | AWSLakeFormationPermissions | AWSLakeFormationPrincipalPermissions | AWSLakeFormationResource | AWSLakeFormationTag | AWSLakeFormationTagAssociation | AWSLambdaAlias | AWSLambdaCodeSigningConfig | AWSLambdaEventInvokeConfig | AWSLambdaEventSourceMapping | AWSLambdaFunction | AWSLambdaLayerVersion | AWSLambdaLayerVersionPermission | AWSLambdaPermission | AWSLambdaUrl | AWSLambdaVersion | AWSLexBot | AWSLexBotAlias | AWSLexBotVersion | AWSLexResourcePolicy | AWSLicenseManagerGrant | AWSLicenseManagerLicense | AWSLightsailAlarm | AWSLightsailBucket | AWSLightsailCertificate | AWSLightsailContainer | AWSLightsailDatabase | AWSLightsailDisk | AWSLightsailDistribution | AWSLightsailInstance | AWSLightsailLoadBalancer | AWSLightsailLoadBalancerTlsCertificate | AWSLightsailStaticIp | AWSLocationGeofenceCollection | AWSLocationMap | AWSLocationPlaceIndex | AWSLocationRouteCalculator | AWSLocationTracker | AWSLocationTrackerConsumer | AWSLogsDestination | AWSLogsLogGroup | AWSLogsLogStream | AWSLogsMetricFilter | AWSLogsQueryDefinition | AWSLogsResourcePolicy | AWSLogsSubscriptionFilter | AWSLookoutEquipmentInferenceScheduler | AWSLookoutMetricsAlert | AWSLookoutMetricsAnomalyDetector | AWSLookoutVisionProject | AWSM2Application | AWSM2Environment | AWSMSKBatchScramSecret | AWSMSKCluster | AWSMSKConfiguration | AWSMSKServerlessCluster | AWSMWAAEnvironment | AWSMacieAllowList | AWSMacieCustomDataIdentifier | AWSMacieFindingsFilter | AWSMacieSession | AWSManagedBlockchainMember | AWSManagedBlockchainNode | AWSMediaConnectFlow | AWSMediaConnectFlowEntitlement | AWSMediaConnectFlowOutput | AWSMediaConnectFlowSource | AWSMediaConnectFlowVpcInterface | AWSMediaConvertJobTemplate | AWSMediaConvertPreset | AWSMediaConvertQueue | AWSMediaLiveChannel | AWSMediaLiveInput | AWSMediaLiveInputSecurityGroup | AWSMediaPackageAsset | AWSMediaPackageChannel | AWSMediaPackageOriginEndpoint | AWSMediaPackagePackagingConfiguration | AWSMediaPackagePackagingGroup | AWSMediaStoreContainer | AWSMediaTailorPlaybackConfiguration | AWSMemoryDBACL | AWSMemoryDBCluster | AWSMemoryDBParameterGroup | AWSMemoryDBSubnetGroup | AWSMemoryDBUser | AWSNeptuneDBCluster | AWSNeptuneDBClusterParameterGroup | AWSNeptuneDBInstance | AWSNeptuneDBParameterGroup | AWSNeptuneDBSubnetGroup | AWSNetworkFirewallFirewall | AWSNetworkFirewallFirewallPolicy | AWSNetworkFirewallLoggingConfiguration | AWSNetworkFirewallRuleGroup | AWSNetworkManagerConnectAttachment | AWSNetworkManagerConnectPeer | AWSNetworkManagerCoreNetwork | AWSNetworkManagerCustomerGatewayAssociation | AWSNetworkManagerDevice | AWSNetworkManagerGlobalNetwork | AWSNetworkManagerLink | AWSNetworkManagerLinkAssociation | AWSNetworkManagerSite | AWSNetworkManagerSiteToSiteVpnAttachment | AWSNetworkManagerTransitGatewayRegistration | AWSNetworkManagerVpcAttachment | AWSNimbleStudioLaunchProfile | AWSNimbleStudioStreamingImage | AWSNimbleStudioStudio | AWSNimbleStudioStudioComponent | AWSOamLink | AWSOamSink | AWSOpenSearchServerlessAccessPolicy | AWSOpenSearchServerlessCollection | AWSOpenSearchServerlessSecurityConfig | AWSOpenSearchServerlessSecurityPolicy | AWSOpenSearchServerlessVpcEndpoint | AWSOpenSearchServiceDomain | AWSOpsWorksApp | AWSOpsWorksElasticLoadBalancerAttachment | AWSOpsWorksInstance | AWSOpsWorksLayer | AWSOpsWorksStack | AWSOpsWorksUserProfile | AWSOpsWorksVolume | AWSOpsWorksCMServer | AWSOrganizationsAccount | AWSOrganizationsOrganizationalUnit | AWSOrganizationsPolicy | AWSPanoramaApplicationInstance | AWSPanoramaPackage | AWSPanoramaPackageVersion | AWSPersonalizeDataset | AWSPersonalizeDatasetGroup | AWSPersonalizeSchema | AWSPersonalizeSolution | AWSPinpointADMChannel | AWSPinpointAPNSChannel | AWSPinpointAPNSSandboxChannel | AWSPinpointAPNSVoipChannel | AWSPinpointAPNSVoipSandboxChannel | AWSPinpointApp | AWSPinpointApplicationSettings | AWSPinpointBaiduChannel | AWSPinpointCampaign | AWSPinpointEmailChannel | AWSPinpointEmailTemplate | AWSPinpointEventStream | AWSPinpointGCMChannel | AWSPinpointInAppTemplate | AWSPinpointPushTemplate | AWSPinpointSMSChannel | AWSPinpointSegment | AWSPinpointSmsTemplate | AWSPinpointVoiceChannel | AWSPinpointEmailConfigurationSet | AWSPinpointEmailConfigurationSetEventDestination | AWSPinpointEmailDedicatedIpPool | AWSPinpointEmailIdentity | AWSPipesPipe | AWSQLDBLedger | AWSQLDBStream | AWSQuickSightAnalysis | AWSQuickSightDashboard | AWSQuickSightDataSet | AWSQuickSightDataSource | AWSQuickSightTemplate | AWSQuickSightTheme | AWSRAMResourceShare | AWSRDSDBCluster | AWSRDSDBClusterParameterGroup | AWSRDSDBInstance | AWSRDSDBParameterGroup | AWSRDSDBProxy | AWSRDSDBProxyEndpoint | AWSRDSDBProxyTargetGroup | AWSRDSDBSecurityGroup | AWSRDSDBSecurityGroupIngress | AWSRDSDBSubnetGroup | AWSRDSEventSubscription | AWSRDSGlobalCluster | AWSRDSOptionGroup | AWSRUMAppMonitor | AWSRedshiftCluster | AWSRedshiftClusterParameterGroup | AWSRedshiftClusterSecurityGroup | AWSRedshiftClusterSecurityGroupIngress | AWSRedshiftClusterSubnetGroup | AWSRedshiftEndpointAccess | AWSRedshiftEndpointAuthorization | AWSRedshiftEventSubscription | AWSRedshiftScheduledAction | AWSRedshiftServerlessNamespace | AWSRedshiftServerlessWorkgroup | AWSRefactorSpacesApplication | AWSRefactorSpacesEnvironment | AWSRefactorSpacesRoute | AWSRefactorSpacesService | AWSRekognitionCollection | AWSRekognitionProject | AWSRekognitionStreamProcessor | AWSResilienceHubApp | AWSResilienceHubResiliencyPolicy | AWSResourceExplorer2DefaultViewAssociation | AWSResourceExplorer2Index | AWSResourceExplorer2View | AWSResourceGroupsGroup | AWSRoboMakerFleet | AWSRoboMakerRobot | AWSRoboMakerRobotApplication | AWSRoboMakerRobotApplicationVersion | AWSRoboMakerSimulationApplication | AWSRoboMakerSimulationApplicationVersion | AWSRolesAnywhereCRL | AWSRolesAnywhereProfile | AWSRolesAnywhereTrustAnchor | AWSRoute53CidrCollection | AWSRoute53DNSSEC | AWSRoute53HealthCheck | AWSRoute53HostedZone | AWSRoute53KeySigningKey | AWSRoute53RecordSet | AWSRoute53RecordSetGroup | AWSRoute53RecoveryControlCluster | AWSRoute53RecoveryControlControlPanel | AWSRoute53RecoveryControlRoutingControl | AWSRoute53RecoveryControlSafetyRule | AWSRoute53RecoveryReadinessCell | AWSRoute53RecoveryReadinessReadinessCheck | AWSRoute53RecoveryReadinessRecoveryGroup | AWSRoute53RecoveryReadinessResourceSet | AWSRoute53ResolverFirewallDomainList | AWSRoute53ResolverFirewallRuleGroup | AWSRoute53ResolverFirewallRuleGroupAssociation | AWSRoute53ResolverResolverConfig | AWSRoute53ResolverResolverDNSSECConfig | AWSRoute53ResolverResolverEndpoint | AWSRoute53ResolverResolverQueryLoggingConfig | AWSRoute53ResolverResolverQueryLoggingConfigAssociation | AWSRoute53ResolverResolverRule | AWSRoute53ResolverResolverRuleAssociation | AWSS3AccessPoint | AWSS3Bucket | AWSS3BucketPolicy | AWSS3MultiRegionAccessPoint | AWSS3MultiRegionAccessPointPolicy | AWSS3StorageLens | AWSS3ObjectLambdaAccessPoint | AWSS3ObjectLambdaAccessPointPolicy | AWSS3OutpostsAccessPoint | AWSS3OutpostsBucket | AWSS3OutpostsBucketPolicy | AWSS3OutpostsEndpoint | AWSSDBDomain | AWSSESConfigurationSet | AWSSESConfigurationSetEventDestination | AWSSESContactList | AWSSESDedicatedIpPool | AWSSESEmailIdentity | AWSSESReceiptFilter | AWSSESReceiptRule | AWSSESReceiptRuleSet | AWSSESTemplate | AWSSESVdmAttributes | AWSSNSSubscription | AWSSNSTopic | AWSSNSTopicPolicy | AWSSQSQueue | AWSSQSQueuePolicy | AWSSSMAssociation | AWSSSMDocument | AWSSSMMaintenanceWindow | AWSSSMMaintenanceWindowTarget | AWSSSMMaintenanceWindowTask | AWSSSMParameter | AWSSSMPatchBaseline | AWSSSMResourceDataSync | AWSSSMResourcePolicy | AWSSSMContactsContact | AWSSSMContactsContactChannel | AWSSSMIncidentsReplicationSet | AWSSSMIncidentsResponsePlan | AWSSSOAssignment | AWSSSOInstanceAccessControlAttributeConfiguration | AWSSSOPermissionSet | AWSSageMakerApp | AWSSageMakerAppImageConfig | AWSSageMakerCodeRepository | AWSSageMakerDataQualityJobDefinition | AWSSageMakerDevice | AWSSageMakerDeviceFleet | AWSSageMakerDomain | AWSSageMakerEndpoint | AWSSageMakerEndpointConfig | AWSSageMakerFeatureGroup | AWSSageMakerImage | AWSSageMakerImageVersion | AWSSageMakerModel | AWSSageMakerModelBiasJobDefinition | AWSSageMakerModelExplainabilityJobDefinition | AWSSageMakerModelPackage | AWSSageMakerModelPackageGroup | AWSSageMakerModelQualityJobDefinition | AWSSageMakerMonitoringSchedule | AWSSageMakerNotebookInstance | AWSSageMakerNotebookInstanceLifecycleConfig | AWSSageMakerPipeline | AWSSageMakerProject | AWSSageMakerUserProfile | AWSSageMakerWorkteam | AWSSchedulerSchedule | AWSSchedulerScheduleGroup | AWSSecretsManagerResourcePolicy | AWSSecretsManagerRotationSchedule | AWSSecretsManagerSecret | AWSSecretsManagerSecretTargetAttachment | AWSSecurityHubHub | AWSServiceCatalogAcceptedPortfolioShare | AWSServiceCatalogCloudFormationProduct | AWSServiceCatalogCloudFormationProvisionedProduct | AWSServiceCatalogLaunchNotificationConstraint | AWSServiceCatalogLaunchRoleConstraint | AWSServiceCatalogLaunchTemplateConstraint | AWSServiceCatalogPortfolio | AWSServiceCatalogPortfolioPrincipalAssociation | AWSServiceCatalogPortfolioProductAssociation | AWSServiceCatalogPortfolioShare | AWSServiceCatalogResourceUpdateConstraint | AWSServiceCatalogServiceAction | AWSServiceCatalogServiceActionAssociation | AWSServiceCatalogStackSetConstraint | AWSServiceCatalogTagOption | AWSServiceCatalogTagOptionAssociation | AWSServiceCatalogAppRegistryApplication | AWSServiceCatalogAppRegistryAttributeGroup | AWSServiceCatalogAppRegistryAttributeGroupAssociation | AWSServiceCatalogAppRegistryResourceAssociation | AWSServiceDiscoveryHttpNamespace | AWSServiceDiscoveryInstance | AWSServiceDiscoveryPrivateDnsNamespace | AWSServiceDiscoveryPublicDnsNamespace | AWSServiceDiscoveryService | AWSSignerProfilePermission | AWSSignerSigningProfile | AWSStepFunctionsActivity | AWSStepFunctionsStateMachine | AWSSupportAppAccountAlias | AWSSupportAppSlackChannelConfiguration | AWSSupportAppSlackWorkspaceConfiguration | AWSSyntheticsCanary | AWSSyntheticsGroup | AWSTimestreamDatabase | AWSTimestreamScheduledQuery | AWSTimestreamTable | AWSTransferAgreement | AWSTransferCertificate | AWSTransferConnector | AWSTransferProfile | AWSTransferServer | AWSTransferUser | AWSTransferWorkflow | AWSVoiceIDDomain | AWSWAFByteMatchSet | AWSWAFIPSet | AWSWAFRule | AWSWAFSizeConstraintSet | AWSWAFSqlInjectionMatchSet | AWSWAFWebACL | AWSWAFXssMatchSet | AWSWAFRegionalByteMatchSet | AWSWAFRegionalGeoMatchSet | AWSWAFRegionalIPSet | AWSWAFRegionalRateBasedRule | AWSWAFRegionalRegexPatternSet | AWSWAFRegionalRule | AWSWAFRegionalSizeConstraintSet | AWSWAFRegionalSqlInjectionMatchSet | AWSWAFRegionalWebACL | AWSWAFRegionalWebACLAssociation | AWSWAFRegionalXssMatchSet | AWSWAFv2IPSet | AWSWAFv2LoggingConfiguration | AWSWAFv2RegexPatternSet | AWSWAFv2RuleGroup | AWSWAFv2WebACL | AWSWAFv2WebACLAssociation | AWSWisdomAssistant | AWSWisdomAssistantAssociation | AWSWisdomKnowledgeBase | AWSWorkSpacesConnectionAlias | AWSWorkSpacesWorkspace | AWSXRayGroup | AWSXRayResourcePolicy | AWSXRaySamplingRule | AlexaASKSkill | CustomResource; } export interface Resource { Properties: Properties; Type: Type5; } export interface Properties { Destination: Destination2; Permissions: Permissions; Source: Source; } export interface ResourceReference { Arn?: unknown; Id?: Id; Name?: unknown; Qualifier?: unknown; QueueUrl?: unknown; ResourceId?: unknown; RoleName?: unknown; Type?: Type4; } export interface Resource1 { Condition?: PassThroughProp; Connectors?: Connectors; DeletionPolicy?: PassThroughProp; DependsOn?: PassThroughProp; Metadata?: PassThroughProp; Properties?: Properties1; Type: Type25; UpdateReplacePolicy?: PassThroughProp; } export interface Connectors { [k: string]: EmbeddedConnector; } export interface EmbeddedConnector { DeletionPolicy?: PassThroughProp; DependsOn?: PassThroughProp; Metadata?: PassThroughProp; Properties: EmbeddedConnectorProperties; UpdatePolicy?: PassThroughProp; } export interface EmbeddedConnectorProperties { Destination: Destination3; Permissions: Permissions1; SourceReference?: SourceReference; } export interface SourceReference { Qualifier?: unknown; } export interface Properties1 { Architectures?: unknown; AssumeRolePolicyDocument?: AssumeRolePolicyDocument1; AutoPublishAlias?: AutoPublishAlias1; AutoPublishCodeSha256?: AutoPublishCodeSha256; CodeSigningConfigArn?: CodeSigningConfigArn; CodeUri?: CodeUri2; DeadLetterQueue?: DeadLetterQueue2; DeploymentPreference?: DeploymentPreference2; Description?: unknown; Environment?: unknown; EphemeralStorage?: unknown; EventInvokeConfig?: EventInvokeConfig2; Events?: Events; FileSystemConfigs?: unknown; FunctionName?: unknown; FunctionUrlConfig?: FunctionUrlConfig; Handler?: unknown; ImageConfig?: unknown; ImageUri?: unknown; InlineCode?: unknown; KmsKeyArn?: unknown; Layers?: unknown; MemorySize?: unknown; PackageType?: unknown; PermissionsBoundary?: unknown; Policies?: Policies; ProvisionedConcurrencyConfig?: unknown; ReservedConcurrentExecutions?: unknown; Role?: Role1; RolePath?: unknown; Runtime?: unknown; RuntimeManagementConfig?: PassThroughProp; SnapStart?: unknown; Tags?: Tags3; Timeout?: unknown; Tracing?: Tracing1; VersionDescription?: unknown; VpcConfig?: unknown; } /** * Adds an AssumeRolePolicyDocument for the default created `Role` for this function\. If this property isn't specified, AWS SAM adds a default assume role for this function\. * *Type*: JSON * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`AssumeRolePolicyDocument`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument) property of an `AWS::IAM::Role` resource\. AWS SAM adds this property to the generated IAM role for this function\. If a role's Amazon Resource Name \(ARN\) is provided for this function, this property does nothing\. */ export interface AssumeRolePolicyDocument1 { [k: string]: unknown; } /** * Specifies the events that trigger this function\. Events consist of a type and a set of properties that depend on the type\. * *Type*: [EventSource](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventsource.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export interface Events { [k: string]: | S3Event | SNSEvent | KinesisEvent | DynamoDBEvent | SQSEvent | ApiEvent | ScheduleEvent | ScheduleV2Event | CloudWatchEvent | EventBridgeRuleEvent | CloudWatchLogsEvent | IoTRuleEvent | AlexaSkillEvent | CognitoEvent | HttpApiEvent | MSKEvent | MQEvent | SelfManagedKafkaEvent; } export interface S3Event { Properties: Properties2; Type: Type6; } export interface S3EventProperties { Bucket: Bucket1; Events: unknown; Filter?: unknown; } export interface SNSEvent { Properties: Properties3; Type: Type7; } export interface SNSEventProperties { FilterPolicy?: unknown; Region?: unknown; SqsSubscription?: SqsSubscription; Topic: unknown; } export interface SqsSubscription1 { BatchSize?: BatchSize; Enabled?: Enabled1; QueueArn: QueueArn; QueuePolicyLogicalId?: QueuePolicyLogicalId; QueueUrl: QueueUrl1; } export interface KinesisEvent { Properties: Properties4; Type: Type8; } export interface KinesisEventProperties { BatchSize?: unknown; BisectBatchOnFunctionError?: unknown; DestinationConfig?: unknown; Enabled?: unknown; FilterCriteria?: unknown; FunctionResponseTypes?: unknown; MaximumBatchingWindowInSeconds?: unknown; MaximumRecordAgeInSeconds?: unknown; MaximumRetryAttempts?: unknown; ParallelizationFactor?: unknown; StartingPosition?: unknown; StartingPositionTimestamp?: unknown; Stream: unknown; TumblingWindowInSeconds?: unknown; } export interface DynamoDBEvent { Properties: Properties5; Type: Type9; } export interface DynamoDBEventProperties { BatchSize?: unknown; BisectBatchOnFunctionError?: unknown; DestinationConfig?: unknown; Enabled?: unknown; FilterCriteria?: unknown; FunctionResponseTypes?: unknown; MaximumBatchingWindowInSeconds?: unknown; MaximumRecordAgeInSeconds?: unknown; MaximumRetryAttempts?: unknown; ParallelizationFactor?: unknown; StartingPosition?: unknown; StartingPositionTimestamp?: unknown; Stream: unknown; TumblingWindowInSeconds?: unknown; } export interface SQSEvent { Properties: Properties6; Type: Type10; } export interface SQSEventProperties { BatchSize?: unknown; Enabled?: unknown; FilterCriteria?: unknown; MaximumBatchingWindowInSeconds?: unknown; Queue: unknown; ScalingConfig?: PassThroughProp; } export interface ApiEvent { Properties: Properties7; Type: Type11; } export interface ApiEventProperties { Auth?: Auth4; Method: Method; Path: Path; RequestModel?: RequestModel; RequestParameters?: RequestParameters; RestApiId?: RestApiId; } export interface ApiAuth { ApiKeyRequired?: ApiKeyRequired1; AuthorizationScopes?: AuthorizationScopes4; Authorizer?: Authorizer; InvokeRole?: InvokeRole1; ResourcePolicy?: ResourcePolicy2; } export interface ResourcePolicy3 { AwsAccountBlacklist?: AwsAccountBlacklist1; AwsAccountWhitelist?: AwsAccountWhitelist1; CustomStatements?: CustomStatements1; IntrinsicVpcBlacklist?: IntrinsicVpcBlacklist1; IntrinsicVpcWhitelist?: IntrinsicVpcWhitelist1; IntrinsicVpceBlacklist?: IntrinsicVpceBlacklist1; IntrinsicVpceWhitelist?: IntrinsicVpceWhitelist1; IpRangeBlacklist?: IpRangeBlacklist1; IpRangeWhitelist?: IpRangeWhitelist1; SourceVpcBlacklist?: SourceVpcBlacklist1; SourceVpcWhitelist?: SourceVpcWhitelist1; } export interface RequestModel1 { Model: Model1; Required?: Required; ValidateBody?: ValidateBody; ValidateParameters?: ValidateParameters; } export interface RequestParameters1 { Caching?: Caching; Required?: Required1; } export interface Ref { Ref: Ref1; } export interface ScheduleEvent { Properties: Properties8; Type: Type13; } export interface EventsScheduleProperties { DeadLetterConfig?: DeadLetterConfig; Description?: unknown; Enabled?: Enabled5; Input?: unknown; Name?: unknown; RetryPolicy?: unknown; Schedule?: unknown; State?: unknown; } export interface DeadLetterConfig1 { Arn?: unknown; QueueLogicalId?: QueueLogicalId; Type?: Type12; } export interface ScheduleV2Event { Properties: Properties9; Type: Type14; } export interface ScheduleV2EventProperties { DeadLetterConfig?: DeadLetterConfig2; Description?: unknown; EndDate?: unknown; FlexibleTimeWindow?: unknown; GroupName?: unknown; Input?: unknown; KmsKeyArn?: unknown; Name?: unknown; PermissionsBoundary?: unknown; RetryPolicy?: unknown; RoleArn?: unknown; ScheduleExpression?: unknown; ScheduleExpressionTimezone?: unknown; StartDate?: unknown; State?: unknown; } export interface CloudWatchEvent { Properties: Properties10; Type: Type15; } export interface CloudWatchEventProperties { Enabled?: Enabled6; EventBusName?: unknown; Input?: unknown; InputPath?: unknown; Pattern?: unknown; State?: unknown; } export interface EventBridgeRuleEvent { Properties: Properties11; Type: Type16; } export interface EventBridgeRuleEventProperties { DeadLetterConfig?: DeadLetterConfig3; EventBusName?: unknown; Input?: unknown; InputPath?: unknown; Pattern: unknown; RetryPolicy?: unknown; Target?: Target; } export interface EventBridgeRuleTarget { Id: unknown; } export interface CloudWatchLogsEvent { Properties: Properties12; Type: Type17; } export interface CloudWatchLogsEventProperties { FilterPattern: unknown; LogGroupName: unknown; } export interface IoTRuleEvent { Properties: Properties13; Type: Type18; } export interface IoTRuleEventProperties { AwsIotSqlVersion?: unknown; Sql: unknown; } export interface AlexaSkillEvent { Properties?: Properties14; Type: Type19; } export interface AlexaSkillEventProperties { SkillId?: SkillId; } export interface CognitoEvent { Properties: Properties15; Type: Type20; } export interface CognitoEventProperties { Trigger: unknown; UserPool: UserPool; } export interface HttpApiEvent { Properties?: Properties16; Type: Type21; } export interface HttpApiEventProperties { ApiId?: ApiId; Auth?: Auth5; Method?: Method1; Path?: Path1; PayloadFormatVersion?: PayloadFormatVersion; RouteSettings?: unknown; TimeoutInMillis?: TimeoutInMillis; } export interface HttpApiAuth { AuthorizationScopes?: AuthorizationScopes5; Authorizer?: Authorizer1; } export interface MSKEvent { Properties: Properties17; Type: Type22; } export interface MSKEventProperties { ConsumerGroupId?: unknown; FilterCriteria?: unknown; MaximumBatchingWindowInSeconds?: unknown; SourceAccessConfigurations?: PassThroughProp; StartingPosition?: unknown; StartingPositionTimestamp?: unknown; Stream: unknown; Topics: unknown; } export interface MQEvent { Properties: Properties18; Type: Type23; } export interface MQEventProperties { BatchSize?: unknown; Broker: unknown; Enabled?: unknown; FilterCriteria?: unknown; MaximumBatchingWindowInSeconds?: unknown; Queues: unknown; SecretsManagerKmsKeyId?: SecretsManagerKmsKeyId; SourceAccessConfigurations: unknown; } export interface SelfManagedKafkaEvent { Properties: Properties19; Type: Type24; } export interface SelfManagedKafkaEventProperties { BatchSize?: unknown; ConsumerGroupId?: unknown; Enabled?: unknown; FilterCriteria?: unknown; KafkaBootstrapServers?: KafkaBootstrapServers; SourceAccessConfigurations: unknown; Topics: unknown; } export interface FunctionUrlConfig1 { AuthType: AuthType; Cors?: unknown; } /** * A map \(string to string\) that specifies the tags added to this function\. For details about valid keys and values for tags, see [Tag Key and Value Requirements](https://docs.aws.amazon.com/lambda/latest/dg/configuration-tags.html#configuration-tags-restrictions) in the *AWS Lambda Developer Guide*\. * When the stack is created, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles that are generated for this function\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags) property of an `AWS::Lambda::Function` resource\. The `Tags` property in AWS SAM consists of key\-value pairs \(whereas in AWS CloudFormation this property consists of a list of `Tag` objects\)\. Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this Lambda function, and to the default roles that are generated for this function\. */ export interface Tags3 { [k: string]: unknown; } export interface Resource2 { Connectors?: Connectors1; Properties?: Properties20; Type: Type27; } export interface Connectors1 { [k: string]: EmbeddedConnector; } export interface Properties20 { PrimaryKey?: PrimaryKey; ProvisionedThroughput?: unknown; SSESpecification?: unknown; TableName?: unknown; Tags?: Tags4; } export interface PrimaryKey1 { Name: unknown; Type: unknown; } /** * A map \(string to string\) that specifies the tags to be added to this SimpleTable\. For details about valid keys and values for tags, see [Resource tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide*\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tags) property of an `AWS::DynamoDB::Table` resource\. The Tags property in SAM consists of Key:Value pairs; in CloudFormation it consists of a list of Tag objects\. */ export interface Tags4 { [k: string]: unknown; } export interface Resource3 { Condition?: PassThroughProp; Connectors?: Connectors2; Properties: Properties21; Type: Type35; } export interface Connectors2 { [k: string]: EmbeddedConnector; } export interface Properties21 { Definition?: Definition; DefinitionSubstitutions?: DefinitionSubstitutions; DefinitionUri?: unknown; Events?: Events2; Logging?: unknown; Name?: unknown; PermissionsBoundary?: unknown; Policies?: Policies1; Role?: unknown; RolePath?: PassThroughProp; Tags?: Tags5; Tracing?: unknown; Type?: unknown; } /** * The state machine definition is an object, where the format of the object matches the format of your AWS SAM template file, for example, JSON or YAML\. State machine definitions adhere to the [Amazon States Language](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html)\. * For an example of an inline state machine definition, see [Examples](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-resource-statemachine--examples.html#sam-resource-statemachine--examples)\. * You must provide either a `Definition` or a `DefinitionUri`\. * *Type*: Map * *Required*: Conditional * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export interface Definition { [k: string]: unknown; } /** * A string\-to\-string map that specifies the mappings for placeholder variables in the state machine definition\. This enables you to inject values obtained at runtime \(for example, from intrinsic functions\) into the state machine definition\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`DefinitionSubstitutions`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitionsubstitutions) property of an `AWS::StepFunctions::StateMachine` resource\. If any intrinsic functions are specified in an inline state machine definition, AWS SAM adds entries to this property to inject them into the state machine definition\. */ export interface DefinitionSubstitutions { [k: string]: unknown; } /** * Specifies the events that trigger this state machine\. Events consist of a type and a set of properties that depend on the type\. * *Type*: [EventSource](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-statemachine-statemachineeventsource.html) * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export interface Events2 { [k: string]: | ScheduleEvent1 | ScheduleV2Event1 | CloudWatchEvent1 | EventBridgeRuleEvent1 | ApiEvent1; } export interface ScheduleEvent1 { Properties: Properties22; Type: Type29; } export interface ScheduleEventProperties { DeadLetterConfig?: DeadLetterConfig4; Description?: unknown; Enabled?: Enabled9; Input?: unknown; Name?: unknown; RetryPolicy?: unknown; Schedule?: unknown; State?: unknown; Target?: ScheduleTarget; } export interface DeadLetterConfig5 { Arn?: unknown; QueueLogicalId?: QueueLogicalId1; Type?: Type28; } export interface ScheduleTarget { Id: PassThroughProp; } export interface ScheduleV2Event1 { Properties: Properties23; Type: Type30; } export interface ScheduleV2EventProperties1 { DeadLetterConfig?: DeadLetterConfig6; Description?: unknown; EndDate?: unknown; FlexibleTimeWindow?: unknown; GroupName?: unknown; Input?: unknown; KmsKeyArn?: unknown; Name?: unknown; PermissionsBoundary?: unknown; RetryPolicy?: unknown; RoleArn?: unknown; ScheduleExpression?: unknown; ScheduleExpressionTimezone?: unknown; StartDate?: unknown; State?: unknown; } export interface CloudWatchEvent1 { Properties: Properties24; Type: Type31; } export interface CloudWatchEventProperties1 { EventBusName?: unknown; Input?: unknown; InputPath?: unknown; Pattern?: unknown; } export interface EventBridgeRuleEvent1 { Properties: Properties25; Type: Type32; } export interface EventBridgeRuleEventProperties1 { DeadLetterConfig?: DeadLetterConfig7; EventBusName?: unknown; Input?: unknown; InputPath?: unknown; Pattern?: unknown; RetryPolicy?: unknown; Target?: EventBridgeRuleTarget1; } export interface EventBridgeRuleTarget1 { Id: PassThroughProp; } export interface ApiEvent1 { Properties: Properties26; Type: Type33; } export interface ApiEventProperties1 { Auth?: Auth6; Method: Method2; Path: Path2; RestApiId?: RestApiId1; UnescapeMappingTemplate?: Unescapemappingtemplate; } export interface Auth7 { ApiKeyRequired?: ApiKeyRequired2; AuthorizationScopes?: AuthorizationScopes6; Authorizer?: Authorizer2; ResourcePolicy?: ResourcePolicy4; } export interface ResourcePolicy5 { AwsAccountBlacklist?: AwsAccountBlacklist2; AwsAccountWhitelist?: AwsAccountWhitelist2; CustomStatements?: CustomStatements2; IntrinsicVpcBlacklist?: IntrinsicVpcBlacklist2; IntrinsicVpcWhitelist?: IntrinsicVpcWhitelist2; IntrinsicVpceBlacklist?: IntrinsicVpceBlacklist2; IntrinsicVpceWhitelist?: IntrinsicVpceWhitelist2; IpRangeBlacklist?: IpRangeBlacklist2; IpRangeWhitelist?: IpRangeWhitelist2; SourceVpcBlacklist?: SourceVpcBlacklist2; SourceVpcWhitelist?: SourceVpcWhitelist2; } /** * A string\-to\-string map that specifies the tags added to the state machine and the corresponding execution role\. For information about valid keys and values for tags, see the [Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags) property of an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html) resource\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags) property of an `AWS::StepFunctions::StateMachine` resource\. AWS SAM automatically adds a `stateMachine:createdBy:SAM` tag to this resource, and to the default role that is generated for it\. */ export interface Tags5 { [k: string]: unknown; } export interface Resource4 { Condition?: PassThroughProp; DeletionPolicy?: PassThroughProp; Properties: Properties27; Type: Type36; } export interface Properties27 { CompatibleArchitectures?: unknown; CompatibleRuntimes?: unknown; ContentUri: ContentUri; Description?: unknown; LayerName?: unknown; LicenseInfo?: unknown; RetentionPolicy?: RetentionPolicy; } export interface ContentUri1 { Bucket: unknown; Key: unknown; Version?: unknown; } export interface Resource5 { Condition?: PassThroughProp; Connectors?: Connectors3; DeletionPolicy?: PassThroughProp; DependsOn?: PassThroughProp; Metadata?: PassThroughProp; Properties: Properties28; Type: Type38; UpdatePolicy?: PassThroughProp; UpdateReplacePolicy?: PassThroughProp; } export interface Connectors3 { [k: string]: EmbeddedConnector; } export interface Properties28 { AccessLogSetting?: unknown; ApiKeySourceType?: unknown; Auth?: Auth8; BinaryMediaTypes?: unknown; CacheClusterEnabled?: unknown; CacheClusterSize?: unknown; CanarySetting?: unknown; Cors?: Cors3; DefinitionBody?: DefinitionBody; DefinitionUri?: DefinitionUri2; Description?: unknown; DisableExecuteApiEndpoint?: unknown; Domain?: Domain4; EndpointConfiguration?: EndpointConfiguration3; FailOnWarnings?: unknown; GatewayResponses?: GatewayResponses1; MethodSettings?: unknown; MinimumCompressionSize?: unknown; Mode?: unknown; Models?: Models; Name?: unknown; OpenApiVersion?: OpenApiVersion1; StageName: StageName; Tags?: Tags6; TracingEnabled?: unknown; Variables?: unknown; } /** * OpenAPI specification that describes your API\. If neither `DefinitionUri` nor `DefinitionBody` are specified, SAM will generate a `DefinitionBody` for you based on your template configuration\. * *Type*: JSON * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Body`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body) property of an `AWS::ApiGateway::RestApi` resource\. If certain properties are provided, content may be inserted or modified into the DefinitionBody before being passed to CloudFormation\. Properties include `Auth`, `BinaryMediaTypes`, `Cors`, `GatewayResponses`, `Models`, and an `EventSource` of type Api for a corresponding `AWS::Serverless::Function`\. */ export interface DefinitionBody { [k: string]: unknown; } export interface DefinitionUri3 { Bucket: unknown; Key: unknown; Version?: unknown; } export interface EndpointConfiguration4 { Type?: unknown; VPCEndpointIds?: unknown; } /** * Configures Gateway Responses for an API\. Gateway Responses are responses returned by API Gateway, either directly or through the use of Lambda Authorizers\. For more information, see the documentation for the [Api Gateway OpenApi extension for Gateway Responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.html)\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export interface GatewayResponses1 { [k: string]: unknown; } /** * The schemas to be used by your API methods\. These schemas can be described using JSON or YAML\. See the Examples section at the bottom of this page for example models\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. */ export interface Models { [k: string]: unknown; } /** * A map \(string to string\) that specifies the tags to be added to this API Gateway stage\. For details about valid keys and values for tags, see [Resource tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) in the *AWS CloudFormation User Guide*\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tags) property of an `AWS::ApiGateway::Stage` resource\. The Tags property in SAM consists of Key:Value pairs; in CloudFormation it consists of a list of Tag objects\. */ export interface Tags6 { [k: string]: unknown; } export interface Resource6 { Condition?: PassThroughProp; Connectors?: Connectors4; Metadata?: PassThroughProp; Properties?: Properties29; Type: Type39; } export interface Connectors4 { [k: string]: EmbeddedConnector; } export interface Properties29 { AccessLogSettings?: unknown; Auth?: Auth9; CorsConfiguration?: unknown; DefaultRouteSettings?: unknown; DefinitionBody?: DefinitionBody1; DefinitionUri?: DefinitionUri4; Description?: Description9; DisableExecuteApiEndpoint?: unknown; Domain?: Domain5; FailOnWarnings?: unknown; Name?: PassThroughProp; RouteSettings?: unknown; StageName?: unknown; StageVariables?: unknown; Tags?: Tags7; } /** * The OpenAPI definition that describes your HTTP API\. If you don't specify a `DefinitionUri` or a `DefinitionBody`, AWS SAM generates a `DefinitionBody` for you based on your template configuration\. * *Type*: JSON * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Body`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-body) property of an `AWS::ApiGatewayV2::Api` resource\. If certain properties are provided, AWS SAM may insert content into or modify the `DefinitionBody` before it is passed to AWS CloudFormation\. Properties include `Auth` and an `EventSource` of type HttpApi for a corresponding `AWS::Serverless::Function` resource\. */ export interface DefinitionBody1 { [k: string]: unknown; } export interface DefinitionUri5 { Bucket: Bucket4; Key: Key3; Version?: Version3; } /** * A map \(string to string\) that specifies the tags to add to this API Gateway stage\. Keys can be 1 to 128 Unicode characters in length and cannot include the prefix `aws:`\. You can use any of the following characters: the set of Unicode letters, digits, whitespace, `_`, `.`, `/`, `=`, `+`, and `-`\. Values can be 1 to 256 Unicode characters in length\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\. * *Additional notes*: The `Tags` property requires AWS SAM to modify your OpenAPI definition, so tags are added only if the `DefinitionBody` property is specified—no tags are added if the `DefinitionUri` property is specified\. AWS SAM automatically adds an `httpapi:createdBy:SAM` tag\. Tags are also added to the `AWS::ApiGatewayV2::Stage` resource and the `AWS::ApiGatewayV2::DomainName` resource \(if `DomainName` is specified\)\. */ export interface Tags7 { [k: string]: unknown; } export interface Resource7 { Condition?: PassThroughProp; Properties: Properties30; Type: Type40; } export interface Properties30 { Location: Location; NotificationARNs?: unknown; Parameters?: unknown; Tags?: Tags8; TimeoutInMinutes?: unknown; } export interface Location1 { ApplicationId: ApplicationId; SemanticVersion: SemanticVersion; } /** * A map \(string to string\) that specifies the tags to be added to this application\. Keys and values are limited to alphanumeric characters\. Keys can be 1 to 127 Unicode characters in length and cannot be prefixed with aws:\. Values can be 1 to 255 Unicode characters in length\. * *Type*: Map * *Required*: No * *AWS CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-tags) property of an `AWS::CloudFormation::Stack` resource\. The Tags property in SAM consists of Key:Value pairs; in CloudFormation it consists of a list of Tag objects\. When the stack is created, SAM will automatically add a `lambda:createdBy:SAM` tag to this application\. In addition, if this application is from the AWS Serverless Application Repository, then SAM will also automatically the two additional tags `serverlessrepo:applicationId:ApplicationId` and `serverlessrepo:semanticVersion:SemanticVersion`\. */ export interface Tags8 { [k: string]: unknown; } export interface AWSACMPCACertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiPassthrough?: AWSACMPCACertificate1; CertificateAuthorityArn: string; CertificateSigningRequest: string; SigningAlgorithm: string; TemplateArn?: string; Validity: AWSACMPCACertificate14; ValidityNotBefore?: AWSACMPCACertificate14; }; Type: 'AWS::ACMPCA::Certificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSACMPCACertificate1 { Extensions?: AWSACMPCACertificate2; Subject?: AWSACMPCACertificate10; } export interface AWSACMPCACertificate2 { CertificatePolicies?: AWSACMPCACertificate3[]; CustomExtensions?: AWSACMPCACertificate6[]; ExtendedKeyUsage?: AWSACMPCACertificate7[]; KeyUsage?: AWSACMPCACertificate8; SubjectAlternativeNames?: AWSACMPCACertificate9[]; } export interface AWSACMPCACertificate3 { CertPolicyId: string; PolicyQualifiers?: AWSACMPCACertificate4[]; } export interface AWSACMPCACertificate4 { PolicyQualifierId: string; Qualifier: AWSACMPCACertificate5; } export interface AWSACMPCACertificate5 { CpsUri: string; } export interface AWSACMPCACertificate6 { Critical?: boolean; ObjectIdentifier: string; Value: string; } export interface AWSACMPCACertificate7 { ExtendedKeyUsageObjectIdentifier?: string; ExtendedKeyUsageType?: string; } export interface AWSACMPCACertificate8 { CRLSign?: boolean; DataEncipherment?: boolean; DecipherOnly?: boolean; DigitalSignature?: boolean; EncipherOnly?: boolean; KeyAgreement?: boolean; KeyCertSign?: boolean; KeyEncipherment?: boolean; NonRepudiation?: boolean; } export interface AWSACMPCACertificate9 { DirectoryName?: AWSACMPCACertificate10; DnsName?: string; EdiPartyName?: AWSACMPCACertificate12; IpAddress?: string; OtherName?: AWSACMPCACertificate13; RegisteredId?: string; Rfc822Name?: string; UniformResourceIdentifier?: string; } export interface AWSACMPCACertificate10 { CommonName?: string; Country?: string; CustomAttributes?: AWSACMPCACertificate11[]; DistinguishedNameQualifier?: string; GenerationQualifier?: string; GivenName?: string; Initials?: string; Locality?: string; Organization?: string; OrganizationalUnit?: string; Pseudonym?: string; SerialNumber?: string; State?: string; Surname?: string; Title?: string; } export interface AWSACMPCACertificate11 { ObjectIdentifier: string; Value: string; } export interface AWSACMPCACertificate12 { NameAssigner: string; PartyName: string; } export interface AWSACMPCACertificate13 { TypeId: string; Value: string; } export interface AWSACMPCACertificate14 { Type: string; Value: number; } export interface AWSACMPCACertificateAuthority { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CsrExtensions?: AWSACMPCACertificateAuthority1; KeyAlgorithm: string; KeyStorageSecurityStandard?: string; RevocationConfiguration?: AWSACMPCACertificateAuthority10; SigningAlgorithm: string; Subject: AWSACMPCACertificateAuthority5; Tags?: Tag[]; Type: string; UsageMode?: string; }; Type: 'AWS::ACMPCA::CertificateAuthority'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSACMPCACertificateAuthority1 { KeyUsage?: AWSACMPCACertificateAuthority2; SubjectInformationAccess?: AWSACMPCACertificateAuthority3[]; } export interface AWSACMPCACertificateAuthority2 { CRLSign?: boolean; DataEncipherment?: boolean; DecipherOnly?: boolean; DigitalSignature?: boolean; EncipherOnly?: boolean; KeyAgreement?: boolean; KeyCertSign?: boolean; KeyEncipherment?: boolean; NonRepudiation?: boolean; } export interface AWSACMPCACertificateAuthority3 { AccessLocation: AWSACMPCACertificateAuthority4; AccessMethod: AWSACMPCACertificateAuthority9; } export interface AWSACMPCACertificateAuthority4 { DirectoryName?: AWSACMPCACertificateAuthority5; DnsName?: string; EdiPartyName?: AWSACMPCACertificateAuthority7; IpAddress?: string; OtherName?: AWSACMPCACertificateAuthority8; RegisteredId?: string; Rfc822Name?: string; UniformResourceIdentifier?: string; } export interface AWSACMPCACertificateAuthority5 { CommonName?: string; Country?: string; CustomAttributes?: AWSACMPCACertificateAuthority6[]; DistinguishedNameQualifier?: string; GenerationQualifier?: string; GivenName?: string; Initials?: string; Locality?: string; Organization?: string; OrganizationalUnit?: string; Pseudonym?: string; SerialNumber?: string; State?: string; Surname?: string; Title?: string; } export interface AWSACMPCACertificateAuthority6 { ObjectIdentifier: string; Value: string; } export interface AWSACMPCACertificateAuthority7 { NameAssigner: string; PartyName: string; } export interface AWSACMPCACertificateAuthority8 { TypeId: string; Value: string; } export interface AWSACMPCACertificateAuthority9 { AccessMethodType?: string; CustomObjectIdentifier?: string; } export interface AWSACMPCACertificateAuthority10 { CrlConfiguration?: AWSACMPCACertificateAuthority11; OcspConfiguration?: AWSACMPCACertificateAuthority12; } export interface AWSACMPCACertificateAuthority11 { CustomCname?: string; Enabled?: boolean; ExpirationInDays?: number; S3BucketName?: string; S3ObjectAcl?: string; } export interface AWSACMPCACertificateAuthority12 { Enabled?: boolean; OcspCustomCname?: string; } export interface Tag { Key: string; Value: string; } export interface AWSACMPCACertificateAuthorityActivation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Certificate: string; CertificateAuthorityArn: string; CertificateChain?: string; Status?: string; }; Type: 'AWS::ACMPCA::CertificateAuthorityActivation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSACMPCAPermission { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Actions: string[]; CertificateAuthorityArn: string; Principal: string; SourceAccount?: string; }; Type: 'AWS::ACMPCA::Permission'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAPSRuleGroupsNamespace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Data: string; Name: string; Tags?: Tag[]; Workspace: string; }; Type: 'AWS::APS::RuleGroupsNamespace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAPSWorkspace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AlertManagerDefinition?: string; Alias?: string; LoggingConfiguration?: AWSAPSWorkspace1; Tags?: Tag[]; }; Type: 'AWS::APS::Workspace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAPSWorkspace1 { LogGroupArn?: string; } export interface AWSAccessAnalyzerAnalyzer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AnalyzerName?: string; ArchiveRules?: AWSAccessAnalyzerAnalyzer1[]; Tags?: Tag[]; Type: string; }; Type: 'AWS::AccessAnalyzer::Analyzer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAccessAnalyzerAnalyzer1 { Filter: AWSAccessAnalyzerAnalyzer2[]; RuleName: string; } export interface AWSAccessAnalyzerAnalyzer2 { Contains?: string[]; Eq?: string[]; Exists?: boolean; Neq?: string[]; Property: string; } export interface AWSAmazonMQBroker { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthenticationStrategy?: string; AutoMinorVersionUpgrade: boolean; BrokerName: string; Configuration?: AWSAmazonMQBroker1; DeploymentMode: string; EncryptionOptions?: AWSAmazonMQBroker2; EngineType: string; EngineVersion: string; HostInstanceType: string; LdapServerMetadata?: AWSAmazonMQBroker3; Logs?: AWSAmazonMQBroker4; MaintenanceWindowStartTime?: AWSAmazonMQBroker5; PubliclyAccessible: boolean; SecurityGroups?: string[]; StorageType?: string; SubnetIds?: string[]; Tags?: AWSAmazonMQBroker6[]; Users: AWSAmazonMQBroker7[]; }; Type: 'AWS::AmazonMQ::Broker'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAmazonMQBroker1 { Id: string; Revision: number; } export interface AWSAmazonMQBroker2 { KmsKeyId?: string; UseAwsOwnedKey: boolean; } export interface AWSAmazonMQBroker3 { Hosts: string[]; RoleBase: string; RoleName?: string; RoleSearchMatching: string; RoleSearchSubtree?: boolean; ServiceAccountPassword: string; ServiceAccountUsername: string; UserBase: string; UserRoleName?: string; UserSearchMatching: string; UserSearchSubtree?: boolean; } export interface AWSAmazonMQBroker4 { Audit?: boolean; General?: boolean; } export interface AWSAmazonMQBroker5 { DayOfWeek: string; TimeOfDay: string; TimeZone: string; } export interface AWSAmazonMQBroker6 { Key: string; Value: string; } export interface AWSAmazonMQBroker7 { ConsoleAccess?: boolean; Groups?: string[]; Password: string; Username: string; } export interface AWSAmazonMQConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthenticationStrategy?: string; Data: string; Description?: string; EngineType: string; EngineVersion: string; Name: string; Tags?: AWSAmazonMQConfiguration1[]; }; Type: 'AWS::AmazonMQ::Configuration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAmazonMQConfiguration1 { Key: string; Value: string; } export interface AWSAmazonMQConfigurationAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Broker: string; Configuration: AWSAmazonMQConfigurationAssociation1; }; Type: 'AWS::AmazonMQ::ConfigurationAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAmazonMQConfigurationAssociation1 { Id: string; Revision: number; } export interface AWSAmplifyApp { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessToken?: string; AutoBranchCreationConfig?: AWSAmplifyApp1; BasicAuthConfig?: AWSAmplifyApp2; BuildSpec?: string; CustomHeaders?: string; CustomRules?: AWSAmplifyApp4[]; Description?: string; EnableBranchAutoDeletion?: boolean; EnvironmentVariables?: AWSAmplifyApp3[]; IAMServiceRole?: string; Name: string; OauthToken?: string; Platform?: string; Repository?: string; Tags?: Tag[]; }; Type: 'AWS::Amplify::App'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAmplifyApp1 { AutoBranchCreationPatterns?: string[]; BasicAuthConfig?: AWSAmplifyApp2; BuildSpec?: string; EnableAutoBranchCreation?: boolean; EnableAutoBuild?: boolean; EnablePerformanceMode?: boolean; EnablePullRequestPreview?: boolean; EnvironmentVariables?: AWSAmplifyApp3[]; Framework?: string; PullRequestEnvironmentName?: string; Stage?: string; } export interface AWSAmplifyApp2 { EnableBasicAuth?: boolean; Password?: string; Username?: string; } export interface AWSAmplifyApp3 { Name: string; Value: string; } export interface AWSAmplifyApp4 { Condition?: string; Source: string; Status?: string; Target: string; } export interface AWSAmplifyBranch { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppId: string; BasicAuthConfig?: AWSAmplifyBranch1; BranchName: string; BuildSpec?: string; Description?: string; EnableAutoBuild?: boolean; EnablePerformanceMode?: boolean; EnablePullRequestPreview?: boolean; EnvironmentVariables?: AWSAmplifyBranch2[]; Framework?: string; PullRequestEnvironmentName?: string; Stage?: string; Tags?: Tag[]; }; Type: 'AWS::Amplify::Branch'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAmplifyBranch1 { EnableBasicAuth?: boolean; Password: string; Username: string; } export interface AWSAmplifyBranch2 { Name: string; Value: string; } export interface AWSAmplifyDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppId: string; AutoSubDomainCreationPatterns?: string[]; AutoSubDomainIAMRole?: string; DomainName: string; EnableAutoSubDomain?: boolean; SubDomainSettings: AWSAmplifyDomain1[]; }; Type: 'AWS::Amplify::Domain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAmplifyDomain1 { BranchName: string; Prefix: string; } export interface AWSAmplifyUIBuilderComponent { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BindingProperties: { [k: string]: AWSAmplifyUIBuilderComponent1; }; Children?: AWSAmplifyUIBuilderComponent4[]; CollectionProperties?: { [k: string]: AWSAmplifyUIBuilderComponent12; }; ComponentType: string; Events?: { [k: string]: AWSAmplifyUIBuilderComponent5; }; Name: string; Overrides: { [k: string]: unknown; }; Properties: { [k: string]: AWSAmplifyUIBuilderComponent7; }; SchemaVersion?: string; SourceId?: string; Tags?: { [k: string]: unknown; }; Variants: AWSAmplifyUIBuilderComponent14[]; }; Type: 'AWS::AmplifyUIBuilder::Component'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSAmplifyUIBuilderComponent1 { BindingProperties?: AWSAmplifyUIBuilderComponent2; DefaultValue?: string; Type?: string; } export interface AWSAmplifyUIBuilderComponent2 { Bucket?: string; DefaultValue?: string; Field?: string; Key?: string; Model?: string; Predicates?: AWSAmplifyUIBuilderComponent3[]; UserAttribute?: string; } export interface AWSAmplifyUIBuilderComponent3 { And?: AWSAmplifyUIBuilderComponent3[]; Field?: string; Operand?: string; Operator?: string; Or?: AWSAmplifyUIBuilderComponent3[]; } export interface AWSAmplifyUIBuilderComponent4 { Children?: AWSAmplifyUIBuilderComponent4[]; ComponentType: string; Events?: { [k: string]: AWSAmplifyUIBuilderComponent5; }; Name: string; Properties: { [k: string]: AWSAmplifyUIBuilderComponent7; }; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". * * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSAmplifyUIBuilderComponent5 { Action?: string; Parameters?: AWSAmplifyUIBuilderComponent6; } export interface AWSAmplifyUIBuilderComponent6 { Anchor?: AWSAmplifyUIBuilderComponent7; Fields?: { [k: string]: AWSAmplifyUIBuilderComponent7; }; Global?: AWSAmplifyUIBuilderComponent7; Id?: AWSAmplifyUIBuilderComponent7; Model?: string; State?: AWSAmplifyUIBuilderComponent11; Target?: AWSAmplifyUIBuilderComponent7; Type?: AWSAmplifyUIBuilderComponent7; Url?: AWSAmplifyUIBuilderComponent7; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". * * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". * * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSAmplifyUIBuilderComponent7 { BindingProperties?: AWSAmplifyUIBuilderComponent8; Bindings?: { [k: string]: AWSAmplifyUIBuilderComponent9; }; CollectionBindingProperties?: AWSAmplifyUIBuilderComponent8; ComponentName?: string; Concat?: AWSAmplifyUIBuilderComponent7[]; Condition?: AWSAmplifyUIBuilderComponent10; Configured?: boolean; DefaultValue?: string; Event?: string; ImportedValue?: string; Model?: string; Property?: string; Type?: string; UserAttribute?: string; Value?: string; } export interface AWSAmplifyUIBuilderComponent8 { Field?: string; Property: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSAmplifyUIBuilderComponent9 { Element: string; Property: string; } export interface AWSAmplifyUIBuilderComponent10 { Else?: AWSAmplifyUIBuilderComponent7; Field?: string; Operand?: string; OperandType?: string; Operator?: string; Property?: string; Then?: AWSAmplifyUIBuilderComponent7; } export interface AWSAmplifyUIBuilderComponent11 { ComponentName: string; Property: string; Set: AWSAmplifyUIBuilderComponent7; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSAmplifyUIBuilderComponent12 { Identifiers?: string[]; Model: string; Predicate?: AWSAmplifyUIBuilderComponent3; Sort?: AWSAmplifyUIBuilderComponent13[]; } export interface AWSAmplifyUIBuilderComponent13 { Direction: string; Field: string; } export interface AWSAmplifyUIBuilderComponent14 { Overrides?: { [k: string]: unknown; }; VariantValues?: { [k: string]: unknown; }; } export interface AWSAmplifyUIBuilderForm { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppId?: string; Cta?: AWSAmplifyUIBuilderForm1; DataType: AWSAmplifyUIBuilderForm4; EnvironmentName?: string; Fields: { [k: string]: AWSAmplifyUIBuilderForm5; }; FormActionType: string; Name: string; SchemaVersion: string; SectionalElements: { [k: string]: AWSAmplifyUIBuilderForm11; }; Style: AWSAmplifyUIBuilderForm12; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::AmplifyUIBuilder::Form'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAmplifyUIBuilderForm1 { Cancel?: AWSAmplifyUIBuilderForm2; Clear?: AWSAmplifyUIBuilderForm2; Position?: string; Submit?: AWSAmplifyUIBuilderForm2; } export interface AWSAmplifyUIBuilderForm2 { Children?: string; Excluded?: boolean; Position?: AWSAmplifyUIBuilderForm3; } export interface AWSAmplifyUIBuilderForm3 { Below?: string; Fixed?: string; RightOf?: string; } export interface AWSAmplifyUIBuilderForm4 { DataSourceType: string; DataTypeName: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSAmplifyUIBuilderForm5 { Excluded?: boolean; InputType?: AWSAmplifyUIBuilderForm6; Label?: string; Position?: AWSAmplifyUIBuilderForm3; Validations?: AWSAmplifyUIBuilderForm10[]; } export interface AWSAmplifyUIBuilderForm6 { DefaultChecked?: boolean; DefaultCountryCode?: string; DefaultValue?: string; DescriptiveText?: string; MaxValue?: number; MinValue?: number; Name?: string; Placeholder?: string; ReadOnly?: boolean; Required?: boolean; Step?: number; Type: string; Value?: string; ValueMappings?: AWSAmplifyUIBuilderForm7; } export interface AWSAmplifyUIBuilderForm7 { Values: AWSAmplifyUIBuilderForm8[]; } export interface AWSAmplifyUIBuilderForm8 { DisplayValue?: AWSAmplifyUIBuilderForm9; Value: AWSAmplifyUIBuilderForm9; } export interface AWSAmplifyUIBuilderForm9 { Value?: string; } export interface AWSAmplifyUIBuilderForm10 { NumValues?: number[]; StrValues?: string[]; Type: string; ValidationMessage?: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSAmplifyUIBuilderForm11 { Level?: number; Orientation?: string; Position?: AWSAmplifyUIBuilderForm3; Text?: string; Type: string; } export interface AWSAmplifyUIBuilderForm12 { HorizontalGap?: AWSAmplifyUIBuilderForm13; OuterPadding?: AWSAmplifyUIBuilderForm13; VerticalGap?: AWSAmplifyUIBuilderForm13; } export interface AWSAmplifyUIBuilderForm13 { TokenReference?: string; Value?: string; } export interface AWSAmplifyUIBuilderTheme { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; Overrides?: AWSAmplifyUIBuilderTheme1[]; Tags?: { [k: string]: unknown; }; Values: AWSAmplifyUIBuilderTheme1[]; }; Type: 'AWS::AmplifyUIBuilder::Theme'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAmplifyUIBuilderTheme1 { Key?: string; Value?: AWSAmplifyUIBuilderTheme2; } export interface AWSAmplifyUIBuilderTheme2 { Children?: AWSAmplifyUIBuilderTheme1[]; Value?: string; } export interface AWSApiGatewayAccount { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CloudWatchRoleArn?: string; }; Type: 'AWS::ApiGateway::Account'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayApiKey { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CustomerId?: string; Description?: string; Enabled?: boolean; GenerateDistinctId?: boolean; Name?: string; StageKeys?: AWSApiGatewayApiKey1[]; Tags?: Tag[]; Value?: string; }; Type: 'AWS::ApiGateway::ApiKey'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayApiKey1 { RestApiId?: string; StageName?: string; } export interface AWSApiGatewayAuthorizer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthType?: string; AuthorizerCredentials?: string; AuthorizerResultTtlInSeconds?: number; AuthorizerUri?: string; IdentitySource?: string; IdentityValidationExpression?: string; Name: string; ProviderARNs?: string[]; RestApiId: string; Type: string; }; Type: 'AWS::ApiGateway::Authorizer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayBasePathMapping { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BasePath?: string; DomainName: string; Id?: string; RestApiId?: string; Stage?: string; }; Type: 'AWS::ApiGateway::BasePathMapping'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayClientCertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; Tags?: Tag[]; }; Type: 'AWS::ApiGateway::ClientCertificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayDeployment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeploymentCanarySettings?: AWSApiGatewayDeployment1; Description?: string; RestApiId: string; StageDescription?: AWSApiGatewayDeployment2; StageName?: string; }; Type: 'AWS::ApiGateway::Deployment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayDeployment1 { PercentTraffic?: number; StageVariableOverrides?: { [k: string]: unknown; }; UseStageCache?: boolean; } export interface AWSApiGatewayDeployment2 { AccessLogSetting?: AWSApiGatewayDeployment3; CacheClusterEnabled?: boolean; CacheClusterSize?: string; CacheDataEncrypted?: boolean; CacheTtlInSeconds?: number; CachingEnabled?: boolean; CanarySetting?: AWSApiGatewayDeployment4; ClientCertificateId?: string; DataTraceEnabled?: boolean; Description?: string; DocumentationVersion?: string; LoggingLevel?: string; MethodSettings?: AWSApiGatewayDeployment5[]; MetricsEnabled?: boolean; Tags?: Tag[]; ThrottlingBurstLimit?: number; ThrottlingRateLimit?: number; TracingEnabled?: boolean; Variables?: { [k: string]: unknown; }; } export interface AWSApiGatewayDeployment3 { DestinationArn?: string; Format?: string; } export interface AWSApiGatewayDeployment4 { PercentTraffic?: number; StageVariableOverrides?: { [k: string]: unknown; }; UseStageCache?: boolean; } export interface AWSApiGatewayDeployment5 { CacheDataEncrypted?: boolean; CacheTtlInSeconds?: number; CachingEnabled?: boolean; DataTraceEnabled?: boolean; HttpMethod?: string; LoggingLevel?: string; MetricsEnabled?: boolean; ResourcePath?: string; ThrottlingBurstLimit?: number; ThrottlingRateLimit?: number; } export interface AWSApiGatewayDocumentationPart { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Location: AWSApiGatewayDocumentationPart1; Properties: string; RestApiId: string; }; Type: 'AWS::ApiGateway::DocumentationPart'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayDocumentationPart1 { Method?: string; Name?: string; Path?: string; StatusCode?: string; Type?: string; } export interface AWSApiGatewayDocumentationVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; DocumentationVersion: string; RestApiId: string; }; Type: 'AWS::ApiGateway::DocumentationVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayDomainName { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CertificateArn?: string; DomainName?: string; EndpointConfiguration?: AWSApiGatewayDomainName1; MutualTlsAuthentication?: AWSApiGatewayDomainName2; OwnershipVerificationCertificateArn?: string; RegionalCertificateArn?: string; SecurityPolicy?: string; Tags?: Tag[]; }; Type: 'AWS::ApiGateway::DomainName'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayDomainName1 { Types?: string[]; } export interface AWSApiGatewayDomainName2 { TruststoreUri?: string; TruststoreVersion?: string; } export interface AWSApiGatewayGatewayResponse { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResponseParameters?: { [k: string]: unknown; }; ResponseTemplates?: { [k: string]: unknown; }; ResponseType: string; RestApiId: string; StatusCode?: string; }; Type: 'AWS::ApiGateway::GatewayResponse'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayMethod { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiKeyRequired?: boolean; AuthorizationScopes?: string[]; AuthorizationType?: string; AuthorizerId?: string; HttpMethod: string; Integration?: AWSApiGatewayMethod1; MethodResponses?: AWSApiGatewayMethod3[]; OperationName?: string; RequestModels?: { [k: string]: unknown; }; RequestParameters?: { [k: string]: unknown; }; RequestValidatorId?: string; ResourceId: string; RestApiId: string; }; Type: 'AWS::ApiGateway::Method'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayMethod1 { CacheKeyParameters?: string[]; CacheNamespace?: string; ConnectionId?: string; ConnectionType?: string; ContentHandling?: string; Credentials?: string; IntegrationHttpMethod?: string; IntegrationResponses?: AWSApiGatewayMethod2[]; PassthroughBehavior?: string; RequestParameters?: { [k: string]: unknown; }; RequestTemplates?: { [k: string]: unknown; }; TimeoutInMillis?: number; Type?: string; Uri?: string; } export interface AWSApiGatewayMethod2 { ContentHandling?: string; ResponseParameters?: { [k: string]: unknown; }; ResponseTemplates?: { [k: string]: unknown; }; SelectionPattern?: string; StatusCode: string; } export interface AWSApiGatewayMethod3 { ResponseModels?: { [k: string]: unknown; }; ResponseParameters?: { [k: string]: unknown; }; StatusCode: string; } export interface AWSApiGatewayModel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ContentType?: string; Description?: string; Name?: string; RestApiId: string; Schema?: { [k: string]: unknown; }; }; Type: 'AWS::ApiGateway::Model'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayRequestValidator { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name?: string; RestApiId: string; ValidateRequestBody?: boolean; ValidateRequestParameters?: boolean; }; Type: 'AWS::ApiGateway::RequestValidator'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayResource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ParentId: string; PathPart: string; RestApiId: string; }; Type: 'AWS::ApiGateway::Resource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayRestApi { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ApiKeySourceType?: string; BinaryMediaTypes?: string[]; Body?: { [k: string]: unknown; }; BodyS3Location?: AWSApiGatewayRestApi1; CloneFrom?: string; Description?: string; DisableExecuteApiEndpoint?: boolean; EndpointConfiguration?: AWSApiGatewayRestApi2; FailOnWarnings?: boolean; MinimumCompressionSize?: number; Mode?: string; Name?: string; Parameters?: { [k: string]: unknown; }; Policy?: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::ApiGateway::RestApi'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayRestApi1 { Bucket?: string; ETag?: string; Key?: string; Version?: string; } export interface AWSApiGatewayRestApi2 { Types?: string[]; VpcEndpointIds?: string[]; } export interface AWSApiGatewayStage { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessLogSetting?: AWSApiGatewayStage1; CacheClusterEnabled?: boolean; CacheClusterSize?: string; CanarySetting?: AWSApiGatewayStage2; ClientCertificateId?: string; DeploymentId?: string; Description?: string; DocumentationVersion?: string; MethodSettings?: AWSApiGatewayStage3[]; RestApiId: string; StageName?: string; Tags?: Tag[]; TracingEnabled?: boolean; Variables?: { [k: string]: unknown; }; }; Type: 'AWS::ApiGateway::Stage'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayStage1 { DestinationArn?: string; Format?: string; } export interface AWSApiGatewayStage2 { DeploymentId?: string; PercentTraffic?: number; StageVariableOverrides?: { [k: string]: unknown; }; UseStageCache?: boolean; } export interface AWSApiGatewayStage3 { CacheDataEncrypted?: boolean; CacheTtlInSeconds?: number; CachingEnabled?: boolean; DataTraceEnabled?: boolean; HttpMethod?: string; LoggingLevel?: string; MetricsEnabled?: boolean; ResourcePath?: string; ThrottlingBurstLimit?: number; ThrottlingRateLimit?: number; } export interface AWSApiGatewayUsagePlan { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ApiStages?: AWSApiGatewayUsagePlan1[]; Description?: string; Quota?: AWSApiGatewayUsagePlan3; Tags?: Tag[]; Throttle?: AWSApiGatewayUsagePlan2; UsagePlanName?: string; }; Type: 'AWS::ApiGateway::UsagePlan'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayUsagePlan1 { ApiId?: string; Stage?: string; Throttle?: { [k: string]: AWSApiGatewayUsagePlan2; }; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSApiGatewayUsagePlan2 { BurstLimit?: number; RateLimit?: number; } export interface AWSApiGatewayUsagePlan3 { Limit?: number; Offset?: number; Period?: string; } export interface AWSApiGatewayUsagePlanKey { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { KeyId: string; KeyType: string; UsagePlanId: string; }; Type: 'AWS::ApiGateway::UsagePlanKey'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayVpcLink { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: Tag[]; TargetArns: string[]; }; Type: 'AWS::ApiGateway::VpcLink'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2Api { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ApiKeySelectionExpression?: string; BasePath?: string; Body?: { [k: string]: unknown; }; BodyS3Location?: AWSApiGatewayV2Api1; CorsConfiguration?: AWSApiGatewayV2Api2; CredentialsArn?: string; Description?: string; DisableExecuteApiEndpoint?: boolean; DisableSchemaValidation?: boolean; FailOnWarnings?: boolean; Name?: string; ProtocolType?: string; RouteKey?: string; RouteSelectionExpression?: string; Tags?: { [k: string]: unknown; }; Target?: string; Version?: string; }; Type: 'AWS::ApiGatewayV2::Api'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2Api1 { Bucket?: string; Etag?: string; Key?: string; Version?: string; } export interface AWSApiGatewayV2Api2 { AllowCredentials?: boolean; AllowHeaders?: string[]; AllowMethods?: string[]; AllowOrigins?: string[]; ExposeHeaders?: string[]; MaxAge?: number; } export interface AWSApiGatewayV2ApiGatewayManagedOverrides { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; Integration?: AWSApiGatewayV2ApiGatewayManagedOverrides1; Route?: AWSApiGatewayV2ApiGatewayManagedOverrides2; Stage?: AWSApiGatewayV2ApiGatewayManagedOverrides3; }; Type: 'AWS::ApiGatewayV2::ApiGatewayManagedOverrides'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2ApiGatewayManagedOverrides1 { Description?: string; IntegrationMethod?: string; PayloadFormatVersion?: string; TimeoutInMillis?: number; } export interface AWSApiGatewayV2ApiGatewayManagedOverrides2 { AuthorizationScopes?: string[]; AuthorizationType?: string; AuthorizerId?: string; OperationName?: string; Target?: string; } export interface AWSApiGatewayV2ApiGatewayManagedOverrides3 { AccessLogSettings?: AWSApiGatewayV2ApiGatewayManagedOverrides4; AutoDeploy?: boolean; DefaultRouteSettings?: AWSApiGatewayV2ApiGatewayManagedOverrides5; Description?: string; RouteSettings?: { [k: string]: unknown; }; StageVariables?: { [k: string]: unknown; }; } export interface AWSApiGatewayV2ApiGatewayManagedOverrides4 { DestinationArn?: string; Format?: string; } export interface AWSApiGatewayV2ApiGatewayManagedOverrides5 { DataTraceEnabled?: boolean; DetailedMetricsEnabled?: boolean; LoggingLevel?: string; ThrottlingBurstLimit?: number; ThrottlingRateLimit?: number; } export interface AWSApiGatewayV2ApiMapping { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; ApiMappingKey?: string; DomainName: string; Stage: string; }; Type: 'AWS::ApiGatewayV2::ApiMapping'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2Authorizer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; AuthorizerCredentialsArn?: string; AuthorizerPayloadFormatVersion?: string; AuthorizerResultTtlInSeconds?: number; AuthorizerType: string; AuthorizerUri?: string; EnableSimpleResponses?: boolean; IdentitySource?: string[]; IdentityValidationExpression?: string; JwtConfiguration?: AWSApiGatewayV2Authorizer1; Name: string; }; Type: 'AWS::ApiGatewayV2::Authorizer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2Authorizer1 { Audience?: string[]; Issuer?: string; } export interface AWSApiGatewayV2Deployment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; Description?: string; StageName?: string; }; Type: 'AWS::ApiGatewayV2::Deployment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2DomainName { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DomainName: string; DomainNameConfigurations?: AWSApiGatewayV2DomainName1[]; MutualTlsAuthentication?: AWSApiGatewayV2DomainName2; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::ApiGatewayV2::DomainName'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2DomainName1 { CertificateArn?: string; CertificateName?: string; EndpointType?: string; OwnershipVerificationCertificateArn?: string; SecurityPolicy?: string; } export interface AWSApiGatewayV2DomainName2 { TruststoreUri?: string; TruststoreVersion?: string; } export interface AWSApiGatewayV2Integration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; ConnectionId?: string; ConnectionType?: string; ContentHandlingStrategy?: string; CredentialsArn?: string; Description?: string; IntegrationMethod?: string; IntegrationSubtype?: string; IntegrationType: string; IntegrationUri?: string; PassthroughBehavior?: string; PayloadFormatVersion?: string; RequestParameters?: { [k: string]: unknown; }; RequestTemplates?: { [k: string]: unknown; }; ResponseParameters?: { [k: string]: unknown; }; TemplateSelectionExpression?: string; TimeoutInMillis?: number; TlsConfig?: AWSApiGatewayV2Integration1; }; Type: 'AWS::ApiGatewayV2::Integration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2Integration1 { ServerNameToVerify?: string; } export interface AWSApiGatewayV2IntegrationResponse { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; ContentHandlingStrategy?: string; IntegrationId: string; IntegrationResponseKey: string; ResponseParameters?: { [k: string]: unknown; }; ResponseTemplates?: { [k: string]: unknown; }; TemplateSelectionExpression?: string; }; Type: 'AWS::ApiGatewayV2::IntegrationResponse'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2Model { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; ContentType?: string; Description?: string; Name: string; Schema: { [k: string]: unknown; }; }; Type: 'AWS::ApiGatewayV2::Model'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2Route { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; ApiKeyRequired?: boolean; AuthorizationScopes?: string[]; AuthorizationType?: string; AuthorizerId?: string; ModelSelectionExpression?: string; OperationName?: string; RequestModels?: { [k: string]: unknown; }; RequestParameters?: { [k: string]: unknown; }; RouteKey: string; RouteResponseSelectionExpression?: string; Target?: string; }; Type: 'AWS::ApiGatewayV2::Route'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2RouteResponse { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; ModelSelectionExpression?: string; ResponseModels?: { [k: string]: unknown; }; ResponseParameters?: { [k: string]: unknown; }; RouteId: string; RouteResponseKey: string; }; Type: 'AWS::ApiGatewayV2::RouteResponse'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2Stage { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessLogSettings?: AWSApiGatewayV2Stage1; AccessPolicyId?: string; ApiId: string; AutoDeploy?: boolean; ClientCertificateId?: string; DefaultRouteSettings?: AWSApiGatewayV2Stage2; DeploymentId?: string; Description?: string; RouteSettings?: { [k: string]: unknown; }; StageName: string; StageVariables?: { [k: string]: unknown; }; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::ApiGatewayV2::Stage'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApiGatewayV2Stage1 { DestinationArn?: string; Format?: string; } export interface AWSApiGatewayV2Stage2 { DataTraceEnabled?: boolean; DetailedMetricsEnabled?: boolean; LoggingLevel?: string; ThrottlingBurstLimit?: number; ThrottlingRateLimit?: number; } export interface AWSApiGatewayV2VpcLink { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; SecurityGroupIds?: string[]; SubnetIds: string[]; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::ApiGatewayV2::VpcLink'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppConfigApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: AWSAppConfigApplication1[]; }; Type: 'AWS::AppConfig::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppConfigApplication1 { Key?: string; Value?: string; } export interface AWSAppConfigConfigurationProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; Description?: string; LocationUri: string; Name: string; RetrievalRoleArn?: string; Tags?: AWSAppConfigConfigurationProfile1[]; Type?: string; Validators?: AWSAppConfigConfigurationProfile2[]; }; Type: 'AWS::AppConfig::ConfigurationProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppConfigConfigurationProfile1 { Key?: string; Value?: string; } export interface AWSAppConfigConfigurationProfile2 { Content?: string; Type?: string; } export interface AWSAppConfigDeployment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; ConfigurationProfileId: string; ConfigurationVersion: string; DeploymentStrategyId: string; Description?: string; EnvironmentId: string; Tags?: AWSAppConfigDeployment1[]; }; Type: 'AWS::AppConfig::Deployment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppConfigDeployment1 { Key?: string; Value?: string; } export interface AWSAppConfigDeploymentStrategy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeploymentDurationInMinutes: number; Description?: string; FinalBakeTimeInMinutes?: number; GrowthFactor: number; GrowthType?: string; Name: string; ReplicateTo: string; Tags?: AWSAppConfigDeploymentStrategy1[]; }; Type: 'AWS::AppConfig::DeploymentStrategy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppConfigDeploymentStrategy1 { Key?: string; Value?: string; } export interface AWSAppConfigEnvironment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; Description?: string; Monitors?: AWSAppConfigEnvironment1[]; Name: string; Tags?: AWSAppConfigEnvironment2[]; }; Type: 'AWS::AppConfig::Environment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppConfigEnvironment1 { AlarmArn?: string; AlarmRoleArn?: string; } export interface AWSAppConfigEnvironment2 { Key?: string; Value?: string; } export interface AWSAppConfigHostedConfigurationVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; ConfigurationProfileId: string; Content: string; ContentType: string; Description?: string; LatestVersionNumber?: number; }; Type: 'AWS::AppConfig::HostedConfigurationVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppFlowConnector { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectorLabel?: string; ConnectorProvisioningConfig: AWSAppFlowConnector1; ConnectorProvisioningType: string; Description?: string; }; Type: 'AWS::AppFlow::Connector'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppFlowConnector1 { Lambda?: AWSAppFlowConnector2; } export interface AWSAppFlowConnector2 { LambdaArn: string; } export interface AWSAppFlowConnectorProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectionMode: string; ConnectorLabel?: string; ConnectorProfileConfig?: AWSAppFlowConnectorProfile1; ConnectorProfileName: string; ConnectorType: string; KMSArn?: string; }; Type: 'AWS::AppFlow::ConnectorProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppFlowConnectorProfile1 { ConnectorProfileCredentials?: AWSAppFlowConnectorProfile2; ConnectorProfileProperties?: AWSAppFlowConnectorProfile26; } export interface AWSAppFlowConnectorProfile2 { Amplitude?: AWSAppFlowConnectorProfile3; CustomConnector?: AWSAppFlowConnectorProfile4; Datadog?: AWSAppFlowConnectorProfile10; Dynatrace?: AWSAppFlowConnectorProfile11; GoogleAnalytics?: AWSAppFlowConnectorProfile12; InforNexus?: AWSAppFlowConnectorProfile13; Marketo?: AWSAppFlowConnectorProfile14; Redshift?: AWSAppFlowConnectorProfile15; SAPOData?: AWSAppFlowConnectorProfile16; Salesforce?: AWSAppFlowConnectorProfile18; ServiceNow?: AWSAppFlowConnectorProfile19; Singular?: AWSAppFlowConnectorProfile20; Slack?: AWSAppFlowConnectorProfile21; Snowflake?: AWSAppFlowConnectorProfile22; Trendmicro?: AWSAppFlowConnectorProfile23; Veeva?: AWSAppFlowConnectorProfile24; Zendesk?: AWSAppFlowConnectorProfile25; } export interface AWSAppFlowConnectorProfile3 { ApiKey: string; SecretKey: string; } export interface AWSAppFlowConnectorProfile4 { ApiKey?: AWSAppFlowConnectorProfile5; AuthenticationType: string; Basic?: AWSAppFlowConnectorProfile6; Custom?: AWSAppFlowConnectorProfile7; Oauth2?: AWSAppFlowConnectorProfile8; } export interface AWSAppFlowConnectorProfile5 { ApiKey: string; ApiSecretKey?: string; } export interface AWSAppFlowConnectorProfile6 { Password: string; Username: string; } export interface AWSAppFlowConnectorProfile7 { CredentialsMap?: { [k: string]: unknown; }; CustomAuthenticationType: string; } export interface AWSAppFlowConnectorProfile8 { AccessToken?: string; ClientId?: string; ClientSecret?: string; OAuthRequest?: AWSAppFlowConnectorProfile9; RefreshToken?: string; } export interface AWSAppFlowConnectorProfile9 { AuthCode?: string; RedirectUri?: string; } export interface AWSAppFlowConnectorProfile10 { ApiKey: string; ApplicationKey: string; } export interface AWSAppFlowConnectorProfile11 { ApiToken: string; } export interface AWSAppFlowConnectorProfile12 { AccessToken?: string; ClientId: string; ClientSecret: string; ConnectorOAuthRequest?: AWSAppFlowConnectorProfile9; RefreshToken?: string; } export interface AWSAppFlowConnectorProfile13 { AccessKeyId: string; Datakey: string; SecretAccessKey: string; UserId: string; } export interface AWSAppFlowConnectorProfile14 { AccessToken?: string; ClientId: string; ClientSecret: string; ConnectorOAuthRequest?: AWSAppFlowConnectorProfile9; } export interface AWSAppFlowConnectorProfile15 { Password?: string; Username?: string; } export interface AWSAppFlowConnectorProfile16 { BasicAuthCredentials?: AWSAppFlowConnectorProfile6; OAuthCredentials?: AWSAppFlowConnectorProfile17; } export interface AWSAppFlowConnectorProfile17 { AccessToken?: string; ClientId?: string; ClientSecret?: string; ConnectorOAuthRequest?: AWSAppFlowConnectorProfile9; RefreshToken?: string; } export interface AWSAppFlowConnectorProfile18 { AccessToken?: string; ClientCredentialsArn?: string; ConnectorOAuthRequest?: AWSAppFlowConnectorProfile9; RefreshToken?: string; } export interface AWSAppFlowConnectorProfile19 { Password: string; Username: string; } export interface AWSAppFlowConnectorProfile20 { ApiKey: string; } export interface AWSAppFlowConnectorProfile21 { AccessToken?: string; ClientId: string; ClientSecret: string; ConnectorOAuthRequest?: AWSAppFlowConnectorProfile9; } export interface AWSAppFlowConnectorProfile22 { Password: string; Username: string; } export interface AWSAppFlowConnectorProfile23 { ApiSecretKey: string; } export interface AWSAppFlowConnectorProfile24 { Password: string; Username: string; } export interface AWSAppFlowConnectorProfile25 { AccessToken?: string; ClientId: string; ClientSecret: string; ConnectorOAuthRequest?: AWSAppFlowConnectorProfile9; } export interface AWSAppFlowConnectorProfile26 { CustomConnector?: AWSAppFlowConnectorProfile27; Datadog?: AWSAppFlowConnectorProfile29; Dynatrace?: AWSAppFlowConnectorProfile30; InforNexus?: AWSAppFlowConnectorProfile31; Marketo?: AWSAppFlowConnectorProfile32; Redshift?: AWSAppFlowConnectorProfile33; SAPOData?: AWSAppFlowConnectorProfile34; Salesforce?: AWSAppFlowConnectorProfile36; ServiceNow?: AWSAppFlowConnectorProfile37; Slack?: AWSAppFlowConnectorProfile38; Snowflake?: AWSAppFlowConnectorProfile39; Veeva?: AWSAppFlowConnectorProfile40; Zendesk?: AWSAppFlowConnectorProfile41; } export interface AWSAppFlowConnectorProfile27 { OAuth2Properties?: AWSAppFlowConnectorProfile28; ProfileProperties?: { [k: string]: unknown; }; } export interface AWSAppFlowConnectorProfile28 { OAuth2GrantType?: string; TokenUrl?: string; TokenUrlCustomProperties?: { [k: string]: unknown; }; } export interface AWSAppFlowConnectorProfile29 { InstanceUrl: string; } export interface AWSAppFlowConnectorProfile30 { InstanceUrl: string; } export interface AWSAppFlowConnectorProfile31 { InstanceUrl: string; } export interface AWSAppFlowConnectorProfile32 { InstanceUrl: string; } export interface AWSAppFlowConnectorProfile33 { BucketName: string; BucketPrefix?: string; ClusterIdentifier?: string; DataApiRoleArn?: string; DatabaseName?: string; DatabaseUrl?: string; IsRedshiftServerless?: boolean; RoleArn: string; WorkgroupName?: string; } export interface AWSAppFlowConnectorProfile34 { ApplicationHostUrl?: string; ApplicationServicePath?: string; ClientNumber?: string; LogonLanguage?: string; OAuthProperties?: AWSAppFlowConnectorProfile35; PortNumber?: number; PrivateLinkServiceName?: string; } export interface AWSAppFlowConnectorProfile35 { AuthCodeUrl?: string; OAuthScopes?: string[]; TokenUrl?: string; } export interface AWSAppFlowConnectorProfile36 { InstanceUrl?: string; isSandboxEnvironment?: boolean; } export interface AWSAppFlowConnectorProfile37 { InstanceUrl: string; } export interface AWSAppFlowConnectorProfile38 { InstanceUrl: string; } export interface AWSAppFlowConnectorProfile39 { AccountName?: string; BucketName: string; BucketPrefix?: string; PrivateLinkServiceName?: string; Region?: string; Stage: string; Warehouse: string; } export interface AWSAppFlowConnectorProfile40 { InstanceUrl: string; } export interface AWSAppFlowConnectorProfile41 { InstanceUrl: string; } export interface AWSAppFlowFlow { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; DestinationFlowConfigList: AWSAppFlowFlow1[]; FlowName: string; KMSArn?: string; MetadataCatalogConfig?: AWSAppFlowFlow20; SourceFlowConfig: AWSAppFlowFlow22; Tags?: Tag[]; Tasks: AWSAppFlowFlow42[]; TriggerConfig: AWSAppFlowFlow45; }; Type: 'AWS::AppFlow::Flow'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppFlowFlow1 { ApiVersion?: string; ConnectorProfileName?: string; ConnectorType: string; DestinationConnectorProperties: AWSAppFlowFlow2; } export interface AWSAppFlowFlow2 { CustomConnector?: AWSAppFlowFlow3; EventBridge?: AWSAppFlowFlow5; LookoutMetrics?: AWSAppFlowFlow6; Marketo?: AWSAppFlowFlow7; Redshift?: AWSAppFlowFlow8; S3?: AWSAppFlowFlow9; SAPOData?: AWSAppFlowFlow13; Salesforce?: AWSAppFlowFlow15; Snowflake?: AWSAppFlowFlow16; Upsolver?: AWSAppFlowFlow17; Zendesk?: AWSAppFlowFlow19; } export interface AWSAppFlowFlow3 { CustomProperties?: { [k: string]: unknown; }; EntityName: string; ErrorHandlingConfig?: AWSAppFlowFlow4; IdFieldNames?: string[]; WriteOperationType?: string; } export interface AWSAppFlowFlow4 { BucketName?: string; BucketPrefix?: string; FailOnFirstError?: boolean; } export interface AWSAppFlowFlow5 { ErrorHandlingConfig?: AWSAppFlowFlow4; Object: string; } export interface AWSAppFlowFlow6 { Object?: string; } export interface AWSAppFlowFlow7 { ErrorHandlingConfig?: AWSAppFlowFlow4; Object: string; } export interface AWSAppFlowFlow8 { BucketPrefix?: string; ErrorHandlingConfig?: AWSAppFlowFlow4; IntermediateBucketName: string; Object: string; } export interface AWSAppFlowFlow9 { BucketName: string; BucketPrefix?: string; S3OutputFormatConfig?: AWSAppFlowFlow10; } export interface AWSAppFlowFlow10 { AggregationConfig?: AWSAppFlowFlow11; FileType?: string; PrefixConfig?: AWSAppFlowFlow12; PreserveSourceDataTyping?: boolean; } export interface AWSAppFlowFlow11 { AggregationType?: string; TargetFileSize?: number; } export interface AWSAppFlowFlow12 { PathPrefixHierarchy?: string[]; PrefixFormat?: string; PrefixType?: string; } export interface AWSAppFlowFlow13 { ErrorHandlingConfig?: AWSAppFlowFlow4; IdFieldNames?: string[]; ObjectPath: string; SuccessResponseHandlingConfig?: AWSAppFlowFlow14; WriteOperationType?: string; } export interface AWSAppFlowFlow14 { BucketName?: string; BucketPrefix?: string; } export interface AWSAppFlowFlow15 { DataTransferApi?: string; ErrorHandlingConfig?: AWSAppFlowFlow4; IdFieldNames?: string[]; Object: string; WriteOperationType?: string; } export interface AWSAppFlowFlow16 { BucketPrefix?: string; ErrorHandlingConfig?: AWSAppFlowFlow4; IntermediateBucketName: string; Object: string; } export interface AWSAppFlowFlow17 { BucketName: string; BucketPrefix?: string; S3OutputFormatConfig: AWSAppFlowFlow18; } export interface AWSAppFlowFlow18 { AggregationConfig?: AWSAppFlowFlow11; FileType?: string; PrefixConfig: AWSAppFlowFlow12; } export interface AWSAppFlowFlow19 { ErrorHandlingConfig?: AWSAppFlowFlow4; IdFieldNames?: string[]; Object: string; WriteOperationType?: string; } export interface AWSAppFlowFlow20 { GlueDataCatalog?: AWSAppFlowFlow21; } export interface AWSAppFlowFlow21 { DatabaseName: string; RoleArn: string; TablePrefix: string; } export interface AWSAppFlowFlow22 { ApiVersion?: string; ConnectorProfileName?: string; ConnectorType: string; IncrementalPullConfig?: AWSAppFlowFlow23; SourceConnectorProperties: AWSAppFlowFlow24; } export interface AWSAppFlowFlow23 { DatetimeTypeFieldName?: string; } export interface AWSAppFlowFlow24 { Amplitude?: AWSAppFlowFlow25; CustomConnector?: AWSAppFlowFlow26; Datadog?: AWSAppFlowFlow27; Dynatrace?: AWSAppFlowFlow28; GoogleAnalytics?: AWSAppFlowFlow29; InforNexus?: AWSAppFlowFlow30; Marketo?: AWSAppFlowFlow31; S3?: AWSAppFlowFlow32; SAPOData?: AWSAppFlowFlow34; Salesforce?: AWSAppFlowFlow35; ServiceNow?: AWSAppFlowFlow36; Singular?: AWSAppFlowFlow37; Slack?: AWSAppFlowFlow38; Trendmicro?: AWSAppFlowFlow39; Veeva?: AWSAppFlowFlow40; Zendesk?: AWSAppFlowFlow41; } export interface AWSAppFlowFlow25 { Object: string; } export interface AWSAppFlowFlow26 { CustomProperties?: { [k: string]: unknown; }; EntityName: string; } export interface AWSAppFlowFlow27 { Object: string; } export interface AWSAppFlowFlow28 { Object: string; } export interface AWSAppFlowFlow29 { Object: string; } export interface AWSAppFlowFlow30 { Object: string; } export interface AWSAppFlowFlow31 { Object: string; } export interface AWSAppFlowFlow32 { BucketName: string; BucketPrefix: string; S3InputFormatConfig?: AWSAppFlowFlow33; } export interface AWSAppFlowFlow33 { S3InputFileType?: string; } export interface AWSAppFlowFlow34 { ObjectPath: string; } export interface AWSAppFlowFlow35 { DataTransferApi?: string; EnableDynamicFieldUpdate?: boolean; IncludeDeletedRecords?: boolean; Object: string; } export interface AWSAppFlowFlow36 { Object: string; } export interface AWSAppFlowFlow37 { Object: string; } export interface AWSAppFlowFlow38 { Object: string; } export interface AWSAppFlowFlow39 { Object: string; } export interface AWSAppFlowFlow40 { DocumentType?: string; IncludeAllVersions?: boolean; IncludeRenditions?: boolean; IncludeSourceFiles?: boolean; Object: string; } export interface AWSAppFlowFlow41 { Object: string; } export interface AWSAppFlowFlow42 { ConnectorOperator?: AWSAppFlowFlow43; DestinationField?: string; SourceFields: string[]; TaskProperties?: AWSAppFlowFlow44[]; TaskType: string; } export interface AWSAppFlowFlow43 { Amplitude?: string; CustomConnector?: string; Datadog?: string; Dynatrace?: string; GoogleAnalytics?: string; InforNexus?: string; Marketo?: string; S3?: string; SAPOData?: string; Salesforce?: string; ServiceNow?: string; Singular?: string; Slack?: string; Trendmicro?: string; Veeva?: string; Zendesk?: string; } export interface AWSAppFlowFlow44 { Key: string; Value: string; } export interface AWSAppFlowFlow45 { TriggerProperties?: AWSAppFlowFlow46; TriggerType: string; } export interface AWSAppFlowFlow46 { DataPullMode?: string; FirstExecutionFrom?: number; FlowErrorDeactivationThreshold?: number; ScheduleEndTime?: number; ScheduleExpression: string; ScheduleOffset?: number; ScheduleStartTime?: number; TimeZone?: string; } export interface AWSAppIntegrationsDataIntegration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; KmsKey: string; Name: string; ScheduleConfig: AWSAppIntegrationsDataIntegration1; SourceURI: string; Tags?: Tag[]; }; Type: 'AWS::AppIntegrations::DataIntegration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppIntegrationsDataIntegration1 { FirstExecutionFrom: string; Object: string; ScheduleExpression: string; } export interface AWSAppIntegrationsEventIntegration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; EventBridgeBus: string; EventFilter: AWSAppIntegrationsEventIntegration1; Name: string; Tags?: Tag[]; }; Type: 'AWS::AppIntegrations::EventIntegration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppIntegrationsEventIntegration1 { Source: string; } export interface AWSAppMeshGatewayRoute { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GatewayRouteName?: string; MeshName: string; MeshOwner?: string; Spec: AWSAppMeshGatewayRoute1; Tags?: Tag[]; VirtualGatewayName: string; }; Type: 'AWS::AppMesh::GatewayRoute'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppMeshGatewayRoute1 { GrpcRoute?: AWSAppMeshGatewayRoute2; Http2Route?: AWSAppMeshGatewayRoute13; HttpRoute?: AWSAppMeshGatewayRoute13; Priority?: number; } export interface AWSAppMeshGatewayRoute2 { Action: AWSAppMeshGatewayRoute3; Match: AWSAppMeshGatewayRoute8; } export interface AWSAppMeshGatewayRoute3 { Rewrite?: AWSAppMeshGatewayRoute4; Target: AWSAppMeshGatewayRoute6; } export interface AWSAppMeshGatewayRoute4 { Hostname?: AWSAppMeshGatewayRoute5; } export interface AWSAppMeshGatewayRoute5 { DefaultTargetHostname?: string; } export interface AWSAppMeshGatewayRoute6 { Port?: number; VirtualService: AWSAppMeshGatewayRoute7; } export interface AWSAppMeshGatewayRoute7 { VirtualServiceName: string; } export interface AWSAppMeshGatewayRoute8 { Hostname?: AWSAppMeshGatewayRoute9; Metadata?: AWSAppMeshGatewayRoute10[]; Port?: number; ServiceName?: string; } export interface AWSAppMeshGatewayRoute9 { Exact?: string; Suffix?: string; } export interface AWSAppMeshGatewayRoute10 { Invert?: boolean; Match?: AWSAppMeshGatewayRoute11; Name: string; } export interface AWSAppMeshGatewayRoute11 { Exact?: string; Prefix?: string; Range?: AWSAppMeshGatewayRoute12; Regex?: string; Suffix?: string; } export interface AWSAppMeshGatewayRoute12 { End: number; Start: number; } export interface AWSAppMeshGatewayRoute13 { Action: AWSAppMeshGatewayRoute14; Match: AWSAppMeshGatewayRoute18; } export interface AWSAppMeshGatewayRoute14 { Rewrite?: AWSAppMeshGatewayRoute15; Target: AWSAppMeshGatewayRoute6; } export interface AWSAppMeshGatewayRoute15 { Hostname?: AWSAppMeshGatewayRoute5; Path?: AWSAppMeshGatewayRoute16; Prefix?: AWSAppMeshGatewayRoute17; } export interface AWSAppMeshGatewayRoute16 { Exact?: string; } export interface AWSAppMeshGatewayRoute17 { DefaultPrefix?: string; Value?: string; } export interface AWSAppMeshGatewayRoute18 { Headers?: AWSAppMeshGatewayRoute19[]; Hostname?: AWSAppMeshGatewayRoute9; Method?: string; Path?: AWSAppMeshGatewayRoute21; Port?: number; Prefix?: string; QueryParameters?: AWSAppMeshGatewayRoute22[]; } export interface AWSAppMeshGatewayRoute19 { Invert?: boolean; Match?: AWSAppMeshGatewayRoute20; Name: string; } export interface AWSAppMeshGatewayRoute20 { Exact?: string; Prefix?: string; Range?: AWSAppMeshGatewayRoute12; Regex?: string; Suffix?: string; } export interface AWSAppMeshGatewayRoute21 { Exact?: string; Regex?: string; } export interface AWSAppMeshGatewayRoute22 { Match?: AWSAppMeshGatewayRoute23; Name: string; } export interface AWSAppMeshGatewayRoute23 { Exact?: string; } export interface AWSAppMeshMesh { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { MeshName?: string; Spec?: AWSAppMeshMesh1; Tags?: Tag[]; }; Type: 'AWS::AppMesh::Mesh'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppMeshMesh1 { EgressFilter?: AWSAppMeshMesh2; ServiceDiscovery?: AWSAppMeshMesh3; } export interface AWSAppMeshMesh2 { Type: string; } export interface AWSAppMeshMesh3 { IpPreference?: string; } export interface AWSAppMeshRoute { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MeshName: string; MeshOwner?: string; RouteName?: string; Spec: AWSAppMeshRoute1; Tags?: Tag[]; VirtualRouterName: string; }; Type: 'AWS::AppMesh::Route'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppMeshRoute1 { GrpcRoute?: AWSAppMeshRoute2; Http2Route?: AWSAppMeshRoute12; HttpRoute?: AWSAppMeshRoute12; Priority?: number; TcpRoute?: AWSAppMeshRoute22; } export interface AWSAppMeshRoute2 { Action: AWSAppMeshRoute3; Match: AWSAppMeshRoute5; RetryPolicy?: AWSAppMeshRoute9; Timeout?: AWSAppMeshRoute11; } export interface AWSAppMeshRoute3 { WeightedTargets: AWSAppMeshRoute4[]; } export interface AWSAppMeshRoute4 { Port?: number; VirtualNode: string; Weight: number; } export interface AWSAppMeshRoute5 { Metadata?: AWSAppMeshRoute6[]; MethodName?: string; Port?: number; ServiceName?: string; } export interface AWSAppMeshRoute6 { Invert?: boolean; Match?: AWSAppMeshRoute7; Name: string; } export interface AWSAppMeshRoute7 { Exact?: string; Prefix?: string; Range?: AWSAppMeshRoute8; Regex?: string; Suffix?: string; } export interface AWSAppMeshRoute8 { End: number; Start: number; } export interface AWSAppMeshRoute9 { GrpcRetryEvents?: string[]; HttpRetryEvents?: string[]; MaxRetries: number; PerRetryTimeout: AWSAppMeshRoute10; TcpRetryEvents?: string[]; } export interface AWSAppMeshRoute10 { Unit: string; Value: number; } export interface AWSAppMeshRoute11 { Idle?: AWSAppMeshRoute10; PerRequest?: AWSAppMeshRoute10; } export interface AWSAppMeshRoute12 { Action: AWSAppMeshRoute13; Match: AWSAppMeshRoute14; RetryPolicy?: AWSAppMeshRoute20; Timeout?: AWSAppMeshRoute21; } export interface AWSAppMeshRoute13 { WeightedTargets: AWSAppMeshRoute4[]; } export interface AWSAppMeshRoute14 { Headers?: AWSAppMeshRoute15[]; Method?: string; Path?: AWSAppMeshRoute17; Port?: number; Prefix?: string; QueryParameters?: AWSAppMeshRoute18[]; Scheme?: string; } export interface AWSAppMeshRoute15 { Invert?: boolean; Match?: AWSAppMeshRoute16; Name: string; } export interface AWSAppMeshRoute16 { Exact?: string; Prefix?: string; Range?: AWSAppMeshRoute8; Regex?: string; Suffix?: string; } export interface AWSAppMeshRoute17 { Exact?: string; Regex?: string; } export interface AWSAppMeshRoute18 { Match?: AWSAppMeshRoute19; Name: string; } export interface AWSAppMeshRoute19 { Exact?: string; } export interface AWSAppMeshRoute20 { HttpRetryEvents?: string[]; MaxRetries: number; PerRetryTimeout: AWSAppMeshRoute10; TcpRetryEvents?: string[]; } export interface AWSAppMeshRoute21 { Idle?: AWSAppMeshRoute10; PerRequest?: AWSAppMeshRoute10; } export interface AWSAppMeshRoute22 { Action: AWSAppMeshRoute23; Match?: AWSAppMeshRoute24; Timeout?: AWSAppMeshRoute25; } export interface AWSAppMeshRoute23 { WeightedTargets: AWSAppMeshRoute4[]; } export interface AWSAppMeshRoute24 { Port?: number; } export interface AWSAppMeshRoute25 { Idle?: AWSAppMeshRoute10; } export interface AWSAppMeshVirtualGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MeshName: string; MeshOwner?: string; Spec: AWSAppMeshVirtualGateway1; Tags?: Tag[]; VirtualGatewayName?: string; }; Type: 'AWS::AppMesh::VirtualGateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppMeshVirtualGateway1 { BackendDefaults?: AWSAppMeshVirtualGateway2; Listeners: AWSAppMeshVirtualGateway15[]; Logging?: AWSAppMeshVirtualGateway27; } export interface AWSAppMeshVirtualGateway2 { ClientPolicy?: AWSAppMeshVirtualGateway3; } export interface AWSAppMeshVirtualGateway3 { TLS?: AWSAppMeshVirtualGateway4; } export interface AWSAppMeshVirtualGateway4 { Certificate?: AWSAppMeshVirtualGateway5; Enforce?: boolean; Ports?: number[]; Validation: AWSAppMeshVirtualGateway8; } export interface AWSAppMeshVirtualGateway5 { File?: AWSAppMeshVirtualGateway6; SDS?: AWSAppMeshVirtualGateway7; } export interface AWSAppMeshVirtualGateway6 { CertificateChain: string; PrivateKey: string; } export interface AWSAppMeshVirtualGateway7 { SecretName: string; } export interface AWSAppMeshVirtualGateway8 { SubjectAlternativeNames?: AWSAppMeshVirtualGateway9; Trust: AWSAppMeshVirtualGateway11; } export interface AWSAppMeshVirtualGateway9 { Match: AWSAppMeshVirtualGateway10; } export interface AWSAppMeshVirtualGateway10 { Exact?: string[]; } export interface AWSAppMeshVirtualGateway11 { ACM?: AWSAppMeshVirtualGateway12; File?: AWSAppMeshVirtualGateway13; SDS?: AWSAppMeshVirtualGateway14; } export interface AWSAppMeshVirtualGateway12 { CertificateAuthorityArns: string[]; } export interface AWSAppMeshVirtualGateway13 { CertificateChain: string; } export interface AWSAppMeshVirtualGateway14 { SecretName: string; } export interface AWSAppMeshVirtualGateway15 { ConnectionPool?: AWSAppMeshVirtualGateway16; HealthCheck?: AWSAppMeshVirtualGateway20; PortMapping: AWSAppMeshVirtualGateway21; TLS?: AWSAppMeshVirtualGateway22; } export interface AWSAppMeshVirtualGateway16 { GRPC?: AWSAppMeshVirtualGateway17; HTTP?: AWSAppMeshVirtualGateway18; HTTP2?: AWSAppMeshVirtualGateway19; } export interface AWSAppMeshVirtualGateway17 { MaxRequests: number; } export interface AWSAppMeshVirtualGateway18 { MaxConnections: number; MaxPendingRequests?: number; } export interface AWSAppMeshVirtualGateway19 { MaxRequests: number; } export interface AWSAppMeshVirtualGateway20 { HealthyThreshold: number; IntervalMillis: number; Path?: string; Port?: number; Protocol: string; TimeoutMillis: number; UnhealthyThreshold: number; } export interface AWSAppMeshVirtualGateway21 { Port: number; Protocol: string; } export interface AWSAppMeshVirtualGateway22 { Certificate: AWSAppMeshVirtualGateway23; Mode: string; Validation?: AWSAppMeshVirtualGateway25; } export interface AWSAppMeshVirtualGateway23 { ACM?: AWSAppMeshVirtualGateway24; File?: AWSAppMeshVirtualGateway6; SDS?: AWSAppMeshVirtualGateway7; } export interface AWSAppMeshVirtualGateway24 { CertificateArn: string; } export interface AWSAppMeshVirtualGateway25 { SubjectAlternativeNames?: AWSAppMeshVirtualGateway9; Trust: AWSAppMeshVirtualGateway26; } export interface AWSAppMeshVirtualGateway26 { File?: AWSAppMeshVirtualGateway13; SDS?: AWSAppMeshVirtualGateway14; } export interface AWSAppMeshVirtualGateway27 { AccessLog?: AWSAppMeshVirtualGateway28; } export interface AWSAppMeshVirtualGateway28 { File?: AWSAppMeshVirtualGateway29; } export interface AWSAppMeshVirtualGateway29 { Format?: AWSAppMeshVirtualGateway30; Path: string; } export interface AWSAppMeshVirtualGateway30 { Json?: AWSAppMeshVirtualGateway31[]; Text?: string; } export interface AWSAppMeshVirtualGateway31 { Key: string; Value: string; } export interface AWSAppMeshVirtualNode { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MeshName: string; MeshOwner?: string; Spec: AWSAppMeshVirtualNode1; Tags?: Tag[]; VirtualNodeName?: string; }; Type: 'AWS::AppMesh::VirtualNode'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppMeshVirtualNode1 { BackendDefaults?: AWSAppMeshVirtualNode2; Backends?: AWSAppMeshVirtualNode15[]; Listeners?: AWSAppMeshVirtualNode17[]; Logging?: AWSAppMeshVirtualNode36; ServiceDiscovery?: AWSAppMeshVirtualNode41; } export interface AWSAppMeshVirtualNode2 { ClientPolicy?: AWSAppMeshVirtualNode3; } export interface AWSAppMeshVirtualNode3 { TLS?: AWSAppMeshVirtualNode4; } export interface AWSAppMeshVirtualNode4 { Certificate?: AWSAppMeshVirtualNode5; Enforce?: boolean; Ports?: number[]; Validation: AWSAppMeshVirtualNode8; } export interface AWSAppMeshVirtualNode5 { File?: AWSAppMeshVirtualNode6; SDS?: AWSAppMeshVirtualNode7; } export interface AWSAppMeshVirtualNode6 { CertificateChain: string; PrivateKey: string; } export interface AWSAppMeshVirtualNode7 { SecretName: string; } export interface AWSAppMeshVirtualNode8 { SubjectAlternativeNames?: AWSAppMeshVirtualNode9; Trust: AWSAppMeshVirtualNode11; } export interface AWSAppMeshVirtualNode9 { Match: AWSAppMeshVirtualNode10; } export interface AWSAppMeshVirtualNode10 { Exact?: string[]; } export interface AWSAppMeshVirtualNode11 { ACM?: AWSAppMeshVirtualNode12; File?: AWSAppMeshVirtualNode13; SDS?: AWSAppMeshVirtualNode14; } export interface AWSAppMeshVirtualNode12 { CertificateAuthorityArns: string[]; } export interface AWSAppMeshVirtualNode13 { CertificateChain: string; } export interface AWSAppMeshVirtualNode14 { SecretName: string; } export interface AWSAppMeshVirtualNode15 { VirtualService?: AWSAppMeshVirtualNode16; } export interface AWSAppMeshVirtualNode16 { ClientPolicy?: AWSAppMeshVirtualNode3; VirtualServiceName: string; } export interface AWSAppMeshVirtualNode17 { ConnectionPool?: AWSAppMeshVirtualNode18; HealthCheck?: AWSAppMeshVirtualNode23; OutlierDetection?: AWSAppMeshVirtualNode24; PortMapping: AWSAppMeshVirtualNode26; TLS?: AWSAppMeshVirtualNode27; Timeout?: AWSAppMeshVirtualNode32; } export interface AWSAppMeshVirtualNode18 { GRPC?: AWSAppMeshVirtualNode19; HTTP?: AWSAppMeshVirtualNode20; HTTP2?: AWSAppMeshVirtualNode21; TCP?: AWSAppMeshVirtualNode22; } export interface AWSAppMeshVirtualNode19 { MaxRequests: number; } export interface AWSAppMeshVirtualNode20 { MaxConnections: number; MaxPendingRequests?: number; } export interface AWSAppMeshVirtualNode21 { MaxRequests: number; } export interface AWSAppMeshVirtualNode22 { MaxConnections: number; } export interface AWSAppMeshVirtualNode23 { HealthyThreshold: number; IntervalMillis: number; Path?: string; Port?: number; Protocol: string; TimeoutMillis: number; UnhealthyThreshold: number; } export interface AWSAppMeshVirtualNode24 { BaseEjectionDuration: AWSAppMeshVirtualNode25; Interval: AWSAppMeshVirtualNode25; MaxEjectionPercent: number; MaxServerErrors: number; } export interface AWSAppMeshVirtualNode25 { Unit: string; Value: number; } export interface AWSAppMeshVirtualNode26 { Port: number; Protocol: string; } export interface AWSAppMeshVirtualNode27 { Certificate: AWSAppMeshVirtualNode28; Mode: string; Validation?: AWSAppMeshVirtualNode30; } export interface AWSAppMeshVirtualNode28 { ACM?: AWSAppMeshVirtualNode29; File?: AWSAppMeshVirtualNode6; SDS?: AWSAppMeshVirtualNode7; } export interface AWSAppMeshVirtualNode29 { CertificateArn: string; } export interface AWSAppMeshVirtualNode30 { SubjectAlternativeNames?: AWSAppMeshVirtualNode9; Trust: AWSAppMeshVirtualNode31; } export interface AWSAppMeshVirtualNode31 { File?: AWSAppMeshVirtualNode13; SDS?: AWSAppMeshVirtualNode14; } export interface AWSAppMeshVirtualNode32 { GRPC?: AWSAppMeshVirtualNode33; HTTP?: AWSAppMeshVirtualNode34; HTTP2?: AWSAppMeshVirtualNode34; TCP?: AWSAppMeshVirtualNode35; } export interface AWSAppMeshVirtualNode33 { Idle?: AWSAppMeshVirtualNode25; PerRequest?: AWSAppMeshVirtualNode25; } export interface AWSAppMeshVirtualNode34 { Idle?: AWSAppMeshVirtualNode25; PerRequest?: AWSAppMeshVirtualNode25; } export interface AWSAppMeshVirtualNode35 { Idle?: AWSAppMeshVirtualNode25; } export interface AWSAppMeshVirtualNode36 { AccessLog?: AWSAppMeshVirtualNode37; } export interface AWSAppMeshVirtualNode37 { File?: AWSAppMeshVirtualNode38; } export interface AWSAppMeshVirtualNode38 { Format?: AWSAppMeshVirtualNode39; Path: string; } export interface AWSAppMeshVirtualNode39 { Json?: AWSAppMeshVirtualNode40[]; Text?: string; } export interface AWSAppMeshVirtualNode40 { Key: string; Value: string; } export interface AWSAppMeshVirtualNode41 { AWSCloudMap?: AWSAppMeshVirtualNode42; DNS?: AWSAppMeshVirtualNode44; } export interface AWSAppMeshVirtualNode42 { Attributes?: AWSAppMeshVirtualNode43[]; IpPreference?: string; NamespaceName: string; ServiceName: string; } export interface AWSAppMeshVirtualNode43 { Key: string; Value: string; } export interface AWSAppMeshVirtualNode44 { Hostname: string; IpPreference?: string; ResponseType?: string; } export interface AWSAppMeshVirtualRouter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MeshName: string; MeshOwner?: string; Spec: AWSAppMeshVirtualRouter1; Tags?: Tag[]; VirtualRouterName?: string; }; Type: 'AWS::AppMesh::VirtualRouter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppMeshVirtualRouter1 { Listeners: AWSAppMeshVirtualRouter2[]; } export interface AWSAppMeshVirtualRouter2 { PortMapping: AWSAppMeshVirtualRouter3; } export interface AWSAppMeshVirtualRouter3 { Port: number; Protocol: string; } export interface AWSAppMeshVirtualService { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MeshName: string; MeshOwner?: string; Spec: AWSAppMeshVirtualService1; Tags?: Tag[]; VirtualServiceName: string; }; Type: 'AWS::AppMesh::VirtualService'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppMeshVirtualService1 { Provider?: AWSAppMeshVirtualService2; } export interface AWSAppMeshVirtualService2 { VirtualNode?: AWSAppMeshVirtualService3; VirtualRouter?: AWSAppMeshVirtualService4; } export interface AWSAppMeshVirtualService3 { VirtualNodeName: string; } export interface AWSAppMeshVirtualService4 { VirtualRouterName: string; } export interface AWSAppRunnerObservabilityConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ObservabilityConfigurationName?: string; Tags?: Tag[]; TraceConfiguration?: AWSAppRunnerObservabilityConfiguration1; }; Type: 'AWS::AppRunner::ObservabilityConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppRunnerObservabilityConfiguration1 { Vendor: string; } export interface AWSAppRunnerService { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoScalingConfigurationArn?: string; EncryptionConfiguration?: AWSAppRunnerService1; HealthCheckConfiguration?: AWSAppRunnerService2; InstanceConfiguration?: AWSAppRunnerService3; NetworkConfiguration?: AWSAppRunnerService4; ObservabilityConfiguration?: AWSAppRunnerService7; ServiceName?: string; SourceConfiguration: AWSAppRunnerService8; Tags?: Tag[]; }; Type: 'AWS::AppRunner::Service'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppRunnerService1 { KmsKey: string; } export interface AWSAppRunnerService2 { HealthyThreshold?: number; Interval?: number; Path?: string; Protocol?: string; Timeout?: number; UnhealthyThreshold?: number; } export interface AWSAppRunnerService3 { Cpu?: string; InstanceRoleArn?: string; Memory?: string; } export interface AWSAppRunnerService4 { EgressConfiguration?: AWSAppRunnerService5; IngressConfiguration?: AWSAppRunnerService6; } export interface AWSAppRunnerService5 { EgressType: string; VpcConnectorArn?: string; } export interface AWSAppRunnerService6 { IsPubliclyAccessible: boolean; } export interface AWSAppRunnerService7 { ObservabilityConfigurationArn?: string; ObservabilityEnabled: boolean; } export interface AWSAppRunnerService8 { AuthenticationConfiguration?: AWSAppRunnerService9; AutoDeploymentsEnabled?: boolean; CodeRepository?: AWSAppRunnerService10; ImageRepository?: AWSAppRunnerService15; } export interface AWSAppRunnerService9 { AccessRoleArn?: string; ConnectionArn?: string; } export interface AWSAppRunnerService10 { CodeConfiguration?: AWSAppRunnerService11; RepositoryUrl: string; SourceCodeVersion: AWSAppRunnerService14; } export interface AWSAppRunnerService11 { CodeConfigurationValues?: AWSAppRunnerService12; ConfigurationSource: string; } export interface AWSAppRunnerService12 { BuildCommand?: string; Port?: string; Runtime: string; RuntimeEnvironmentSecrets?: AWSAppRunnerService13[]; RuntimeEnvironmentVariables?: AWSAppRunnerService13[]; StartCommand?: string; } export interface AWSAppRunnerService13 { Name?: string; Value?: string; } export interface AWSAppRunnerService14 { Type: string; Value: string; } export interface AWSAppRunnerService15 { ImageConfiguration?: AWSAppRunnerService16; ImageIdentifier: string; ImageRepositoryType: string; } export interface AWSAppRunnerService16 { Port?: string; RuntimeEnvironmentSecrets?: AWSAppRunnerService13[]; RuntimeEnvironmentVariables?: AWSAppRunnerService13[]; StartCommand?: string; } export interface AWSAppRunnerVpcConnector { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { SecurityGroups?: string[]; Subnets: string[]; Tags?: Tag[]; VpcConnectorName?: string; }; Type: 'AWS::AppRunner::VpcConnector'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppRunnerVpcIngressConnection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { IngressVpcConfiguration: AWSAppRunnerVpcIngressConnection1; ServiceArn: string; Tags?: Tag[]; VpcIngressConnectionName?: string; }; Type: 'AWS::AppRunner::VpcIngressConnection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppRunnerVpcIngressConnection1 { VpcEndpointId: string; VpcId: string; } export interface AWSAppStreamAppBlock { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; DisplayName?: string; Name: string; SetupScriptDetails: AWSAppStreamAppBlock1; SourceS3Location: AWSAppStreamAppBlock2; Tags?: Tag[]; }; Type: 'AWS::AppStream::AppBlock'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamAppBlock1 { ExecutableParameters?: string; ExecutablePath: string; ScriptS3Location: AWSAppStreamAppBlock2; TimeoutInSeconds: number; } export interface AWSAppStreamAppBlock2 { S3Bucket: string; S3Key: string; } export interface AWSAppStreamApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppBlockArn: string; AttributesToDelete?: string[]; Description?: string; DisplayName?: string; IconS3Location: AWSAppStreamApplication1; InstanceFamilies: string[]; LaunchParameters?: string; LaunchPath: string; Name: string; Platforms: string[]; Tags?: Tag[]; WorkingDirectory?: string; }; Type: 'AWS::AppStream::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamApplication1 { S3Bucket: string; S3Key: string; } export interface AWSAppStreamApplicationEntitlementAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationIdentifier: string; EntitlementName: string; StackName: string; }; Type: 'AWS::AppStream::ApplicationEntitlementAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamApplicationFleetAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationArn: string; FleetName: string; }; Type: 'AWS::AppStream::ApplicationFleetAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamDirectoryConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CertificateBasedAuthProperties?: AWSAppStreamDirectoryConfig1; DirectoryName: string; OrganizationalUnitDistinguishedNames: string[]; ServiceAccountCredentials: AWSAppStreamDirectoryConfig2; }; Type: 'AWS::AppStream::DirectoryConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamDirectoryConfig1 { CertificateAuthorityArn?: string; Status?: string; } export interface AWSAppStreamDirectoryConfig2 { AccountName: string; AccountPassword: string; } export interface AWSAppStreamEntitlement { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppVisibility: string; Attributes: AWSAppStreamEntitlement1[]; Description?: string; Name: string; StackName: string; }; Type: 'AWS::AppStream::Entitlement'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamEntitlement1 { Name: string; Value: string; } export interface AWSAppStreamFleet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ComputeCapacity?: AWSAppStreamFleet1; Description?: string; DisconnectTimeoutInSeconds?: number; DisplayName?: string; DomainJoinInfo?: AWSAppStreamFleet2; EnableDefaultInternetAccess?: boolean; FleetType?: string; IamRoleArn?: string; IdleDisconnectTimeoutInSeconds?: number; ImageArn?: string; ImageName?: string; InstanceType: string; MaxConcurrentSessions?: number; MaxUserDurationInSeconds?: number; Name: string; Platform?: string; SessionScriptS3Location?: AWSAppStreamFleet3; StreamView?: string; Tags?: Tag[]; UsbDeviceFilterStrings?: string[]; VpcConfig?: AWSAppStreamFleet4; }; Type: 'AWS::AppStream::Fleet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamFleet1 { DesiredInstances: number; } export interface AWSAppStreamFleet2 { DirectoryName?: string; OrganizationalUnitDistinguishedName?: string; } export interface AWSAppStreamFleet3 { S3Bucket: string; S3Key: string; } export interface AWSAppStreamFleet4 { SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSAppStreamImageBuilder { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessEndpoints?: AWSAppStreamImageBuilder1[]; AppstreamAgentVersion?: string; Description?: string; DisplayName?: string; DomainJoinInfo?: AWSAppStreamImageBuilder2; EnableDefaultInternetAccess?: boolean; IamRoleArn?: string; ImageArn?: string; ImageName?: string; InstanceType: string; Name: string; Tags?: Tag[]; VpcConfig?: AWSAppStreamImageBuilder3; }; Type: 'AWS::AppStream::ImageBuilder'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamImageBuilder1 { EndpointType: string; VpceId: string; } export interface AWSAppStreamImageBuilder2 { DirectoryName?: string; OrganizationalUnitDistinguishedName?: string; } export interface AWSAppStreamImageBuilder3 { SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSAppStreamStack { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AccessEndpoints?: AWSAppStreamStack1[]; ApplicationSettings?: AWSAppStreamStack2; AttributesToDelete?: string[]; DeleteStorageConnectors?: boolean; Description?: string; DisplayName?: string; EmbedHostDomains?: string[]; FeedbackURL?: string; Name?: string; RedirectURL?: string; StorageConnectors?: AWSAppStreamStack3[]; StreamingExperienceSettings?: AWSAppStreamStack4; Tags?: Tag[]; UserSettings?: AWSAppStreamStack5[]; }; Type: 'AWS::AppStream::Stack'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamStack1 { EndpointType: string; VpceId: string; } export interface AWSAppStreamStack2 { Enabled: boolean; SettingsGroup?: string; } export interface AWSAppStreamStack3 { ConnectorType: string; Domains?: string[]; ResourceIdentifier?: string; } export interface AWSAppStreamStack4 { PreferredProtocol?: string; } export interface AWSAppStreamStack5 { Action: string; Permission: string; } export interface AWSAppStreamStackFleetAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { FleetName: string; StackName: string; }; Type: 'AWS::AppStream::StackFleetAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamStackUserAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthenticationType: string; SendEmailNotification?: boolean; StackName: string; UserName: string; }; Type: 'AWS::AppStream::StackUserAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppStreamUser { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthenticationType: string; FirstName?: string; LastName?: string; MessageAction?: string; UserName: string; }; Type: 'AWS::AppStream::User'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncApiCache { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiCachingBehavior: string; ApiId: string; AtRestEncryptionEnabled?: boolean; TransitEncryptionEnabled?: boolean; Ttl: number; Type: string; }; Type: 'AWS::AppSync::ApiCache'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncApiKey { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; ApiKeyId?: string; Description?: string; Expires?: number; }; Type: 'AWS::AppSync::ApiKey'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncDataSource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; Description?: string; DynamoDBConfig?: AWSAppSyncDataSource1; ElasticsearchConfig?: AWSAppSyncDataSource3; EventBridgeConfig?: AWSAppSyncDataSource4; HttpConfig?: AWSAppSyncDataSource5; LambdaConfig?: AWSAppSyncDataSource8; Name: string; OpenSearchServiceConfig?: AWSAppSyncDataSource9; RelationalDatabaseConfig?: AWSAppSyncDataSource10; ServiceRoleArn?: string; Type: string; }; Type: 'AWS::AppSync::DataSource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncDataSource1 { AwsRegion: string; DeltaSyncConfig?: AWSAppSyncDataSource2; TableName: string; UseCallerCredentials?: boolean; Versioned?: boolean; } export interface AWSAppSyncDataSource2 { BaseTableTTL: string; DeltaSyncTableName: string; DeltaSyncTableTTL: string; } export interface AWSAppSyncDataSource3 { AwsRegion: string; Endpoint: string; } export interface AWSAppSyncDataSource4 { EventBusArn: string; } export interface AWSAppSyncDataSource5 { AuthorizationConfig?: AWSAppSyncDataSource6; Endpoint: string; } export interface AWSAppSyncDataSource6 { AuthorizationType: string; AwsIamConfig?: AWSAppSyncDataSource7; } export interface AWSAppSyncDataSource7 { SigningRegion?: string; SigningServiceName?: string; } export interface AWSAppSyncDataSource8 { LambdaFunctionArn: string; } export interface AWSAppSyncDataSource9 { AwsRegion: string; Endpoint: string; } export interface AWSAppSyncDataSource10 { RdsHttpEndpointConfig?: AWSAppSyncDataSource11; RelationalDatabaseSourceType: string; } export interface AWSAppSyncDataSource11 { AwsRegion: string; AwsSecretStoreArn: string; DatabaseName?: string; DbClusterIdentifier: string; Schema?: string; } export interface AWSAppSyncDomainName { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CertificateArn: string; Description?: string; DomainName: string; }; Type: 'AWS::AppSync::DomainName'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncDomainNameApiAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; DomainName: string; }; Type: 'AWS::AppSync::DomainNameApiAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncFunctionConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; Code?: string; CodeS3Location?: string; DataSourceName: string; Description?: string; FunctionVersion?: string; MaxBatchSize?: number; Name: string; RequestMappingTemplate?: string; RequestMappingTemplateS3Location?: string; ResponseMappingTemplate?: string; ResponseMappingTemplateS3Location?: string; Runtime?: AWSAppSyncFunctionConfiguration1; SyncConfig?: AWSAppSyncFunctionConfiguration2; }; Type: 'AWS::AppSync::FunctionConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncFunctionConfiguration1 { Name: string; RuntimeVersion: string; } export interface AWSAppSyncFunctionConfiguration2 { ConflictDetection: string; ConflictHandler?: string; LambdaConflictHandlerConfig?: AWSAppSyncFunctionConfiguration3; } export interface AWSAppSyncFunctionConfiguration3 { LambdaConflictHandlerArn?: string; } export interface AWSAppSyncGraphQLApi { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdditionalAuthenticationProviders?: AWSAppSyncGraphQLApi1[]; AuthenticationType: string; LambdaAuthorizerConfig?: AWSAppSyncGraphQLApi2; LogConfig?: AWSAppSyncGraphQLApi5; Name: string; OpenIDConnectConfig?: AWSAppSyncGraphQLApi3; Tags?: Tag[]; UserPoolConfig?: AWSAppSyncGraphQLApi6; XrayEnabled?: boolean; }; Type: 'AWS::AppSync::GraphQLApi'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncGraphQLApi1 { AuthenticationType: string; LambdaAuthorizerConfig?: AWSAppSyncGraphQLApi2; OpenIDConnectConfig?: AWSAppSyncGraphQLApi3; UserPoolConfig?: AWSAppSyncGraphQLApi4; } export interface AWSAppSyncGraphQLApi2 { AuthorizerResultTtlInSeconds?: number; AuthorizerUri?: string; IdentityValidationExpression?: string; } export interface AWSAppSyncGraphQLApi3 { AuthTTL?: number; ClientId?: string; IatTTL?: number; Issuer?: string; } export interface AWSAppSyncGraphQLApi4 { AppIdClientRegex?: string; AwsRegion?: string; UserPoolId?: string; } export interface AWSAppSyncGraphQLApi5 { CloudWatchLogsRoleArn?: string; ExcludeVerboseContent?: boolean; FieldLogLevel?: string; } export interface AWSAppSyncGraphQLApi6 { AppIdClientRegex?: string; AwsRegion?: string; DefaultAction?: string; UserPoolId?: string; } export interface AWSAppSyncGraphQLSchema { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; Definition?: string; DefinitionS3Location?: string; }; Type: 'AWS::AppSync::GraphQLSchema'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncResolver { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiId: string; CachingConfig?: AWSAppSyncResolver1; Code?: string; CodeS3Location?: string; DataSourceName?: string; FieldName: string; Kind?: string; MaxBatchSize?: number; PipelineConfig?: AWSAppSyncResolver2; RequestMappingTemplate?: string; RequestMappingTemplateS3Location?: string; ResponseMappingTemplate?: string; ResponseMappingTemplateS3Location?: string; Runtime?: AWSAppSyncResolver3; SyncConfig?: AWSAppSyncResolver4; TypeName: string; }; Type: 'AWS::AppSync::Resolver'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAppSyncResolver1 { CachingKeys?: string[]; Ttl: number; } export interface AWSAppSyncResolver2 { Functions?: string[]; } export interface AWSAppSyncResolver3 { Name: string; RuntimeVersion: string; } export interface AWSAppSyncResolver4 { ConflictDetection: string; ConflictHandler?: string; LambdaConflictHandlerConfig?: AWSAppSyncResolver5; } export interface AWSAppSyncResolver5 { LambdaConflictHandlerArn?: string; } export interface AWSApplicationAutoScalingScalableTarget { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MaxCapacity: number; MinCapacity: number; ResourceId: string; RoleARN: string; ScalableDimension: string; ScheduledActions?: AWSApplicationAutoScalingScalableTarget1[]; ServiceNamespace: string; SuspendedState?: AWSApplicationAutoScalingScalableTarget3; }; Type: 'AWS::ApplicationAutoScaling::ScalableTarget'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApplicationAutoScalingScalableTarget1 { EndTime?: string; ScalableTargetAction?: AWSApplicationAutoScalingScalableTarget2; Schedule: string; ScheduledActionName: string; StartTime?: string; Timezone?: string; } export interface AWSApplicationAutoScalingScalableTarget2 { MaxCapacity?: number; MinCapacity?: number; } export interface AWSApplicationAutoScalingScalableTarget3 { DynamicScalingInSuspended?: boolean; DynamicScalingOutSuspended?: boolean; ScheduledScalingSuspended?: boolean; } export interface AWSApplicationAutoScalingScalingPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PolicyName: string; PolicyType: string; ResourceId?: string; ScalableDimension?: string; ScalingTargetId?: string; ServiceNamespace?: string; StepScalingPolicyConfiguration?: AWSApplicationAutoScalingScalingPolicy1; TargetTrackingScalingPolicyConfiguration?: AWSApplicationAutoScalingScalingPolicy3; }; Type: 'AWS::ApplicationAutoScaling::ScalingPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApplicationAutoScalingScalingPolicy1 { AdjustmentType?: string; Cooldown?: number; MetricAggregationType?: string; MinAdjustmentMagnitude?: number; StepAdjustments?: AWSApplicationAutoScalingScalingPolicy2[]; } export interface AWSApplicationAutoScalingScalingPolicy2 { MetricIntervalLowerBound?: number; MetricIntervalUpperBound?: number; ScalingAdjustment: number; } export interface AWSApplicationAutoScalingScalingPolicy3 { CustomizedMetricSpecification?: AWSApplicationAutoScalingScalingPolicy4; DisableScaleIn?: boolean; PredefinedMetricSpecification?: AWSApplicationAutoScalingScalingPolicy6; ScaleInCooldown?: number; ScaleOutCooldown?: number; TargetValue: number; } export interface AWSApplicationAutoScalingScalingPolicy4 { Dimensions?: AWSApplicationAutoScalingScalingPolicy5[]; MetricName: string; Namespace: string; Statistic: string; Unit?: string; } export interface AWSApplicationAutoScalingScalingPolicy5 { Name: string; Value: string; } export interface AWSApplicationAutoScalingScalingPolicy6 { PredefinedMetricType: string; ResourceLabel?: string; } export interface AWSApplicationInsightsApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoConfigurationEnabled?: boolean; CWEMonitorEnabled?: boolean; ComponentMonitoringSettings?: AWSApplicationInsightsApplication1[]; CustomComponents?: AWSApplicationInsightsApplication13[]; GroupingType?: string; LogPatternSets?: AWSApplicationInsightsApplication14[]; OpsCenterEnabled?: boolean; OpsItemSNSTopicArn?: string; ResourceGroupName: string; Tags?: Tag[]; }; Type: 'AWS::ApplicationInsights::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSApplicationInsightsApplication1 { ComponentARN?: string; ComponentConfigurationMode: string; ComponentName?: string; CustomComponentConfiguration?: AWSApplicationInsightsApplication2; DefaultOverwriteComponentConfiguration?: AWSApplicationInsightsApplication2; Tier: string; } export interface AWSApplicationInsightsApplication2 { ConfigurationDetails?: AWSApplicationInsightsApplication3; SubComponentTypeConfigurations?: AWSApplicationInsightsApplication11[]; } export interface AWSApplicationInsightsApplication3 { AlarmMetrics?: AWSApplicationInsightsApplication4[]; Alarms?: AWSApplicationInsightsApplication5[]; HAClusterPrometheusExporter?: AWSApplicationInsightsApplication6; HANAPrometheusExporter?: AWSApplicationInsightsApplication7; JMXPrometheusExporter?: AWSApplicationInsightsApplication8; Logs?: AWSApplicationInsightsApplication9[]; WindowsEvents?: AWSApplicationInsightsApplication10[]; } export interface AWSApplicationInsightsApplication4 { AlarmMetricName: string; } export interface AWSApplicationInsightsApplication5 { AlarmName: string; Severity?: string; } export interface AWSApplicationInsightsApplication6 { PrometheusPort?: string; } export interface AWSApplicationInsightsApplication7 { AgreeToInstallHANADBClient: boolean; HANAPort: string; HANASID: string; HANASecretName: string; PrometheusPort?: string; } export interface AWSApplicationInsightsApplication8 { HostPort?: string; JMXURL?: string; PrometheusPort?: string; } export interface AWSApplicationInsightsApplication9 { Encoding?: string; LogGroupName?: string; LogPath?: string; LogType: string; PatternSet?: string; } export interface AWSApplicationInsightsApplication10 { EventLevels: string[]; EventName: string; LogGroupName: string; PatternSet?: string; } export interface AWSApplicationInsightsApplication11 { SubComponentConfigurationDetails: AWSApplicationInsightsApplication12; SubComponentType: string; } export interface AWSApplicationInsightsApplication12 { AlarmMetrics?: AWSApplicationInsightsApplication4[]; Logs?: AWSApplicationInsightsApplication9[]; WindowsEvents?: AWSApplicationInsightsApplication10[]; } export interface AWSApplicationInsightsApplication13 { ComponentName: string; ResourceList: string[]; } export interface AWSApplicationInsightsApplication14 { LogPatterns: AWSApplicationInsightsApplication15[]; PatternSetName: string; } export interface AWSApplicationInsightsApplication15 { Pattern: string; PatternName: string; Rank: number; } export interface AWSAthenaDataCatalog { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Parameters?: { [k: string]: unknown; }; Tags?: Tag[]; Type: string; }; Type: 'AWS::Athena::DataCatalog'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAthenaNamedQuery { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Database: string; Description?: string; Name?: string; QueryString: string; WorkGroup?: string; }; Type: 'AWS::Athena::NamedQuery'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAthenaPreparedStatement { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; QueryStatement: string; StatementName: string; WorkGroup: string; }; Type: 'AWS::Athena::PreparedStatement'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAthenaWorkGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; RecursiveDeleteOption?: boolean; State?: string; Tags?: Tag[]; WorkGroupConfiguration?: AWSAthenaWorkGroup1; }; Type: 'AWS::Athena::WorkGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAthenaWorkGroup1 { BytesScannedCutoffPerQuery?: number; EnforceWorkGroupConfiguration?: boolean; EngineVersion?: AWSAthenaWorkGroup2; PublishCloudWatchMetricsEnabled?: boolean; RequesterPaysEnabled?: boolean; ResultConfiguration?: AWSAthenaWorkGroup3; } export interface AWSAthenaWorkGroup2 { EffectiveEngineVersion?: string; SelectedEngineVersion?: string; } export interface AWSAthenaWorkGroup3 { EncryptionConfiguration?: AWSAthenaWorkGroup4; OutputLocation?: string; } export interface AWSAthenaWorkGroup4 { EncryptionOption: string; KmsKey?: string; } export interface AWSAuditManagerAssessment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AssessmentReportsDestination?: AWSAuditManagerAssessment1; AwsAccount?: AWSAuditManagerAssessment2; Delegations?: AWSAuditManagerAssessment3[]; Description?: string; FrameworkId?: string; Name?: string; Roles?: AWSAuditManagerAssessment4[]; Scope?: AWSAuditManagerAssessment5; Status?: string; Tags?: Tag[]; }; Type: 'AWS::AuditManager::Assessment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAuditManagerAssessment1 { Destination?: string; DestinationType?: string; } export interface AWSAuditManagerAssessment2 { EmailAddress?: string; Id?: string; Name?: string; } export interface AWSAuditManagerAssessment3 { AssessmentId?: string; AssessmentName?: string; Comment?: string; ControlSetId?: string; CreatedBy?: string; CreationTime?: number; Id?: string; LastUpdated?: number; RoleArn?: string; RoleType?: string; Status?: string; } export interface AWSAuditManagerAssessment4 { RoleArn?: string; RoleType?: string; } export interface AWSAuditManagerAssessment5 { AwsAccounts?: AWSAuditManagerAssessment2[]; AwsServices?: AWSAuditManagerAssessment6[]; } export interface AWSAuditManagerAssessment6 { ServiceName?: string; } export interface AWSAutoScalingAutoScalingGroup { Condition?: string; CreationPolicy?: { [k: string]: unknown; }; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoScalingGroupName?: string; AvailabilityZones?: string[]; CapacityRebalance?: boolean; Context?: string; Cooldown?: string; DefaultInstanceWarmup?: number; DesiredCapacity?: string; DesiredCapacityType?: string; HealthCheckGracePeriod?: number; HealthCheckType?: string; InstanceId?: string; LaunchConfigurationName?: string; LaunchTemplate?: AWSAutoScalingAutoScalingGroup1; LifecycleHookSpecificationList?: AWSAutoScalingAutoScalingGroup2[]; LoadBalancerNames?: string[]; MaxInstanceLifetime?: number; MaxSize: string; MetricsCollection?: AWSAutoScalingAutoScalingGroup3[]; MinSize: string; MixedInstancesPolicy?: AWSAutoScalingAutoScalingGroup4; NewInstancesProtectedFromScaleIn?: boolean; NotificationConfigurations?: AWSAutoScalingAutoScalingGroup18[]; PlacementGroup?: string; ServiceLinkedRoleARN?: string; Tags?: AWSAutoScalingAutoScalingGroup19[]; TargetGroupARNs?: string[]; TerminationPolicies?: string[]; VPCZoneIdentifier?: string[]; }; Type: 'AWS::AutoScaling::AutoScalingGroup'; UpdatePolicy?: { [k: string]: unknown; }; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAutoScalingAutoScalingGroup1 { LaunchTemplateId?: string; LaunchTemplateName?: string; Version: string; } export interface AWSAutoScalingAutoScalingGroup2 { DefaultResult?: string; HeartbeatTimeout?: number; LifecycleHookName: string; LifecycleTransition: string; NotificationMetadata?: string; NotificationTargetARN?: string; RoleARN?: string; } export interface AWSAutoScalingAutoScalingGroup3 { Granularity: string; Metrics?: string[]; } export interface AWSAutoScalingAutoScalingGroup4 { InstancesDistribution?: AWSAutoScalingAutoScalingGroup5; LaunchTemplate: AWSAutoScalingAutoScalingGroup6; } export interface AWSAutoScalingAutoScalingGroup5 { OnDemandAllocationStrategy?: string; OnDemandBaseCapacity?: number; OnDemandPercentageAboveBaseCapacity?: number; SpotAllocationStrategy?: string; SpotInstancePools?: number; SpotMaxPrice?: string; } export interface AWSAutoScalingAutoScalingGroup6 { LaunchTemplateSpecification: AWSAutoScalingAutoScalingGroup1; Overrides?: AWSAutoScalingAutoScalingGroup7[]; } export interface AWSAutoScalingAutoScalingGroup7 { InstanceRequirements?: AWSAutoScalingAutoScalingGroup8; InstanceType?: string; LaunchTemplateSpecification?: AWSAutoScalingAutoScalingGroup1; WeightedCapacity?: string; } export interface AWSAutoScalingAutoScalingGroup8 { AcceleratorCount?: AWSAutoScalingAutoScalingGroup9; AcceleratorManufacturers?: string[]; AcceleratorNames?: string[]; AcceleratorTotalMemoryMiB?: AWSAutoScalingAutoScalingGroup10; AcceleratorTypes?: string[]; AllowedInstanceTypes?: string[]; BareMetal?: string; BaselineEbsBandwidthMbps?: AWSAutoScalingAutoScalingGroup11; BurstablePerformance?: string; CpuManufacturers?: string[]; ExcludedInstanceTypes?: string[]; InstanceGenerations?: string[]; LocalStorage?: string; LocalStorageTypes?: string[]; MemoryGiBPerVCpu?: AWSAutoScalingAutoScalingGroup12; MemoryMiB?: AWSAutoScalingAutoScalingGroup13; NetworkBandwidthGbps?: AWSAutoScalingAutoScalingGroup14; NetworkInterfaceCount?: AWSAutoScalingAutoScalingGroup15; OnDemandMaxPricePercentageOverLowestPrice?: number; RequireHibernateSupport?: boolean; SpotMaxPricePercentageOverLowestPrice?: number; TotalLocalStorageGB?: AWSAutoScalingAutoScalingGroup16; VCpuCount?: AWSAutoScalingAutoScalingGroup17; } export interface AWSAutoScalingAutoScalingGroup9 { Max?: number; Min?: number; } export interface AWSAutoScalingAutoScalingGroup10 { Max?: number; Min?: number; } export interface AWSAutoScalingAutoScalingGroup11 { Max?: number; Min?: number; } export interface AWSAutoScalingAutoScalingGroup12 { Max?: number; Min?: number; } export interface AWSAutoScalingAutoScalingGroup13 { Max?: number; Min?: number; } export interface AWSAutoScalingAutoScalingGroup14 { Max?: number; Min?: number; } export interface AWSAutoScalingAutoScalingGroup15 { Max?: number; Min?: number; } export interface AWSAutoScalingAutoScalingGroup16 { Max?: number; Min?: number; } export interface AWSAutoScalingAutoScalingGroup17 { Max?: number; Min?: number; } export interface AWSAutoScalingAutoScalingGroup18 { NotificationTypes?: string[]; TopicARN: string; } export interface AWSAutoScalingAutoScalingGroup19 { Key: string; PropagateAtLaunch: boolean; Value: string; } export interface AWSAutoScalingLaunchConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssociatePublicIpAddress?: boolean; BlockDeviceMappings?: AWSAutoScalingLaunchConfiguration1[]; ClassicLinkVPCId?: string; ClassicLinkVPCSecurityGroups?: string[]; EbsOptimized?: boolean; IamInstanceProfile?: string; ImageId: string; InstanceId?: string; InstanceMonitoring?: boolean; InstanceType: string; KernelId?: string; KeyName?: string; LaunchConfigurationName?: string; MetadataOptions?: AWSAutoScalingLaunchConfiguration3; PlacementTenancy?: string; RamDiskId?: string; SecurityGroups?: string[]; SpotPrice?: string; UserData?: string; }; Type: 'AWS::AutoScaling::LaunchConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAutoScalingLaunchConfiguration1 { DeviceName: string; Ebs?: AWSAutoScalingLaunchConfiguration2; NoDevice?: boolean; VirtualName?: string; } export interface AWSAutoScalingLaunchConfiguration2 { DeleteOnTermination?: boolean; Encrypted?: boolean; Iops?: number; SnapshotId?: string; Throughput?: number; VolumeSize?: number; VolumeType?: string; } export interface AWSAutoScalingLaunchConfiguration3 { HttpEndpoint?: string; HttpPutResponseHopLimit?: number; HttpTokens?: string; } export interface AWSAutoScalingLifecycleHook { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoScalingGroupName: string; DefaultResult?: string; HeartbeatTimeout?: number; LifecycleHookName?: string; LifecycleTransition: string; NotificationMetadata?: string; NotificationTargetARN?: string; RoleARN?: string; }; Type: 'AWS::AutoScaling::LifecycleHook'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAutoScalingScalingPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdjustmentType?: string; AutoScalingGroupName: string; Cooldown?: string; EstimatedInstanceWarmup?: number; MetricAggregationType?: string; MinAdjustmentMagnitude?: number; PolicyType?: string; PredictiveScalingConfiguration?: AWSAutoScalingScalingPolicy1; ScalingAdjustment?: number; StepAdjustments?: AWSAutoScalingScalingPolicy13[]; TargetTrackingConfiguration?: AWSAutoScalingScalingPolicy14; }; Type: 'AWS::AutoScaling::ScalingPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAutoScalingScalingPolicy1 { MaxCapacityBreachBehavior?: string; MaxCapacityBuffer?: number; MetricSpecifications: AWSAutoScalingScalingPolicy2[]; Mode?: string; SchedulingBufferTime?: number; } export interface AWSAutoScalingScalingPolicy2 { CustomizedCapacityMetricSpecification?: AWSAutoScalingScalingPolicy3; CustomizedLoadMetricSpecification?: AWSAutoScalingScalingPolicy8; CustomizedScalingMetricSpecification?: AWSAutoScalingScalingPolicy9; PredefinedLoadMetricSpecification?: AWSAutoScalingScalingPolicy10; PredefinedMetricPairSpecification?: AWSAutoScalingScalingPolicy11; PredefinedScalingMetricSpecification?: AWSAutoScalingScalingPolicy12; TargetValue: number; } export interface AWSAutoScalingScalingPolicy3 { MetricDataQueries: AWSAutoScalingScalingPolicy4[]; } export interface AWSAutoScalingScalingPolicy4 { Expression?: string; Id: string; Label?: string; MetricStat?: AWSAutoScalingScalingPolicy5; ReturnData?: boolean; } export interface AWSAutoScalingScalingPolicy5 { Metric: AWSAutoScalingScalingPolicy6; Stat: string; Unit?: string; } export interface AWSAutoScalingScalingPolicy6 { Dimensions?: AWSAutoScalingScalingPolicy7[]; MetricName: string; Namespace: string; } export interface AWSAutoScalingScalingPolicy7 { Name: string; Value: string; } export interface AWSAutoScalingScalingPolicy8 { MetricDataQueries: AWSAutoScalingScalingPolicy4[]; } export interface AWSAutoScalingScalingPolicy9 { MetricDataQueries: AWSAutoScalingScalingPolicy4[]; } export interface AWSAutoScalingScalingPolicy10 { PredefinedMetricType: string; ResourceLabel?: string; } export interface AWSAutoScalingScalingPolicy11 { PredefinedMetricType: string; ResourceLabel?: string; } export interface AWSAutoScalingScalingPolicy12 { PredefinedMetricType: string; ResourceLabel?: string; } export interface AWSAutoScalingScalingPolicy13 { MetricIntervalLowerBound?: number; MetricIntervalUpperBound?: number; ScalingAdjustment: number; } export interface AWSAutoScalingScalingPolicy14 { CustomizedMetricSpecification?: AWSAutoScalingScalingPolicy15; DisableScaleIn?: boolean; PredefinedMetricSpecification?: AWSAutoScalingScalingPolicy16; TargetValue: number; } export interface AWSAutoScalingScalingPolicy15 { Dimensions?: AWSAutoScalingScalingPolicy7[]; MetricName: string; Namespace: string; Statistic: string; Unit?: string; } export interface AWSAutoScalingScalingPolicy16 { PredefinedMetricType: string; ResourceLabel?: string; } export interface AWSAutoScalingScheduledAction { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoScalingGroupName: string; DesiredCapacity?: number; EndTime?: string; MaxSize?: number; MinSize?: number; Recurrence?: string; StartTime?: string; TimeZone?: string; }; Type: 'AWS::AutoScaling::ScheduledAction'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAutoScalingWarmPool { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoScalingGroupName: string; InstanceReusePolicy?: AWSAutoScalingWarmPool1; MaxGroupPreparedCapacity?: number; MinSize?: number; PoolState?: string; }; Type: 'AWS::AutoScaling::WarmPool'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAutoScalingWarmPool1 { ReuseOnScaleIn?: boolean; } export interface AWSAutoScalingPlansScalingPlan { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationSource: AWSAutoScalingPlansScalingPlan1; ScalingInstructions: AWSAutoScalingPlansScalingPlan3[]; }; Type: 'AWS::AutoScalingPlans::ScalingPlan'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSAutoScalingPlansScalingPlan1 { CloudFormationStackARN?: string; TagFilters?: AWSAutoScalingPlansScalingPlan2[]; } export interface AWSAutoScalingPlansScalingPlan2 { Key: string; Values?: string[]; } export interface AWSAutoScalingPlansScalingPlan3 { CustomizedLoadMetricSpecification?: AWSAutoScalingPlansScalingPlan4; DisableDynamicScaling?: boolean; MaxCapacity: number; MinCapacity: number; PredefinedLoadMetricSpecification?: AWSAutoScalingPlansScalingPlan6; PredictiveScalingMaxCapacityBehavior?: string; PredictiveScalingMaxCapacityBuffer?: number; PredictiveScalingMode?: string; ResourceId: string; ScalableDimension: string; ScalingPolicyUpdateBehavior?: string; ScheduledActionBufferTime?: number; ServiceNamespace: string; TargetTrackingConfigurations: AWSAutoScalingPlansScalingPlan7[]; } export interface AWSAutoScalingPlansScalingPlan4 { Dimensions?: AWSAutoScalingPlansScalingPlan5[]; MetricName: string; Namespace: string; Statistic: string; Unit?: string; } export interface AWSAutoScalingPlansScalingPlan5 { Name: string; Value: string; } export interface AWSAutoScalingPlansScalingPlan6 { PredefinedLoadMetricType: string; ResourceLabel?: string; } export interface AWSAutoScalingPlansScalingPlan7 { CustomizedScalingMetricSpecification?: AWSAutoScalingPlansScalingPlan8; DisableScaleIn?: boolean; EstimatedInstanceWarmup?: number; PredefinedScalingMetricSpecification?: AWSAutoScalingPlansScalingPlan9; ScaleInCooldown?: number; ScaleOutCooldown?: number; TargetValue: number; } export interface AWSAutoScalingPlansScalingPlan8 { Dimensions?: AWSAutoScalingPlansScalingPlan5[]; MetricName: string; Namespace: string; Statistic: string; Unit?: string; } export interface AWSAutoScalingPlansScalingPlan9 { PredefinedScalingMetricType: string; ResourceLabel?: string; } export interface AWSBackupBackupPlan { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BackupPlan: AWSBackupBackupPlan1; BackupPlanTags?: { [k: string]: unknown; }; }; Type: 'AWS::Backup::BackupPlan'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBackupBackupPlan1 { AdvancedBackupSettings?: AWSBackupBackupPlan2[]; BackupPlanName: string; BackupPlanRule: AWSBackupBackupPlan3[]; } export interface AWSBackupBackupPlan2 { BackupOptions: { [k: string]: unknown; }; ResourceType: string; } export interface AWSBackupBackupPlan3 { CompletionWindowMinutes?: number; CopyActions?: AWSBackupBackupPlan4[]; EnableContinuousBackup?: boolean; Lifecycle?: AWSBackupBackupPlan5; RecoveryPointTags?: { [k: string]: unknown; }; RuleName: string; ScheduleExpression?: string; StartWindowMinutes?: number; TargetBackupVault: string; } export interface AWSBackupBackupPlan4 { DestinationBackupVaultArn: string; Lifecycle?: AWSBackupBackupPlan5; } export interface AWSBackupBackupPlan5 { DeleteAfterDays?: number; MoveToColdStorageAfterDays?: number; } export interface AWSBackupBackupSelection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BackupPlanId: string; BackupSelection: AWSBackupBackupSelection1; }; Type: 'AWS::Backup::BackupSelection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBackupBackupSelection1 { Conditions?: AWSBackupBackupSelection2; IamRoleArn: string; ListOfTags?: AWSBackupBackupSelection4[]; NotResources?: string[]; Resources?: string[]; SelectionName: string; } export interface AWSBackupBackupSelection2 { StringEquals?: AWSBackupBackupSelection3[]; StringLike?: AWSBackupBackupSelection3[]; StringNotEquals?: AWSBackupBackupSelection3[]; StringNotLike?: AWSBackupBackupSelection3[]; } export interface AWSBackupBackupSelection3 { ConditionKey?: string; ConditionValue?: string; } export interface AWSBackupBackupSelection4 { ConditionKey: string; ConditionType: string; ConditionValue: string; } export interface AWSBackupBackupVault { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessPolicy?: { [k: string]: unknown; }; BackupVaultName: string; BackupVaultTags?: { [k: string]: unknown; }; EncryptionKeyArn?: string; LockConfiguration?: AWSBackupBackupVault1; Notifications?: AWSBackupBackupVault2; }; Type: 'AWS::Backup::BackupVault'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBackupBackupVault1 { ChangeableForDays?: number; MaxRetentionDays?: number; MinRetentionDays: number; } export interface AWSBackupBackupVault2 { BackupVaultEvents: string[]; SNSTopicArn: string; } export interface AWSBackupFramework { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { FrameworkControls: AWSBackupFramework1[]; FrameworkDescription?: string; FrameworkName?: string; FrameworkTags?: Tag[]; }; Type: 'AWS::Backup::Framework'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBackupFramework1 { ControlInputParameters?: AWSBackupFramework2[]; ControlName: string; ControlScope?: AWSBackupFramework3; } export interface AWSBackupFramework2 { ParameterName: string; ParameterValue: string; } export interface AWSBackupFramework3 { ComplianceResourceIds?: string[]; ComplianceResourceTypes?: string[]; Tags?: Tag[]; } export interface AWSBackupReportPlan { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ReportDeliveryChannel: AWSBackupReportPlan1; ReportPlanDescription?: string; ReportPlanName?: string; ReportPlanTags?: Tag[]; ReportSetting: AWSBackupReportPlan2; }; Type: 'AWS::Backup::ReportPlan'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBackupReportPlan1 { Formats?: string[]; S3BucketName: string; S3KeyPrefix?: string; } export interface AWSBackupReportPlan2 { Accounts?: string[]; FrameworkArns?: string[]; OrganizationUnits?: string[]; Regions?: string[]; ReportTemplate: string; } export interface AWSBatchComputeEnvironment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ComputeEnvironmentName?: string; ComputeResources?: AWSBatchComputeEnvironment1; EksConfiguration?: AWSBatchComputeEnvironment4; ReplaceComputeEnvironment?: boolean; ServiceRole?: string; State?: string; Tags?: { [k: string]: unknown; }; Type: string; UnmanagedvCpus?: number; UpdatePolicy?: AWSBatchComputeEnvironment5; }; Type: 'AWS::Batch::ComputeEnvironment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBatchComputeEnvironment1 { AllocationStrategy?: string; BidPercentage?: number; DesiredvCpus?: number; Ec2Configuration?: AWSBatchComputeEnvironment2[]; Ec2KeyPair?: string; ImageId?: string; InstanceRole?: string; InstanceTypes?: string[]; LaunchTemplate?: AWSBatchComputeEnvironment3; MaxvCpus: number; MinvCpus?: number; PlacementGroup?: string; SecurityGroupIds?: string[]; SpotIamFleetRole?: string; Subnets: string[]; Tags?: { [k: string]: unknown; }; Type: string; UpdateToLatestImageVersion?: boolean; } export interface AWSBatchComputeEnvironment2 { ImageIdOverride?: string; ImageKubernetesVersion?: string; ImageType: string; } export interface AWSBatchComputeEnvironment3 { LaunchTemplateId?: string; LaunchTemplateName?: string; Version?: string; } export interface AWSBatchComputeEnvironment4 { EksClusterArn: string; KubernetesNamespace: string; } export interface AWSBatchComputeEnvironment5 { JobExecutionTimeoutMinutes?: number; TerminateJobsOnUpdate?: boolean; } export interface AWSBatchJobDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ContainerProperties?: AWSBatchJobDefinition1; EksProperties?: AWSBatchJobDefinition17; JobDefinitionName?: string; NodeProperties?: AWSBatchJobDefinition27; Parameters?: { [k: string]: unknown; }; PlatformCapabilities?: string[]; PropagateTags?: boolean; RetryStrategy?: AWSBatchJobDefinition29; SchedulingPriority?: number; Tags?: { [k: string]: unknown; }; Timeout?: AWSBatchJobDefinition31; Type: string; }; Type: 'AWS::Batch::JobDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBatchJobDefinition1 { Command?: string[]; Environment?: AWSBatchJobDefinition2[]; ExecutionRoleArn?: string; FargatePlatformConfiguration?: AWSBatchJobDefinition3; Image: string; InstanceType?: string; JobRoleArn?: string; LinuxParameters?: AWSBatchJobDefinition4; LogConfiguration?: AWSBatchJobDefinition7; Memory?: number; MountPoints?: AWSBatchJobDefinition9[]; NetworkConfiguration?: AWSBatchJobDefinition10; Privileged?: boolean; ReadonlyRootFilesystem?: boolean; ResourceRequirements?: AWSBatchJobDefinition11[]; Secrets?: AWSBatchJobDefinition8[]; Ulimits?: AWSBatchJobDefinition12[]; User?: string; Vcpus?: number; Volumes?: AWSBatchJobDefinition13[]; } export interface AWSBatchJobDefinition2 { Name?: string; Value?: string; } export interface AWSBatchJobDefinition3 { PlatformVersion?: string; } export interface AWSBatchJobDefinition4 { Devices?: AWSBatchJobDefinition5[]; InitProcessEnabled?: boolean; MaxSwap?: number; SharedMemorySize?: number; Swappiness?: number; Tmpfs?: AWSBatchJobDefinition6[]; } export interface AWSBatchJobDefinition5 { ContainerPath?: string; HostPath?: string; Permissions?: string[]; } export interface AWSBatchJobDefinition6 { ContainerPath: string; MountOptions?: string[]; Size: number; } export interface AWSBatchJobDefinition7 { LogDriver: string; Options?: { [k: string]: unknown; }; SecretOptions?: AWSBatchJobDefinition8[]; } export interface AWSBatchJobDefinition8 { Name: string; ValueFrom: string; } export interface AWSBatchJobDefinition9 { ContainerPath?: string; ReadOnly?: boolean; SourceVolume?: string; } export interface AWSBatchJobDefinition10 { AssignPublicIp?: string; } export interface AWSBatchJobDefinition11 { Type?: string; Value?: string; } export interface AWSBatchJobDefinition12 { HardLimit: number; Name: string; SoftLimit: number; } export interface AWSBatchJobDefinition13 { EfsVolumeConfiguration?: AWSBatchJobDefinition14; Host?: AWSBatchJobDefinition16; Name?: string; } export interface AWSBatchJobDefinition14 { AuthorizationConfig?: AWSBatchJobDefinition15; FileSystemId: string; RootDirectory?: string; TransitEncryption?: string; TransitEncryptionPort?: number; } export interface AWSBatchJobDefinition15 { AccessPointId?: string; Iam?: string; } export interface AWSBatchJobDefinition16 { SourcePath?: string; } export interface AWSBatchJobDefinition17 { PodProperties?: AWSBatchJobDefinition18; } export interface AWSBatchJobDefinition18 { Containers?: AWSBatchJobDefinition19[]; DnsPolicy?: string; HostNetwork?: boolean; ServiceAccountName?: string; Volumes?: AWSBatchJobDefinition24[]; } export interface AWSBatchJobDefinition19 { Args?: string[]; Command?: string[]; Env?: AWSBatchJobDefinition20[]; Image: string; ImagePullPolicy?: string; Name?: string; Resources?: AWSBatchJobDefinition21; SecurityContext?: AWSBatchJobDefinition22; VolumeMounts?: AWSBatchJobDefinition23[]; } export interface AWSBatchJobDefinition20 { Name: string; Value?: string; } export interface AWSBatchJobDefinition21 { Limits?: { [k: string]: unknown; }; Requests?: { [k: string]: unknown; }; } export interface AWSBatchJobDefinition22 { Privileged?: boolean; ReadOnlyRootFilesystem?: boolean; RunAsGroup?: number; RunAsNonRoot?: boolean; RunAsUser?: number; } export interface AWSBatchJobDefinition23 { MountPath?: string; Name?: string; ReadOnly?: boolean; } export interface AWSBatchJobDefinition24 { EmptyDir?: AWSBatchJobDefinition25; HostPath?: AWSBatchJobDefinition26; Name: string; Secret?: AWSBatchJobDefinition8; } export interface AWSBatchJobDefinition25 { Medium?: string; SizeLimit?: string; } export interface AWSBatchJobDefinition26 { Path?: string; } export interface AWSBatchJobDefinition27 { MainNode: number; NodeRangeProperties: AWSBatchJobDefinition28[]; NumNodes: number; } export interface AWSBatchJobDefinition28 { Container?: AWSBatchJobDefinition1; TargetNodes: string; } export interface AWSBatchJobDefinition29 { Attempts?: number; EvaluateOnExit?: AWSBatchJobDefinition30[]; } export interface AWSBatchJobDefinition30 { Action: string; OnExitCode?: string; OnReason?: string; OnStatusReason?: string; } export interface AWSBatchJobDefinition31 { AttemptDurationSeconds?: number; } export interface AWSBatchJobQueue { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ComputeEnvironmentOrder: AWSBatchJobQueue1[]; JobQueueName?: string; Priority: number; SchedulingPolicyArn?: string; State?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Batch::JobQueue'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBatchJobQueue1 { ComputeEnvironment: string; Order: number; } export interface AWSBatchSchedulingPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { FairsharePolicy?: AWSBatchSchedulingPolicy1; Name?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Batch::SchedulingPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBatchSchedulingPolicy1 { ComputeReservation?: number; ShareDecaySeconds?: number; ShareDistribution?: AWSBatchSchedulingPolicy2[]; } export interface AWSBatchSchedulingPolicy2 { ShareIdentifier?: string; WeightFactor?: number; } export interface AWSBillingConductorBillingGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccountGrouping: AWSBillingConductorBillingGroup1; ComputationPreference: AWSBillingConductorBillingGroup2; Description?: string; Name: string; PrimaryAccountId: string; Tags?: Tag[]; }; Type: 'AWS::BillingConductor::BillingGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBillingConductorBillingGroup1 { LinkedAccountIds: string[]; } export interface AWSBillingConductorBillingGroup2 { PricingPlanArn: string; } export interface AWSBillingConductorCustomLineItem { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BillingGroupArn: string; BillingPeriodRange?: AWSBillingConductorCustomLineItem1; CustomLineItemChargeDetails?: AWSBillingConductorCustomLineItem2; Description?: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::BillingConductor::CustomLineItem'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBillingConductorCustomLineItem1 { ExclusiveEndBillingPeriod?: string; InclusiveStartBillingPeriod?: string; } export interface AWSBillingConductorCustomLineItem2 { Flat?: AWSBillingConductorCustomLineItem3; Percentage?: AWSBillingConductorCustomLineItem4; Type: string; } export interface AWSBillingConductorCustomLineItem3 { ChargeValue: number; } export interface AWSBillingConductorCustomLineItem4 { ChildAssociatedResources?: string[]; PercentageValue: number; } export interface AWSBillingConductorPricingPlan { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; PricingRuleArns?: string[]; Tags?: Tag[]; }; Type: 'AWS::BillingConductor::PricingPlan'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBillingConductorPricingRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BillingEntity?: string; Description?: string; ModifierPercentage?: number; Name: string; Scope: string; Service?: string; Tags?: Tag[]; Tiering?: AWSBillingConductorPricingRule1; Type: string; }; Type: 'AWS::BillingConductor::PricingRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBillingConductorPricingRule1 { FreeTier?: AWSBillingConductorPricingRule2; } export interface AWSBillingConductorPricingRule2 { Activated: boolean; } export interface AWSBudgetsBudget { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Budget: AWSBudgetsBudget1; NotificationsWithSubscribers?: AWSBudgetsBudget7[]; }; Type: 'AWS::Budgets::Budget'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBudgetsBudget1 { AutoAdjustData?: AWSBudgetsBudget2; BudgetLimit?: AWSBudgetsBudget4; BudgetName?: string; BudgetType: string; CostFilters?: { [k: string]: unknown; }; CostTypes?: AWSBudgetsBudget5; PlannedBudgetLimits?: { [k: string]: unknown; }; TimePeriod?: AWSBudgetsBudget6; TimeUnit: string; } export interface AWSBudgetsBudget2 { AutoAdjustType: string; HistoricalOptions?: AWSBudgetsBudget3; } export interface AWSBudgetsBudget3 { BudgetAdjustmentPeriod: number; } export interface AWSBudgetsBudget4 { Amount: number; Unit: string; } export interface AWSBudgetsBudget5 { IncludeCredit?: boolean; IncludeDiscount?: boolean; IncludeOtherSubscription?: boolean; IncludeRecurring?: boolean; IncludeRefund?: boolean; IncludeSubscription?: boolean; IncludeSupport?: boolean; IncludeTax?: boolean; IncludeUpfront?: boolean; UseAmortized?: boolean; UseBlended?: boolean; } export interface AWSBudgetsBudget6 { End?: string; Start?: string; } export interface AWSBudgetsBudget7 { Notification: AWSBudgetsBudget8; Subscribers: AWSBudgetsBudget9[]; } export interface AWSBudgetsBudget8 { ComparisonOperator: string; NotificationType: string; Threshold: number; ThresholdType?: string; } export interface AWSBudgetsBudget9 { Address: string; SubscriptionType: string; } export interface AWSBudgetsBudgetsAction { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ActionThreshold: AWSBudgetsBudgetsAction1; ActionType: string; ApprovalModel?: string; BudgetName: string; Definition: AWSBudgetsBudgetsAction2; ExecutionRoleArn: string; NotificationType: string; Subscribers: AWSBudgetsBudgetsAction6[]; }; Type: 'AWS::Budgets::BudgetsAction'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSBudgetsBudgetsAction1 { Type: string; Value: number; } export interface AWSBudgetsBudgetsAction2 { IamActionDefinition?: AWSBudgetsBudgetsAction3; ScpActionDefinition?: AWSBudgetsBudgetsAction4; SsmActionDefinition?: AWSBudgetsBudgetsAction5; } export interface AWSBudgetsBudgetsAction3 { Groups?: string[]; PolicyArn: string; Roles?: string[]; Users?: string[]; } export interface AWSBudgetsBudgetsAction4 { PolicyId: string; TargetIds: string[]; } export interface AWSBudgetsBudgetsAction5 { InstanceIds: string[]; Region: string; Subtype: string; } export interface AWSBudgetsBudgetsAction6 { Address: string; Type: string; } export interface AWSCEAnomalyMonitor { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MonitorDimension?: string; MonitorName: string; MonitorSpecification?: string; MonitorType: string; ResourceTags?: AWSCEAnomalyMonitor1[]; }; Type: 'AWS::CE::AnomalyMonitor'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCEAnomalyMonitor1 { Key: string; Value: string; } export interface AWSCEAnomalySubscription { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Frequency: string; MonitorArnList: string[]; ResourceTags?: AWSCEAnomalySubscription1[]; Subscribers: AWSCEAnomalySubscription2[]; SubscriptionName: string; Threshold: number; }; Type: 'AWS::CE::AnomalySubscription'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCEAnomalySubscription1 { Key: string; Value: string; } export interface AWSCEAnomalySubscription2 { Address: string; Status?: string; Type: string; } export interface AWSCECostCategory { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DefaultValue?: string; Name: string; RuleVersion: string; Rules: string; SplitChargeRules?: string; }; Type: 'AWS::CE::CostCategory'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCURReportDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdditionalArtifacts?: string[]; AdditionalSchemaElements?: string[]; BillingViewArn?: string; Compression: string; Format: string; RefreshClosedReports: boolean; ReportName: string; ReportVersioning: string; S3Bucket: string; S3Prefix: string; S3Region: string; TimeUnit: string; }; Type: 'AWS::CUR::ReportDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCassandraKeyspace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { KeyspaceName?: string; Tags?: Tag[]; }; Type: 'AWS::Cassandra::Keyspace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCassandraTable { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BillingMode?: AWSCassandraTable1; ClusteringKeyColumns?: AWSCassandraTable3[]; DefaultTimeToLive?: number; EncryptionSpecification?: AWSCassandraTable5; KeyspaceName: string; PartitionKeyColumns: AWSCassandraTable4[]; PointInTimeRecoveryEnabled?: boolean; RegularColumns?: AWSCassandraTable4[]; TableName?: string; Tags?: Tag[]; }; Type: 'AWS::Cassandra::Table'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCassandraTable1 { Mode: string; ProvisionedThroughput?: AWSCassandraTable2; } export interface AWSCassandraTable2 { ReadCapacityUnits: number; WriteCapacityUnits: number; } export interface AWSCassandraTable3 { Column: AWSCassandraTable4; OrderBy?: string; } export interface AWSCassandraTable4 { ColumnName: string; ColumnType: string; } export interface AWSCassandraTable5 { EncryptionType: string; KmsKeyIdentifier?: string; } export interface AWSCertificateManagerAccount { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ExpiryEventsConfiguration: AWSCertificateManagerAccount1; }; Type: 'AWS::CertificateManager::Account'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCertificateManagerAccount1 { DaysBeforeExpiry?: number; } export interface AWSCertificateManagerCertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CertificateAuthorityArn?: string; CertificateTransparencyLoggingPreference?: string; DomainName: string; DomainValidationOptions?: AWSCertificateManagerCertificate1[]; SubjectAlternativeNames?: string[]; Tags?: Tag[]; ValidationMethod?: string; }; Type: 'AWS::CertificateManager::Certificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCertificateManagerCertificate1 { DomainName: string; HostedZoneId?: string; ValidationDomain?: string; } export interface AWSChatbotSlackChannelConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConfigurationName: string; GuardrailPolicies?: string[]; IamRoleArn: string; LoggingLevel?: string; SlackChannelId: string; SlackWorkspaceId: string; SnsTopicArns?: string[]; UserRoleRequired?: boolean; }; Type: 'AWS::Chatbot::SlackChannelConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloud9EnvironmentEC2 { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutomaticStopTimeMinutes?: number; ConnectionType?: string; Description?: string; ImageId?: string; InstanceType: string; Name?: string; OwnerArn?: string; Repositories?: AWSCloud9EnvironmentEC21[]; SubnetId?: string; Tags?: Tag[]; }; Type: 'AWS::Cloud9::EnvironmentEC2'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloud9EnvironmentEC21 { PathComponent: string; RepositoryUrl: string; } export interface AWSCloudFormationCustomResource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ServiceToken: string; }; Type: 'AWS::CloudFormation::CustomResource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationHookDefaultVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { TypeName?: string; TypeVersionArn?: string; VersionId?: string; }; Type: 'AWS::CloudFormation::HookDefaultVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationHookTypeConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Configuration: string; ConfigurationAlias?: string; TypeArn?: string; TypeName?: string; }; Type: 'AWS::CloudFormation::HookTypeConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationHookVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ExecutionRoleArn?: string; LoggingConfig?: AWSCloudFormationHookVersion1; SchemaHandlerPackage: string; TypeName: string; }; Type: 'AWS::CloudFormation::HookVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationHookVersion1 { LogGroupName?: string; LogRoleArn?: string; } export interface AWSCloudFormationMacro { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; FunctionName: string; LogGroupName?: string; LogRoleARN?: string; Name: string; }; Type: 'AWS::CloudFormation::Macro'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationModuleDefaultVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Arn?: string; ModuleName?: string; VersionId?: string; }; Type: 'AWS::CloudFormation::ModuleDefaultVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationModuleVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ModuleName: string; ModulePackage: string; }; Type: 'AWS::CloudFormation::ModuleVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationPublicTypeVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Arn?: string; LogDeliveryBucket?: string; PublicVersionNumber?: string; Type?: string; TypeName?: string; }; Type: 'AWS::CloudFormation::PublicTypeVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationPublisher { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptTermsAndConditions: boolean; ConnectionArn?: string; }; Type: 'AWS::CloudFormation::Publisher'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationResourceDefaultVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { TypeName?: string; TypeVersionArn?: string; VersionId?: string; }; Type: 'AWS::CloudFormation::ResourceDefaultVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationResourceVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ExecutionRoleArn?: string; LoggingConfig?: AWSCloudFormationResourceVersion1; SchemaHandlerPackage: string; TypeName: string; }; Type: 'AWS::CloudFormation::ResourceVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationResourceVersion1 { LogGroupName?: string; LogRoleArn?: string; } export interface AWSCloudFormationStack { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { NotificationARNs?: string[]; Parameters?: { [k: string]: unknown; }; Tags?: Tag[]; TemplateURL: string; TimeoutInMinutes?: number; }; Type: 'AWS::CloudFormation::Stack'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationStackSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdministrationRoleARN?: string; AutoDeployment?: AWSCloudFormationStackSet1; CallAs?: string; Capabilities?: string[]; Description?: string; ExecutionRoleName?: string; ManagedExecution?: AWSCloudFormationStackSet2; OperationPreferences?: AWSCloudFormationStackSet3; Parameters?: AWSCloudFormationStackSet4[]; PermissionModel: string; StackInstancesGroup?: AWSCloudFormationStackSet5[]; StackSetName: string; Tags?: Tag[]; TemplateBody?: string; TemplateURL?: string; }; Type: 'AWS::CloudFormation::StackSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationStackSet1 { Enabled?: boolean; RetainStacksOnAccountRemoval?: boolean; } export interface AWSCloudFormationStackSet2 { Active?: boolean; } export interface AWSCloudFormationStackSet3 { FailureToleranceCount?: number; FailureTolerancePercentage?: number; MaxConcurrentCount?: number; MaxConcurrentPercentage?: number; RegionConcurrencyType?: string; RegionOrder?: string[]; } export interface AWSCloudFormationStackSet4 { ParameterKey: string; ParameterValue: string; } export interface AWSCloudFormationStackSet5 { DeploymentTargets: AWSCloudFormationStackSet6; ParameterOverrides?: AWSCloudFormationStackSet4[]; Regions: string[]; } export interface AWSCloudFormationStackSet6 { AccountFilterType?: string; Accounts?: string[]; OrganizationalUnitIds?: string[]; } export interface AWSCloudFormationTypeActivation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AutoUpdate?: boolean; ExecutionRoleArn?: string; LoggingConfig?: AWSCloudFormationTypeActivation1; MajorVersion?: string; PublicTypeArn?: string; PublisherId?: string; Type?: string; TypeName?: string; TypeNameAlias?: string; VersionBump?: string; }; Type: 'AWS::CloudFormation::TypeActivation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationTypeActivation1 { LogGroupName?: string; LogRoleArn?: string; } export interface AWSCloudFormationWaitCondition { Condition?: string; CreationPolicy?: { [k: string]: unknown; }; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Count?: number; Handle?: string; Timeout?: string; }; Type: 'AWS::CloudFormation::WaitCondition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFormationWaitConditionHandle { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: {}; Type: 'AWS::CloudFormation::WaitConditionHandle'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontCachePolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CachePolicyConfig: AWSCloudFrontCachePolicy1; }; Type: 'AWS::CloudFront::CachePolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontCachePolicy1 { Comment?: string; DefaultTTL: number; MaxTTL: number; MinTTL: number; Name: string; ParametersInCacheKeyAndForwardedToOrigin: AWSCloudFrontCachePolicy2; } export interface AWSCloudFrontCachePolicy2 { CookiesConfig: AWSCloudFrontCachePolicy3; EnableAcceptEncodingBrotli?: boolean; EnableAcceptEncodingGzip: boolean; HeadersConfig: AWSCloudFrontCachePolicy4; QueryStringsConfig: AWSCloudFrontCachePolicy5; } export interface AWSCloudFrontCachePolicy3 { CookieBehavior: string; Cookies?: string[]; } export interface AWSCloudFrontCachePolicy4 { HeaderBehavior: string; Headers?: string[]; } export interface AWSCloudFrontCachePolicy5 { QueryStringBehavior: string; QueryStrings?: string[]; } export interface AWSCloudFrontCloudFrontOriginAccessIdentity { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CloudFrontOriginAccessIdentityConfig: AWSCloudFrontCloudFrontOriginAccessIdentity1; }; Type: 'AWS::CloudFront::CloudFrontOriginAccessIdentity'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontCloudFrontOriginAccessIdentity1 { Comment: string; } export interface AWSCloudFrontContinuousDeploymentPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ContinuousDeploymentPolicyConfig: AWSCloudFrontContinuousDeploymentPolicy1; }; Type: 'AWS::CloudFront::ContinuousDeploymentPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontContinuousDeploymentPolicy1 { Enabled: boolean; StagingDistributionDnsNames: string[]; TrafficConfig?: AWSCloudFrontContinuousDeploymentPolicy2; } export interface AWSCloudFrontContinuousDeploymentPolicy2 { SingleHeaderConfig?: AWSCloudFrontContinuousDeploymentPolicy3; SingleWeightConfig?: AWSCloudFrontContinuousDeploymentPolicy4; Type: string; } export interface AWSCloudFrontContinuousDeploymentPolicy3 { Header: string; Value: string; } export interface AWSCloudFrontContinuousDeploymentPolicy4 { SessionStickinessConfig?: AWSCloudFrontContinuousDeploymentPolicy5; Weight: number; } export interface AWSCloudFrontContinuousDeploymentPolicy5 { IdleTTL: number; MaximumTTL: number; } export interface AWSCloudFrontDistribution { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DistributionConfig: AWSCloudFrontDistribution1; Tags?: Tag[]; }; Type: 'AWS::CloudFront::Distribution'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontDistribution1 { Aliases?: string[]; CNAMEs?: string[]; CacheBehaviors?: AWSCloudFrontDistribution2[]; Comment?: string; ContinuousDeploymentPolicyId?: string; CustomErrorResponses?: AWSCloudFrontDistribution7[]; CustomOrigin?: AWSCloudFrontDistribution8; DefaultCacheBehavior: AWSCloudFrontDistribution9; DefaultRootObject?: string; Enabled: boolean; HttpVersion?: string; IPV6Enabled?: boolean; Logging?: AWSCloudFrontDistribution10; OriginGroups?: AWSCloudFrontDistribution11; Origins?: AWSCloudFrontDistribution17[]; PriceClass?: string; Restrictions?: AWSCloudFrontDistribution22; S3Origin?: AWSCloudFrontDistribution24; Staging?: boolean; ViewerCertificate?: AWSCloudFrontDistribution25; WebACLId?: string; } export interface AWSCloudFrontDistribution2 { AllowedMethods?: string[]; CachePolicyId?: string; CachedMethods?: string[]; Compress?: boolean; DefaultTTL?: number; FieldLevelEncryptionId?: string; ForwardedValues?: AWSCloudFrontDistribution3; FunctionAssociations?: AWSCloudFrontDistribution5[]; LambdaFunctionAssociations?: AWSCloudFrontDistribution6[]; MaxTTL?: number; MinTTL?: number; OriginRequestPolicyId?: string; PathPattern: string; RealtimeLogConfigArn?: string; ResponseHeadersPolicyId?: string; SmoothStreaming?: boolean; TargetOriginId: string; TrustedKeyGroups?: string[]; TrustedSigners?: string[]; ViewerProtocolPolicy: string; } export interface AWSCloudFrontDistribution3 { Cookies?: AWSCloudFrontDistribution4; Headers?: string[]; QueryString: boolean; QueryStringCacheKeys?: string[]; } export interface AWSCloudFrontDistribution4 { Forward: string; WhitelistedNames?: string[]; } export interface AWSCloudFrontDistribution5 { EventType?: string; FunctionARN?: string; } export interface AWSCloudFrontDistribution6 { EventType?: string; IncludeBody?: boolean; LambdaFunctionARN?: string; } export interface AWSCloudFrontDistribution7 { ErrorCachingMinTTL?: number; ErrorCode: number; ResponseCode?: number; ResponsePagePath?: string; } export interface AWSCloudFrontDistribution8 { DNSName: string; HTTPPort?: number; HTTPSPort?: number; OriginProtocolPolicy: string; OriginSSLProtocols: string[]; } export interface AWSCloudFrontDistribution9 { AllowedMethods?: string[]; CachePolicyId?: string; CachedMethods?: string[]; Compress?: boolean; DefaultTTL?: number; FieldLevelEncryptionId?: string; ForwardedValues?: AWSCloudFrontDistribution3; FunctionAssociations?: AWSCloudFrontDistribution5[]; LambdaFunctionAssociations?: AWSCloudFrontDistribution6[]; MaxTTL?: number; MinTTL?: number; OriginRequestPolicyId?: string; RealtimeLogConfigArn?: string; ResponseHeadersPolicyId?: string; SmoothStreaming?: boolean; TargetOriginId: string; TrustedKeyGroups?: string[]; TrustedSigners?: string[]; ViewerProtocolPolicy: string; } export interface AWSCloudFrontDistribution10 { Bucket: string; IncludeCookies?: boolean; Prefix?: string; } export interface AWSCloudFrontDistribution11 { Items?: AWSCloudFrontDistribution12[]; Quantity: number; } export interface AWSCloudFrontDistribution12 { FailoverCriteria: AWSCloudFrontDistribution13; Id: string; Members: AWSCloudFrontDistribution15; } export interface AWSCloudFrontDistribution13 { StatusCodes: AWSCloudFrontDistribution14; } export interface AWSCloudFrontDistribution14 { Items: number[]; Quantity: number; } export interface AWSCloudFrontDistribution15 { Items: AWSCloudFrontDistribution16[]; Quantity: number; } export interface AWSCloudFrontDistribution16 { OriginId: string; } export interface AWSCloudFrontDistribution17 { ConnectionAttempts?: number; ConnectionTimeout?: number; CustomOriginConfig?: AWSCloudFrontDistribution18; DomainName: string; Id: string; OriginAccessControlId?: string; OriginCustomHeaders?: AWSCloudFrontDistribution19[]; OriginPath?: string; OriginShield?: AWSCloudFrontDistribution20; S3OriginConfig?: AWSCloudFrontDistribution21; } export interface AWSCloudFrontDistribution18 { HTTPPort?: number; HTTPSPort?: number; OriginKeepaliveTimeout?: number; OriginProtocolPolicy: string; OriginReadTimeout?: number; OriginSSLProtocols?: string[]; } export interface AWSCloudFrontDistribution19 { HeaderName: string; HeaderValue: string; } export interface AWSCloudFrontDistribution20 { Enabled?: boolean; OriginShieldRegion?: string; } export interface AWSCloudFrontDistribution21 { OriginAccessIdentity?: string; } export interface AWSCloudFrontDistribution22 { GeoRestriction: AWSCloudFrontDistribution23; } export interface AWSCloudFrontDistribution23 { Locations?: string[]; RestrictionType: string; } export interface AWSCloudFrontDistribution24 { DNSName: string; OriginAccessIdentity?: string; } export interface AWSCloudFrontDistribution25 { AcmCertificateArn?: string; CloudFrontDefaultCertificate?: boolean; IamCertificateId?: string; MinimumProtocolVersion?: string; SslSupportMethod?: string; } export interface AWSCloudFrontFunction { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoPublish?: boolean; FunctionCode: string; FunctionConfig: AWSCloudFrontFunction1; FunctionMetadata?: AWSCloudFrontFunction2; Name: string; }; Type: 'AWS::CloudFront::Function'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontFunction1 { Comment: string; Runtime: string; } export interface AWSCloudFrontFunction2 { FunctionARN?: string; } export interface AWSCloudFrontKeyGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { KeyGroupConfig: AWSCloudFrontKeyGroup1; }; Type: 'AWS::CloudFront::KeyGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontKeyGroup1 { Comment?: string; Items: string[]; Name: string; } export interface AWSCloudFrontMonitoringSubscription { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DistributionId: string; MonitoringSubscription: AWSCloudFrontMonitoringSubscription1; }; Type: 'AWS::CloudFront::MonitoringSubscription'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontMonitoringSubscription1 { RealtimeMetricsSubscriptionConfig?: AWSCloudFrontMonitoringSubscription2; } export interface AWSCloudFrontMonitoringSubscription2 { RealtimeMetricsSubscriptionStatus: string; } export interface AWSCloudFrontOriginAccessControl { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { OriginAccessControlConfig: AWSCloudFrontOriginAccessControl1; }; Type: 'AWS::CloudFront::OriginAccessControl'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontOriginAccessControl1 { Description?: string; Name: string; OriginAccessControlOriginType: string; SigningBehavior: string; SigningProtocol: string; } export interface AWSCloudFrontOriginRequestPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { OriginRequestPolicyConfig: AWSCloudFrontOriginRequestPolicy1; }; Type: 'AWS::CloudFront::OriginRequestPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontOriginRequestPolicy1 { Comment?: string; CookiesConfig: AWSCloudFrontOriginRequestPolicy2; HeadersConfig: AWSCloudFrontOriginRequestPolicy3; Name: string; QueryStringsConfig: AWSCloudFrontOriginRequestPolicy4; } export interface AWSCloudFrontOriginRequestPolicy2 { CookieBehavior: string; Cookies?: string[]; } export interface AWSCloudFrontOriginRequestPolicy3 { HeaderBehavior: string; Headers?: string[]; } export interface AWSCloudFrontOriginRequestPolicy4 { QueryStringBehavior: string; QueryStrings?: string[]; } export interface AWSCloudFrontPublicKey { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PublicKeyConfig: AWSCloudFrontPublicKey1; }; Type: 'AWS::CloudFront::PublicKey'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontPublicKey1 { CallerReference: string; Comment?: string; EncodedKey: string; Name: string; } export interface AWSCloudFrontRealtimeLogConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EndPoints: AWSCloudFrontRealtimeLogConfig1[]; Fields: string[]; Name: string; SamplingRate: number; }; Type: 'AWS::CloudFront::RealtimeLogConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontRealtimeLogConfig1 { KinesisStreamConfig: AWSCloudFrontRealtimeLogConfig2; StreamType: string; } export interface AWSCloudFrontRealtimeLogConfig2 { RoleArn: string; StreamArn: string; } export interface AWSCloudFrontResponseHeadersPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResponseHeadersPolicyConfig: AWSCloudFrontResponseHeadersPolicy1; }; Type: 'AWS::CloudFront::ResponseHeadersPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontResponseHeadersPolicy1 { Comment?: string; CorsConfig?: AWSCloudFrontResponseHeadersPolicy2; CustomHeadersConfig?: AWSCloudFrontResponseHeadersPolicy7; Name: string; RemoveHeadersConfig?: AWSCloudFrontResponseHeadersPolicy9; SecurityHeadersConfig?: AWSCloudFrontResponseHeadersPolicy11; ServerTimingHeadersConfig?: AWSCloudFrontResponseHeadersPolicy18; } export interface AWSCloudFrontResponseHeadersPolicy2 { AccessControlAllowCredentials: boolean; AccessControlAllowHeaders: AWSCloudFrontResponseHeadersPolicy3; AccessControlAllowMethods: AWSCloudFrontResponseHeadersPolicy4; AccessControlAllowOrigins: AWSCloudFrontResponseHeadersPolicy5; AccessControlExposeHeaders?: AWSCloudFrontResponseHeadersPolicy6; AccessControlMaxAgeSec?: number; OriginOverride: boolean; } export interface AWSCloudFrontResponseHeadersPolicy3 { Items: string[]; } export interface AWSCloudFrontResponseHeadersPolicy4 { Items: string[]; } export interface AWSCloudFrontResponseHeadersPolicy5 { Items: string[]; } export interface AWSCloudFrontResponseHeadersPolicy6 { Items: string[]; } export interface AWSCloudFrontResponseHeadersPolicy7 { Items: AWSCloudFrontResponseHeadersPolicy8[]; } export interface AWSCloudFrontResponseHeadersPolicy8 { Header: string; Override: boolean; Value: string; } export interface AWSCloudFrontResponseHeadersPolicy9 { Items: AWSCloudFrontResponseHeadersPolicy10[]; } export interface AWSCloudFrontResponseHeadersPolicy10 { Header: string; } export interface AWSCloudFrontResponseHeadersPolicy11 { ContentSecurityPolicy?: AWSCloudFrontResponseHeadersPolicy12; ContentTypeOptions?: AWSCloudFrontResponseHeadersPolicy13; FrameOptions?: AWSCloudFrontResponseHeadersPolicy14; ReferrerPolicy?: AWSCloudFrontResponseHeadersPolicy15; StrictTransportSecurity?: AWSCloudFrontResponseHeadersPolicy16; XSSProtection?: AWSCloudFrontResponseHeadersPolicy17; } export interface AWSCloudFrontResponseHeadersPolicy12 { ContentSecurityPolicy: string; Override: boolean; } export interface AWSCloudFrontResponseHeadersPolicy13 { Override: boolean; } export interface AWSCloudFrontResponseHeadersPolicy14 { FrameOption: string; Override: boolean; } export interface AWSCloudFrontResponseHeadersPolicy15 { Override: boolean; ReferrerPolicy: string; } export interface AWSCloudFrontResponseHeadersPolicy16 { AccessControlMaxAgeSec: number; IncludeSubdomains?: boolean; Override: boolean; Preload?: boolean; } export interface AWSCloudFrontResponseHeadersPolicy17 { ModeBlock?: boolean; Override: boolean; Protection: boolean; ReportUri?: string; } export interface AWSCloudFrontResponseHeadersPolicy18 { Enabled: boolean; SamplingRate?: number; } export interface AWSCloudFrontStreamingDistribution { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { StreamingDistributionConfig: AWSCloudFrontStreamingDistribution1; Tags: Tag[]; }; Type: 'AWS::CloudFront::StreamingDistribution'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudFrontStreamingDistribution1 { Aliases?: string[]; Comment: string; Enabled: boolean; Logging?: AWSCloudFrontStreamingDistribution2; PriceClass?: string; S3Origin: AWSCloudFrontStreamingDistribution3; TrustedSigners: AWSCloudFrontStreamingDistribution4; } export interface AWSCloudFrontStreamingDistribution2 { Bucket: string; Enabled: boolean; Prefix: string; } export interface AWSCloudFrontStreamingDistribution3 { DomainName: string; OriginAccessIdentity: string; } export interface AWSCloudFrontStreamingDistribution4 { AwsAccountNumbers?: string[]; Enabled: boolean; } export interface AWSCloudTrailEventDataStore { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AdvancedEventSelectors?: AWSCloudTrailEventDataStore1[]; KmsKeyId?: string; MultiRegionEnabled?: boolean; Name?: string; OrganizationEnabled?: boolean; RetentionPeriod?: number; Tags?: Tag[]; TerminationProtectionEnabled?: boolean; }; Type: 'AWS::CloudTrail::EventDataStore'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudTrailEventDataStore1 { FieldSelectors: AWSCloudTrailEventDataStore2[]; Name?: string; } export interface AWSCloudTrailEventDataStore2 { EndsWith?: string[]; Equals?: string[]; Field: string; NotEndsWith?: string[]; NotEquals?: string[]; NotStartsWith?: string[]; StartsWith?: string[]; } export interface AWSCloudTrailTrail { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CloudWatchLogsLogGroupArn?: string; CloudWatchLogsRoleArn?: string; EnableLogFileValidation?: boolean; EventSelectors?: AWSCloudTrailTrail1[]; IncludeGlobalServiceEvents?: boolean; InsightSelectors?: AWSCloudTrailTrail3[]; IsLogging: boolean; IsMultiRegionTrail?: boolean; IsOrganizationTrail?: boolean; KMSKeyId?: string; S3BucketName: string; S3KeyPrefix?: string; SnsTopicName?: string; Tags?: Tag[]; TrailName?: string; }; Type: 'AWS::CloudTrail::Trail'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudTrailTrail1 { DataResources?: AWSCloudTrailTrail2[]; ExcludeManagementEventSources?: string[]; IncludeManagementEvents?: boolean; ReadWriteType?: string; } export interface AWSCloudTrailTrail2 { Type: string; Values?: string[]; } export interface AWSCloudTrailTrail3 { InsightType?: string; } export interface AWSCloudWatchAlarm { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ActionsEnabled?: boolean; AlarmActions?: string[]; AlarmDescription?: string; AlarmName?: string; ComparisonOperator: string; DatapointsToAlarm?: number; Dimensions?: AWSCloudWatchAlarm1[]; EvaluateLowSampleCountPercentile?: string; EvaluationPeriods: number; ExtendedStatistic?: string; InsufficientDataActions?: string[]; MetricName?: string; Metrics?: AWSCloudWatchAlarm2[]; Namespace?: string; OKActions?: string[]; Period?: number; Statistic?: string; Threshold?: number; ThresholdMetricId?: string; TreatMissingData?: string; Unit?: string; }; Type: 'AWS::CloudWatch::Alarm'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudWatchAlarm1 { Name: string; Value: string; } export interface AWSCloudWatchAlarm2 { AccountId?: string; Expression?: string; Id: string; Label?: string; MetricStat?: AWSCloudWatchAlarm3; Period?: number; ReturnData?: boolean; } export interface AWSCloudWatchAlarm3 { Metric: AWSCloudWatchAlarm4; Period: number; Stat: string; Unit?: string; } export interface AWSCloudWatchAlarm4 { Dimensions?: AWSCloudWatchAlarm1[]; MetricName?: string; Namespace?: string; } export interface AWSCloudWatchAnomalyDetector { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Configuration?: AWSCloudWatchAnomalyDetector1; Dimensions?: AWSCloudWatchAnomalyDetector3[]; MetricMathAnomalyDetector?: AWSCloudWatchAnomalyDetector4; MetricName?: string; Namespace?: string; SingleMetricAnomalyDetector?: AWSCloudWatchAnomalyDetector8; Stat?: string; }; Type: 'AWS::CloudWatch::AnomalyDetector'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudWatchAnomalyDetector1 { ExcludedTimeRanges?: AWSCloudWatchAnomalyDetector2[]; MetricTimeZone?: string; } export interface AWSCloudWatchAnomalyDetector2 { EndTime: string; StartTime: string; } export interface AWSCloudWatchAnomalyDetector3 { Name: string; Value: string; } export interface AWSCloudWatchAnomalyDetector4 { MetricDataQueries?: AWSCloudWatchAnomalyDetector5[]; } export interface AWSCloudWatchAnomalyDetector5 { AccountId?: string; Expression?: string; Id: string; Label?: string; MetricStat?: AWSCloudWatchAnomalyDetector6; Period?: number; ReturnData?: boolean; } export interface AWSCloudWatchAnomalyDetector6 { Metric: AWSCloudWatchAnomalyDetector7; Period: number; Stat: string; Unit?: string; } export interface AWSCloudWatchAnomalyDetector7 { Dimensions?: AWSCloudWatchAnomalyDetector3[]; MetricName: string; Namespace: string; } export interface AWSCloudWatchAnomalyDetector8 { Dimensions?: AWSCloudWatchAnomalyDetector3[]; MetricName?: string; Namespace?: string; Stat?: string; } export interface AWSCloudWatchCompositeAlarm { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ActionsEnabled?: boolean; ActionsSuppressor?: string; ActionsSuppressorExtensionPeriod?: number; ActionsSuppressorWaitPeriod?: number; AlarmActions?: string[]; AlarmDescription?: string; AlarmName?: string; AlarmRule: string; InsufficientDataActions?: string[]; OKActions?: string[]; }; Type: 'AWS::CloudWatch::CompositeAlarm'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudWatchDashboard { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DashboardBody: string; DashboardName?: string; }; Type: 'AWS::CloudWatch::Dashboard'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudWatchInsightRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { RuleBody: string; RuleName: string; RuleState: string; Tags?: AWSCloudWatchInsightRule1; }; Type: 'AWS::CloudWatch::InsightRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudWatchInsightRule1 {} export interface AWSCloudWatchMetricStream { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ExcludeFilters?: AWSCloudWatchMetricStream1[]; FirehoseArn: string; IncludeFilters?: AWSCloudWatchMetricStream1[]; Name?: string; OutputFormat: string; RoleArn: string; StatisticsConfigurations?: AWSCloudWatchMetricStream2[]; Tags?: Tag[]; }; Type: 'AWS::CloudWatch::MetricStream'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCloudWatchMetricStream1 { Namespace: string; } export interface AWSCloudWatchMetricStream2 { AdditionalStatistics: string[]; IncludeMetrics: AWSCloudWatchMetricStream3[]; } export interface AWSCloudWatchMetricStream3 { MetricName: string; Namespace: string; } export interface AWSCodeArtifactDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DomainName: string; EncryptionKey?: string; PermissionsPolicyDocument?: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::CodeArtifact::Domain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeArtifactRepository { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; DomainName: string; DomainOwner?: string; ExternalConnections?: string[]; PermissionsPolicyDocument?: { [k: string]: unknown; }; RepositoryName: string; Tags?: Tag[]; Upstreams?: string[]; }; Type: 'AWS::CodeArtifact::Repository'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeBuildProject { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Artifacts: AWSCodeBuildProject1; BadgeEnabled?: boolean; BuildBatchConfig?: AWSCodeBuildProject2; Cache?: AWSCodeBuildProject4; ConcurrentBuildLimit?: number; Description?: string; EncryptionKey?: string; Environment: AWSCodeBuildProject5; FileSystemLocations?: AWSCodeBuildProject8[]; LogsConfig?: AWSCodeBuildProject9; Name?: string; QueuedTimeoutInMinutes?: number; ResourceAccessRole?: string; SecondaryArtifacts?: AWSCodeBuildProject1[]; SecondarySourceVersions?: AWSCodeBuildProject12[]; SecondarySources?: AWSCodeBuildProject13[]; ServiceRole: string; Source: AWSCodeBuildProject13; SourceVersion?: string; Tags?: Tag[]; TimeoutInMinutes?: number; Triggers?: AWSCodeBuildProject17; Visibility?: string; VpcConfig?: AWSCodeBuildProject19; }; Type: 'AWS::CodeBuild::Project'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeBuildProject1 { ArtifactIdentifier?: string; EncryptionDisabled?: boolean; Location?: string; Name?: string; NamespaceType?: string; OverrideArtifactName?: boolean; Packaging?: string; Path?: string; Type: string; } export interface AWSCodeBuildProject2 { BatchReportMode?: string; CombineArtifacts?: boolean; Restrictions?: AWSCodeBuildProject3; ServiceRole?: string; TimeoutInMins?: number; } export interface AWSCodeBuildProject3 { ComputeTypesAllowed?: string[]; MaximumBuildsAllowed?: number; } export interface AWSCodeBuildProject4 { Location?: string; Modes?: string[]; Type: string; } export interface AWSCodeBuildProject5 { Certificate?: string; ComputeType: string; EnvironmentVariables?: AWSCodeBuildProject6[]; Image: string; ImagePullCredentialsType?: string; PrivilegedMode?: boolean; RegistryCredential?: AWSCodeBuildProject7; Type: string; } export interface AWSCodeBuildProject6 { Name: string; Type?: string; Value: string; } export interface AWSCodeBuildProject7 { Credential: string; CredentialProvider: string; } export interface AWSCodeBuildProject8 { Identifier: string; Location: string; MountOptions?: string; MountPoint: string; Type: string; } export interface AWSCodeBuildProject9 { CloudWatchLogs?: AWSCodeBuildProject10; S3Logs?: AWSCodeBuildProject11; } export interface AWSCodeBuildProject10 { GroupName?: string; Status: string; StreamName?: string; } export interface AWSCodeBuildProject11 { EncryptionDisabled?: boolean; Location?: string; Status: string; } export interface AWSCodeBuildProject12 { SourceIdentifier: string; SourceVersion?: string; } export interface AWSCodeBuildProject13 { Auth?: AWSCodeBuildProject14; BuildSpec?: string; BuildStatusConfig?: AWSCodeBuildProject15; GitCloneDepth?: number; GitSubmodulesConfig?: AWSCodeBuildProject16; InsecureSsl?: boolean; Location?: string; ReportBuildStatus?: boolean; SourceIdentifier?: string; Type: string; } export interface AWSCodeBuildProject14 { Resource?: string; Type: string; } export interface AWSCodeBuildProject15 { Context?: string; TargetUrl?: string; } export interface AWSCodeBuildProject16 { FetchSubmodules: boolean; } export interface AWSCodeBuildProject17 { BuildType?: string; FilterGroups?: AWSCodeBuildProject18[]; Webhook?: boolean; } export interface AWSCodeBuildProject18 {} export interface AWSCodeBuildProject19 { SecurityGroupIds?: string[]; Subnets?: string[]; VpcId?: string; } export interface AWSCodeBuildReportGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeleteReports?: boolean; ExportConfig: AWSCodeBuildReportGroup1; Name?: string; Tags?: Tag[]; Type: string; }; Type: 'AWS::CodeBuild::ReportGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeBuildReportGroup1 { ExportConfigType: string; S3Destination?: AWSCodeBuildReportGroup2; } export interface AWSCodeBuildReportGroup2 { Bucket: string; BucketOwner?: string; EncryptionDisabled?: boolean; EncryptionKey?: string; Packaging?: string; Path?: string; } export interface AWSCodeBuildSourceCredential { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthType: string; ServerType: string; Token: string; Username?: string; }; Type: 'AWS::CodeBuild::SourceCredential'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeCommitRepository { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Code?: AWSCodeCommitRepository1; RepositoryDescription?: string; RepositoryName: string; Tags?: Tag[]; Triggers?: AWSCodeCommitRepository3[]; }; Type: 'AWS::CodeCommit::Repository'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeCommitRepository1 { BranchName?: string; S3: AWSCodeCommitRepository2; } export interface AWSCodeCommitRepository2 { Bucket: string; Key: string; ObjectVersion?: string; } export interface AWSCodeCommitRepository3 { Branches?: string[]; CustomData?: string; DestinationArn: string; Events: string[]; Name: string; } export interface AWSCodeDeployApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ApplicationName?: string; ComputePlatform?: string; Tags?: Tag[]; }; Type: 'AWS::CodeDeploy::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeDeployDeploymentConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ComputePlatform?: string; DeploymentConfigName?: string; MinimumHealthyHosts?: AWSCodeDeployDeploymentConfig1; TrafficRoutingConfig?: AWSCodeDeployDeploymentConfig2; }; Type: 'AWS::CodeDeploy::DeploymentConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeDeployDeploymentConfig1 { Type: string; Value: number; } export interface AWSCodeDeployDeploymentConfig2 { TimeBasedCanary?: AWSCodeDeployDeploymentConfig3; TimeBasedLinear?: AWSCodeDeployDeploymentConfig4; Type: string; } export interface AWSCodeDeployDeploymentConfig3 { CanaryInterval: number; CanaryPercentage: number; } export interface AWSCodeDeployDeploymentConfig4 { LinearInterval: number; LinearPercentage: number; } export interface AWSCodeDeployDeploymentGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AlarmConfiguration?: AWSCodeDeployDeploymentGroup1; ApplicationName: string; AutoRollbackConfiguration?: AWSCodeDeployDeploymentGroup3; AutoScalingGroups?: string[]; BlueGreenDeploymentConfiguration?: AWSCodeDeployDeploymentGroup4; Deployment?: AWSCodeDeployDeploymentGroup8; DeploymentConfigName?: string; DeploymentGroupName?: string; DeploymentStyle?: AWSCodeDeployDeploymentGroup12; ECSServices?: AWSCodeDeployDeploymentGroup13[]; Ec2TagFilters?: AWSCodeDeployDeploymentGroup14[]; Ec2TagSet?: AWSCodeDeployDeploymentGroup15; LoadBalancerInfo?: AWSCodeDeployDeploymentGroup17; OnPremisesInstanceTagFilters?: AWSCodeDeployDeploymentGroup22[]; OnPremisesTagSet?: AWSCodeDeployDeploymentGroup23; OutdatedInstancesStrategy?: string; ServiceRoleArn: string; Tags?: Tag[]; TriggerConfigurations?: AWSCodeDeployDeploymentGroup25[]; }; Type: 'AWS::CodeDeploy::DeploymentGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeDeployDeploymentGroup1 { Alarms?: AWSCodeDeployDeploymentGroup2[]; Enabled?: boolean; IgnorePollAlarmFailure?: boolean; } export interface AWSCodeDeployDeploymentGroup2 { Name?: string; } export interface AWSCodeDeployDeploymentGroup3 { Enabled?: boolean; Events?: string[]; } export interface AWSCodeDeployDeploymentGroup4 { DeploymentReadyOption?: AWSCodeDeployDeploymentGroup5; GreenFleetProvisioningOption?: AWSCodeDeployDeploymentGroup6; TerminateBlueInstancesOnDeploymentSuccess?: AWSCodeDeployDeploymentGroup7; } export interface AWSCodeDeployDeploymentGroup5 { ActionOnTimeout?: string; WaitTimeInMinutes?: number; } export interface AWSCodeDeployDeploymentGroup6 { Action?: string; } export interface AWSCodeDeployDeploymentGroup7 { Action?: string; TerminationWaitTimeInMinutes?: number; } export interface AWSCodeDeployDeploymentGroup8 { Description?: string; IgnoreApplicationStopFailures?: boolean; Revision: AWSCodeDeployDeploymentGroup9; } export interface AWSCodeDeployDeploymentGroup9 { GitHubLocation?: AWSCodeDeployDeploymentGroup10; RevisionType?: string; S3Location?: AWSCodeDeployDeploymentGroup11; } export interface AWSCodeDeployDeploymentGroup10 { CommitId: string; Repository: string; } export interface AWSCodeDeployDeploymentGroup11 { Bucket: string; BundleType?: string; ETag?: string; Key: string; Version?: string; } export interface AWSCodeDeployDeploymentGroup12 { DeploymentOption?: string; DeploymentType?: string; } export interface AWSCodeDeployDeploymentGroup13 { ClusterName: string; ServiceName: string; } export interface AWSCodeDeployDeploymentGroup14 { Key?: string; Type?: string; Value?: string; } export interface AWSCodeDeployDeploymentGroup15 { Ec2TagSetList?: AWSCodeDeployDeploymentGroup16[]; } export interface AWSCodeDeployDeploymentGroup16 { Ec2TagGroup?: AWSCodeDeployDeploymentGroup14[]; } export interface AWSCodeDeployDeploymentGroup17 { ElbInfoList?: AWSCodeDeployDeploymentGroup18[]; TargetGroupInfoList?: AWSCodeDeployDeploymentGroup19[]; TargetGroupPairInfoList?: AWSCodeDeployDeploymentGroup20[]; } export interface AWSCodeDeployDeploymentGroup18 { Name?: string; } export interface AWSCodeDeployDeploymentGroup19 { Name?: string; } export interface AWSCodeDeployDeploymentGroup20 { ProdTrafficRoute?: AWSCodeDeployDeploymentGroup21; TargetGroups?: AWSCodeDeployDeploymentGroup19[]; TestTrafficRoute?: AWSCodeDeployDeploymentGroup21; } export interface AWSCodeDeployDeploymentGroup21 { ListenerArns?: string[]; } export interface AWSCodeDeployDeploymentGroup22 { Key?: string; Type?: string; Value?: string; } export interface AWSCodeDeployDeploymentGroup23 { OnPremisesTagSetList?: AWSCodeDeployDeploymentGroup24[]; } export interface AWSCodeDeployDeploymentGroup24 { OnPremisesTagGroup?: AWSCodeDeployDeploymentGroup22[]; } export interface AWSCodeDeployDeploymentGroup25 { TriggerEvents?: string[]; TriggerName?: string; TriggerTargetArn?: string; } export interface AWSCodeGuruProfilerProfilingGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AgentPermissions?: AWSCodeGuruProfilerProfilingGroup1; AnomalyDetectionNotificationConfiguration?: AWSCodeGuruProfilerProfilingGroup2[]; ComputePlatform?: string; ProfilingGroupName: string; Tags?: Tag[]; }; Type: 'AWS::CodeGuruProfiler::ProfilingGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeGuruProfilerProfilingGroup1 { Principals: string[]; } export interface AWSCodeGuruProfilerProfilingGroup2 { channelId?: string; channelUri: string; } export interface AWSCodeGuruReviewerRepositoryAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BucketName?: string; ConnectionArn?: string; Name: string; Owner?: string; Tags?: Tag[]; Type: string; }; Type: 'AWS::CodeGuruReviewer::RepositoryAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodePipelineCustomActionType { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Category: string; ConfigurationProperties?: AWSCodePipelineCustomActionType1[]; InputArtifactDetails: AWSCodePipelineCustomActionType2; OutputArtifactDetails: AWSCodePipelineCustomActionType2; Provider: string; Settings?: AWSCodePipelineCustomActionType3; Tags?: Tag[]; Version: string; }; Type: 'AWS::CodePipeline::CustomActionType'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodePipelineCustomActionType1 { Description?: string; Key: boolean; Name: string; Queryable?: boolean; Required: boolean; Secret: boolean; Type?: string; } export interface AWSCodePipelineCustomActionType2 { MaximumCount: number; MinimumCount: number; } export interface AWSCodePipelineCustomActionType3 { EntityUrlTemplate?: string; ExecutionUrlTemplate?: string; RevisionUrlTemplate?: string; ThirdPartyConfigurationUrl?: string; } export interface AWSCodePipelinePipeline { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ArtifactStore?: AWSCodePipelinePipeline1; ArtifactStores?: AWSCodePipelinePipeline3[]; DisableInboundStageTransitions?: AWSCodePipelinePipeline4[]; Name?: string; RestartExecutionOnUpdate?: boolean; RoleArn: string; Stages: AWSCodePipelinePipeline5[]; Tags?: Tag[]; }; Type: 'AWS::CodePipeline::Pipeline'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodePipelinePipeline1 { EncryptionKey?: AWSCodePipelinePipeline2; Location: string; Type: string; } export interface AWSCodePipelinePipeline2 { Id: string; Type: string; } export interface AWSCodePipelinePipeline3 { ArtifactStore: AWSCodePipelinePipeline1; Region: string; } export interface AWSCodePipelinePipeline4 { Reason: string; StageName: string; } export interface AWSCodePipelinePipeline5 { Actions: AWSCodePipelinePipeline6[]; Blockers?: AWSCodePipelinePipeline10[]; Name: string; } export interface AWSCodePipelinePipeline6 { ActionTypeId: AWSCodePipelinePipeline7; Configuration?: { [k: string]: unknown; }; InputArtifacts?: AWSCodePipelinePipeline8[]; Name: string; Namespace?: string; OutputArtifacts?: AWSCodePipelinePipeline9[]; Region?: string; RoleArn?: string; RunOrder?: number; } export interface AWSCodePipelinePipeline7 { Category: string; Owner: string; Provider: string; Version: string; } export interface AWSCodePipelinePipeline8 { Name: string; } export interface AWSCodePipelinePipeline9 { Name: string; } export interface AWSCodePipelinePipeline10 { Name: string; Type: string; } export interface AWSCodePipelineWebhook { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Authentication: string; AuthenticationConfiguration: AWSCodePipelineWebhook1; Filters: AWSCodePipelineWebhook2[]; Name?: string; RegisterWithThirdParty?: boolean; TargetAction: string; TargetPipeline: string; TargetPipelineVersion: number; }; Type: 'AWS::CodePipeline::Webhook'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodePipelineWebhook1 { AllowedIPRange?: string; SecretToken?: string; } export interface AWSCodePipelineWebhook2 { JsonPath: string; MatchEquals?: string; } export interface AWSCodeStarGitHubRepository { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Code?: AWSCodeStarGitHubRepository1; ConnectionArn?: string; EnableIssues?: boolean; IsPrivate?: boolean; RepositoryAccessToken?: string; RepositoryDescription?: string; RepositoryName: string; RepositoryOwner: string; }; Type: 'AWS::CodeStar::GitHubRepository'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeStarGitHubRepository1 { S3: AWSCodeStarGitHubRepository2; } export interface AWSCodeStarGitHubRepository2 { Bucket: string; Key: string; ObjectVersion?: string; } export interface AWSCodeStarConnectionsConnection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectionName: string; HostArn?: string; ProviderType?: string; Tags?: Tag[]; }; Type: 'AWS::CodeStarConnections::Connection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeStarNotificationsNotificationRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CreatedBy?: string; DetailType: string; EventTypeId?: string; EventTypeIds: string[]; Name: string; Resource: string; Status?: string; Tags?: { [k: string]: unknown; }; TargetAddress?: string; Targets: AWSCodeStarNotificationsNotificationRule1[]; }; Type: 'AWS::CodeStarNotifications::NotificationRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCodeStarNotificationsNotificationRule1 { TargetAddress: string; TargetType: string; } export interface AWSCognitoIdentityPool { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowClassicFlow?: boolean; AllowUnauthenticatedIdentities: boolean; CognitoEvents?: { [k: string]: unknown; }; CognitoIdentityProviders?: AWSCognitoIdentityPool1[]; CognitoStreams?: AWSCognitoIdentityPool2; DeveloperProviderName?: string; IdentityPoolName?: string; OpenIdConnectProviderARNs?: string[]; PushSync?: AWSCognitoIdentityPool3; SamlProviderARNs?: string[]; SupportedLoginProviders?: { [k: string]: unknown; }; }; Type: 'AWS::Cognito::IdentityPool'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoIdentityPool1 { ClientId?: string; ProviderName?: string; ServerSideTokenCheck?: boolean; } export interface AWSCognitoIdentityPool2 { RoleArn?: string; StreamName?: string; StreamingStatus?: string; } export interface AWSCognitoIdentityPool3 { ApplicationArns?: string[]; RoleArn?: string; } export interface AWSCognitoIdentityPoolRoleAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { IdentityPoolId: string; RoleMappings?: { [k: string]: unknown; }; Roles?: { [k: string]: unknown; }; }; Type: 'AWS::Cognito::IdentityPoolRoleAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPool { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AccountRecoverySetting?: AWSCognitoUserPool1; AdminCreateUserConfig?: AWSCognitoUserPool3; AliasAttributes?: string[]; AutoVerifiedAttributes?: string[]; DeletionProtection?: string; DeviceConfiguration?: AWSCognitoUserPool5; EmailConfiguration?: AWSCognitoUserPool6; EmailVerificationMessage?: string; EmailVerificationSubject?: string; EnabledMfas?: string[]; LambdaConfig?: AWSCognitoUserPool7; MfaConfiguration?: string; Policies?: AWSCognitoUserPool10; Schema?: AWSCognitoUserPool12[]; SmsAuthenticationMessage?: string; SmsConfiguration?: AWSCognitoUserPool15; SmsVerificationMessage?: string; UserAttributeUpdateSettings?: AWSCognitoUserPool16; UserPoolAddOns?: AWSCognitoUserPool17; UserPoolName?: string; UserPoolTags?: { [k: string]: unknown; }; UsernameAttributes?: string[]; UsernameConfiguration?: AWSCognitoUserPool18; VerificationMessageTemplate?: AWSCognitoUserPool19; }; Type: 'AWS::Cognito::UserPool'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPool1 { RecoveryMechanisms?: AWSCognitoUserPool2[]; } export interface AWSCognitoUserPool2 { Name?: string; Priority?: number; } export interface AWSCognitoUserPool3 { AllowAdminCreateUserOnly?: boolean; InviteMessageTemplate?: AWSCognitoUserPool4; UnusedAccountValidityDays?: number; } export interface AWSCognitoUserPool4 { EmailMessage?: string; EmailSubject?: string; SMSMessage?: string; } export interface AWSCognitoUserPool5 { ChallengeRequiredOnNewDevice?: boolean; DeviceOnlyRememberedOnUserPrompt?: boolean; } export interface AWSCognitoUserPool6 { ConfigurationSet?: string; EmailSendingAccount?: string; From?: string; ReplyToEmailAddress?: string; SourceArn?: string; } export interface AWSCognitoUserPool7 { CreateAuthChallenge?: string; CustomEmailSender?: AWSCognitoUserPool8; CustomMessage?: string; CustomSMSSender?: AWSCognitoUserPool9; DefineAuthChallenge?: string; KMSKeyID?: string; PostAuthentication?: string; PostConfirmation?: string; PreAuthentication?: string; PreSignUp?: string; PreTokenGeneration?: string; UserMigration?: string; VerifyAuthChallengeResponse?: string; } export interface AWSCognitoUserPool8 { LambdaArn?: string; LambdaVersion?: string; } export interface AWSCognitoUserPool9 { LambdaArn?: string; LambdaVersion?: string; } export interface AWSCognitoUserPool10 { PasswordPolicy?: AWSCognitoUserPool11; } export interface AWSCognitoUserPool11 { MinimumLength?: number; RequireLowercase?: boolean; RequireNumbers?: boolean; RequireSymbols?: boolean; RequireUppercase?: boolean; TemporaryPasswordValidityDays?: number; } export interface AWSCognitoUserPool12 { AttributeDataType?: string; DeveloperOnlyAttribute?: boolean; Mutable?: boolean; Name?: string; NumberAttributeConstraints?: AWSCognitoUserPool13; Required?: boolean; StringAttributeConstraints?: AWSCognitoUserPool14; } export interface AWSCognitoUserPool13 { MaxValue?: string; MinValue?: string; } export interface AWSCognitoUserPool14 { MaxLength?: string; MinLength?: string; } export interface AWSCognitoUserPool15 { ExternalId?: string; SnsCallerArn?: string; SnsRegion?: string; } export interface AWSCognitoUserPool16 { AttributesRequireVerificationBeforeUpdate: string[]; } export interface AWSCognitoUserPool17 { AdvancedSecurityMode?: string; } export interface AWSCognitoUserPool18 { CaseSensitive?: boolean; } export interface AWSCognitoUserPool19 { DefaultEmailOption?: string; EmailMessage?: string; EmailMessageByLink?: string; EmailSubject?: string; EmailSubjectByLink?: string; SmsMessage?: string; } export interface AWSCognitoUserPoolClient { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessTokenValidity?: number; AllowedOAuthFlows?: string[]; AllowedOAuthFlowsUserPoolClient?: boolean; AllowedOAuthScopes?: string[]; AnalyticsConfiguration?: AWSCognitoUserPoolClient1; AuthSessionValidity?: number; CallbackURLs?: string[]; ClientName?: string; DefaultRedirectURI?: string; EnablePropagateAdditionalUserContextData?: boolean; EnableTokenRevocation?: boolean; ExplicitAuthFlows?: string[]; GenerateSecret?: boolean; IdTokenValidity?: number; LogoutURLs?: string[]; PreventUserExistenceErrors?: string; ReadAttributes?: string[]; RefreshTokenValidity?: number; SupportedIdentityProviders?: string[]; TokenValidityUnits?: AWSCognitoUserPoolClient2; UserPoolId: string; WriteAttributes?: string[]; }; Type: 'AWS::Cognito::UserPoolClient'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPoolClient1 { ApplicationArn?: string; ApplicationId?: string; ExternalId?: string; RoleArn?: string; UserDataShared?: boolean; } export interface AWSCognitoUserPoolClient2 { AccessToken?: string; IdToken?: string; RefreshToken?: string; } export interface AWSCognitoUserPoolDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CustomDomainConfig?: AWSCognitoUserPoolDomain1; Domain: string; UserPoolId: string; }; Type: 'AWS::Cognito::UserPoolDomain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPoolDomain1 { CertificateArn?: string; } export interface AWSCognitoUserPoolGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; GroupName?: string; Precedence?: number; RoleArn?: string; UserPoolId: string; }; Type: 'AWS::Cognito::UserPoolGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPoolIdentityProvider { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AttributeMapping?: { [k: string]: unknown; }; IdpIdentifiers?: string[]; ProviderDetails?: { [k: string]: unknown; }; ProviderName: string; ProviderType: string; UserPoolId: string; }; Type: 'AWS::Cognito::UserPoolIdentityProvider'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPoolResourceServer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Identifier: string; Name: string; Scopes?: AWSCognitoUserPoolResourceServer1[]; UserPoolId: string; }; Type: 'AWS::Cognito::UserPoolResourceServer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPoolResourceServer1 { ScopeDescription: string; ScopeName: string; } export interface AWSCognitoUserPoolRiskConfigurationAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccountTakeoverRiskConfiguration?: AWSCognitoUserPoolRiskConfigurationAttachment1; ClientId: string; CompromisedCredentialsRiskConfiguration?: AWSCognitoUserPoolRiskConfigurationAttachment6; RiskExceptionConfiguration?: AWSCognitoUserPoolRiskConfigurationAttachment8; UserPoolId: string; }; Type: 'AWS::Cognito::UserPoolRiskConfigurationAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPoolRiskConfigurationAttachment1 { Actions: AWSCognitoUserPoolRiskConfigurationAttachment2; NotifyConfiguration?: AWSCognitoUserPoolRiskConfigurationAttachment4; } export interface AWSCognitoUserPoolRiskConfigurationAttachment2 { HighAction?: AWSCognitoUserPoolRiskConfigurationAttachment3; LowAction?: AWSCognitoUserPoolRiskConfigurationAttachment3; MediumAction?: AWSCognitoUserPoolRiskConfigurationAttachment3; } export interface AWSCognitoUserPoolRiskConfigurationAttachment3 { EventAction: string; Notify: boolean; } export interface AWSCognitoUserPoolRiskConfigurationAttachment4 { BlockEmail?: AWSCognitoUserPoolRiskConfigurationAttachment5; From?: string; MfaEmail?: AWSCognitoUserPoolRiskConfigurationAttachment5; NoActionEmail?: AWSCognitoUserPoolRiskConfigurationAttachment5; ReplyTo?: string; SourceArn: string; } export interface AWSCognitoUserPoolRiskConfigurationAttachment5 { HtmlBody?: string; Subject: string; TextBody?: string; } export interface AWSCognitoUserPoolRiskConfigurationAttachment6 { Actions: AWSCognitoUserPoolRiskConfigurationAttachment7; EventFilter?: string[]; } export interface AWSCognitoUserPoolRiskConfigurationAttachment7 { EventAction: string; } export interface AWSCognitoUserPoolRiskConfigurationAttachment8 { BlockedIPRangeList?: string[]; SkippedIPRangeList?: string[]; } export interface AWSCognitoUserPoolUICustomizationAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CSS?: string; ClientId: string; UserPoolId: string; }; Type: 'AWS::Cognito::UserPoolUICustomizationAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPoolUser { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClientMetadata?: { [k: string]: unknown; }; DesiredDeliveryMediums?: string[]; ForceAliasCreation?: boolean; MessageAction?: string; UserAttributes?: AWSCognitoUserPoolUser1[]; UserPoolId: string; Username?: string; ValidationData?: AWSCognitoUserPoolUser1[]; }; Type: 'AWS::Cognito::UserPoolUser'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCognitoUserPoolUser1 { Name?: string; Value?: string; } export interface AWSCognitoUserPoolUserToGroupAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GroupName: string; UserPoolId: string; Username: string; }; Type: 'AWS::Cognito::UserPoolUserToGroupAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigAggregationAuthorization { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthorizedAccountId: string; AuthorizedAwsRegion: string; Tags?: Tag[]; }; Type: 'AWS::Config::AggregationAuthorization'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigConfigRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConfigRuleName?: string; Description?: string; InputParameters?: { [k: string]: unknown; }; MaximumExecutionFrequency?: string; Scope?: AWSConfigConfigRule1; Source: AWSConfigConfigRule2; }; Type: 'AWS::Config::ConfigRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigConfigRule1 { ComplianceResourceId?: string; ComplianceResourceTypes?: string[]; TagKey?: string; TagValue?: string; } export interface AWSConfigConfigRule2 { CustomPolicyDetails?: AWSConfigConfigRule3; Owner: string; SourceDetails?: AWSConfigConfigRule4[]; SourceIdentifier?: string; } export interface AWSConfigConfigRule3 { EnableDebugLogDelivery?: boolean; PolicyRuntime?: string; PolicyText?: string; } export interface AWSConfigConfigRule4 { EventSource: string; MaximumExecutionFrequency?: string; MessageType: string; } export interface AWSConfigConfigurationAggregator { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AccountAggregationSources?: AWSConfigConfigurationAggregator1[]; ConfigurationAggregatorName?: string; OrganizationAggregationSource?: AWSConfigConfigurationAggregator2; Tags?: Tag[]; }; Type: 'AWS::Config::ConfigurationAggregator'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigConfigurationAggregator1 { AccountIds: string[]; AllAwsRegions?: boolean; AwsRegions?: string[]; } export interface AWSConfigConfigurationAggregator2 { AllAwsRegions?: boolean; AwsRegions?: string[]; RoleArn: string; } export interface AWSConfigConfigurationRecorder { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name?: string; RecordingGroup?: AWSConfigConfigurationRecorder1; RoleARN: string; }; Type: 'AWS::Config::ConfigurationRecorder'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigConfigurationRecorder1 { AllSupported?: boolean; IncludeGlobalResourceTypes?: boolean; ResourceTypes?: string[]; } export interface AWSConfigConformancePack { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConformancePackInputParameters?: AWSConfigConformancePack1[]; ConformancePackName: string; DeliveryS3Bucket?: string; DeliveryS3KeyPrefix?: string; TemplateBody?: string; TemplateS3Uri?: string; TemplateSSMDocumentDetails?: AWSConfigConformancePack2; }; Type: 'AWS::Config::ConformancePack'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigConformancePack1 { ParameterName: string; ParameterValue: string; } export interface AWSConfigConformancePack2 { DocumentName?: string; DocumentVersion?: string; } export interface AWSConfigDeliveryChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConfigSnapshotDeliveryProperties?: AWSConfigDeliveryChannel1; Name?: string; S3BucketName: string; S3KeyPrefix?: string; S3KmsKeyArn?: string; SnsTopicARN?: string; }; Type: 'AWS::Config::DeliveryChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigDeliveryChannel1 { DeliveryFrequency?: string; } export interface AWSConfigOrganizationConfigRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ExcludedAccounts?: string[]; OrganizationConfigRuleName: string; OrganizationCustomCodeRuleMetadata?: AWSConfigOrganizationConfigRule1; OrganizationCustomRuleMetadata?: AWSConfigOrganizationConfigRule2; OrganizationManagedRuleMetadata?: AWSConfigOrganizationConfigRule3; }; Type: 'AWS::Config::OrganizationConfigRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigOrganizationConfigRule1 { CodeText: string; DebugLogDeliveryAccounts?: string[]; Description?: string; InputParameters?: string; MaximumExecutionFrequency?: string; OrganizationConfigRuleTriggerTypes?: string[]; ResourceIdScope?: string; ResourceTypesScope?: string[]; Runtime: string; TagKeyScope?: string; TagValueScope?: string; } export interface AWSConfigOrganizationConfigRule2 { Description?: string; InputParameters?: string; LambdaFunctionArn: string; MaximumExecutionFrequency?: string; OrganizationConfigRuleTriggerTypes: string[]; ResourceIdScope?: string; ResourceTypesScope?: string[]; TagKeyScope?: string; TagValueScope?: string; } export interface AWSConfigOrganizationConfigRule3 { Description?: string; InputParameters?: string; MaximumExecutionFrequency?: string; ResourceIdScope?: string; ResourceTypesScope?: string[]; RuleIdentifier: string; TagKeyScope?: string; TagValueScope?: string; } export interface AWSConfigOrganizationConformancePack { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConformancePackInputParameters?: AWSConfigOrganizationConformancePack1[]; DeliveryS3Bucket?: string; DeliveryS3KeyPrefix?: string; ExcludedAccounts?: string[]; OrganizationConformancePackName: string; TemplateBody?: string; TemplateS3Uri?: string; }; Type: 'AWS::Config::OrganizationConformancePack'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigOrganizationConformancePack1 { ParameterName: string; ParameterValue: string; } export interface AWSConfigRemediationConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Automatic?: boolean; ConfigRuleName: string; ExecutionControls?: AWSConfigRemediationConfiguration1; MaximumAutomaticAttempts?: number; Parameters?: { [k: string]: unknown; }; ResourceType?: string; RetryAttemptSeconds?: number; TargetId: string; TargetType: string; TargetVersion?: string; }; Type: 'AWS::Config::RemediationConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConfigRemediationConfiguration1 { SsmControls?: AWSConfigRemediationConfiguration2; } export interface AWSConfigRemediationConfiguration2 { ConcurrentExecutionRatePercentage?: number; ErrorPercentage?: number; } export interface AWSConfigStoredQuery { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { QueryDescription?: string; QueryExpression: string; QueryName: string; Tags?: Tag[]; }; Type: 'AWS::Config::StoredQuery'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectContactFlow { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Content: string; Description?: string; InstanceArn: string; Name: string; State?: string; Tags?: Tag[]; Type: string; }; Type: 'AWS::Connect::ContactFlow'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectContactFlowModule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Content: string; Description?: string; InstanceArn: string; Name: string; State?: string; Tags?: Tag[]; }; Type: 'AWS::Connect::ContactFlowModule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectHoursOfOperation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Config: AWSConnectHoursOfOperation1[]; Description?: string; InstanceArn: string; Name: string; Tags?: Tag[]; TimeZone: string; }; Type: 'AWS::Connect::HoursOfOperation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectHoursOfOperation1 { Day: string; EndTime: AWSConnectHoursOfOperation2; StartTime: AWSConnectHoursOfOperation2; } export interface AWSConnectHoursOfOperation2 { Hours: number; Minutes: number; } export interface AWSConnectInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Attributes: AWSConnectInstance1; DirectoryId?: string; IdentityManagementType: string; InstanceAlias?: string; }; Type: 'AWS::Connect::Instance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectInstance1 { AutoResolveBestVoices?: boolean; ContactLens?: boolean; ContactflowLogs?: boolean; EarlyMedia?: boolean; InboundCalls: boolean; OutboundCalls: boolean; UseCustomTTSVoices?: boolean; } export interface AWSConnectInstanceStorageConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InstanceArn: string; KinesisFirehoseConfig?: AWSConnectInstanceStorageConfig1; KinesisStreamConfig?: AWSConnectInstanceStorageConfig2; KinesisVideoStreamConfig?: AWSConnectInstanceStorageConfig3; ResourceType: string; S3Config?: AWSConnectInstanceStorageConfig5; StorageType: string; }; Type: 'AWS::Connect::InstanceStorageConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectInstanceStorageConfig1 { FirehoseArn: string; } export interface AWSConnectInstanceStorageConfig2 { StreamArn: string; } export interface AWSConnectInstanceStorageConfig3 { EncryptionConfig?: AWSConnectInstanceStorageConfig4; Prefix: string; RetentionPeriodHours: number; } export interface AWSConnectInstanceStorageConfig4 { EncryptionType: string; KeyId: string; } export interface AWSConnectInstanceStorageConfig5 { BucketName: string; BucketPrefix: string; EncryptionConfig?: AWSConnectInstanceStorageConfig4; } export interface AWSConnectPhoneNumber { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CountryCode: string; Description?: string; Prefix?: string; Tags?: Tag[]; TargetArn: string; Type: string; }; Type: 'AWS::Connect::PhoneNumber'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectQuickConnect { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; InstanceArn: string; Name: string; QuickConnectConfig: AWSConnectQuickConnect1; Tags?: Tag[]; }; Type: 'AWS::Connect::QuickConnect'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectQuickConnect1 { PhoneConfig?: AWSConnectQuickConnect2; QueueConfig?: AWSConnectQuickConnect3; QuickConnectType: string; UserConfig?: AWSConnectQuickConnect4; } export interface AWSConnectQuickConnect2 { PhoneNumber: string; } export interface AWSConnectQuickConnect3 { ContactFlowArn: string; QueueArn: string; } export interface AWSConnectQuickConnect4 { ContactFlowArn: string; UserArn: string; } export interface AWSConnectRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Actions: AWSConnectRule1; Function: string; InstanceArn: string; Name: string; PublishStatus: string; Tags?: Tag[]; TriggerEventSource: AWSConnectRule7; }; Type: 'AWS::Connect::Rule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectRule1 { AssignContactCategoryActions?: { [k: string]: unknown; }[]; EventBridgeActions?: AWSConnectRule2[]; SendNotificationActions?: AWSConnectRule3[]; TaskActions?: AWSConnectRule5[]; } export interface AWSConnectRule2 { Name: string; } export interface AWSConnectRule3 { Content: string; ContentType: string; DeliveryMethod: string; Recipient: AWSConnectRule4; Subject?: string; } export interface AWSConnectRule4 { UserArns?: string[]; UserTags?: { [k: string]: unknown; }; } export interface AWSConnectRule5 { ContactFlowArn: string; Description?: string; Name: string; References?: { [k: string]: AWSConnectRule6; }; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSConnectRule6 { Type: string; Value: string; } export interface AWSConnectRule7 { EventSourceName: string; IntegrationAssociationArn?: string; } export interface AWSConnectTaskTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClientToken?: string; Constraints?: AWSConnectTaskTemplate1; ContactFlowArn?: string; Defaults?: AWSConnectTaskTemplate6[]; Description?: string; Fields?: AWSConnectTaskTemplate7[]; InstanceArn: string; Name?: string; Status?: string; Tags?: Tag[]; }; Type: 'AWS::Connect::TaskTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectTaskTemplate1 { InvisibleFields?: AWSConnectTaskTemplate2[]; ReadOnlyFields?: AWSConnectTaskTemplate4[]; RequiredFields?: AWSConnectTaskTemplate5[]; } export interface AWSConnectTaskTemplate2 { Id: AWSConnectTaskTemplate3; } export interface AWSConnectTaskTemplate3 { Name: string; } export interface AWSConnectTaskTemplate4 { Id: AWSConnectTaskTemplate3; } export interface AWSConnectTaskTemplate5 { Id: AWSConnectTaskTemplate3; } export interface AWSConnectTaskTemplate6 { DefaultValue: string; Id: AWSConnectTaskTemplate3; } export interface AWSConnectTaskTemplate7 { Description?: string; Id: AWSConnectTaskTemplate3; SingleSelectOptions?: string[]; Type: string; } export interface AWSConnectUser { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DirectoryUserId?: string; HierarchyGroupArn?: string; IdentityInfo?: AWSConnectUser1; InstanceArn: string; Password?: string; PhoneConfig: AWSConnectUser2; RoutingProfileArn: string; SecurityProfileArns: string[]; Tags?: Tag[]; Username: string; }; Type: 'AWS::Connect::User'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectUser1 { Email?: string; FirstName?: string; LastName?: string; Mobile?: string; SecondaryEmail?: string; } export interface AWSConnectUser2 { AfterContactWorkTimeLimit?: number; AutoAccept?: boolean; DeskPhoneNumber?: string; PhoneType: string; } export interface AWSConnectUserHierarchyGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InstanceArn: string; Name: string; ParentGroupArn?: string; }; Type: 'AWS::Connect::UserHierarchyGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectCampaignsCampaign { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectInstanceArn: string; DialerConfig: AWSConnectCampaignsCampaign1; Name: string; OutboundCallConfig: AWSConnectCampaignsCampaign4; Tags?: Tag[]; }; Type: 'AWS::ConnectCampaigns::Campaign'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSConnectCampaignsCampaign1 { PredictiveDialerConfig?: AWSConnectCampaignsCampaign2; ProgressiveDialerConfig?: AWSConnectCampaignsCampaign3; } export interface AWSConnectCampaignsCampaign2 { BandwidthAllocation: number; } export interface AWSConnectCampaignsCampaign3 { BandwidthAllocation: number; } export interface AWSConnectCampaignsCampaign4 { ConnectContactFlowArn: string; ConnectQueueArn: string; ConnectSourcePhoneNumber?: string; } export interface AWSControlTowerEnabledControl { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ControlIdentifier: string; TargetIdentifier: string; }; Type: 'AWS::ControlTower::EnabledControl'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCustomerProfilesDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeadLetterQueueUrl?: string; DefaultEncryptionKey?: string; DefaultExpirationDays?: number; DomainName: string; Tags?: Tag[]; }; Type: 'AWS::CustomerProfiles::Domain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCustomerProfilesIntegration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DomainName: string; FlowDefinition?: AWSCustomerProfilesIntegration1; ObjectTypeName?: string; ObjectTypeNames?: AWSCustomerProfilesIntegration16[]; Tags?: Tag[]; Uri?: string; }; Type: 'AWS::CustomerProfiles::Integration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCustomerProfilesIntegration1 { Description?: string; FlowName: string; KmsArn: string; SourceFlowConfig: AWSCustomerProfilesIntegration2; Tasks: AWSCustomerProfilesIntegration10[]; TriggerConfig: AWSCustomerProfilesIntegration13; } export interface AWSCustomerProfilesIntegration2 { ConnectorProfileName?: string; ConnectorType: string; IncrementalPullConfig?: AWSCustomerProfilesIntegration3; SourceConnectorProperties: AWSCustomerProfilesIntegration4; } export interface AWSCustomerProfilesIntegration3 { DatetimeTypeFieldName?: string; } export interface AWSCustomerProfilesIntegration4 { Marketo?: AWSCustomerProfilesIntegration5; S3?: AWSCustomerProfilesIntegration6; Salesforce?: AWSCustomerProfilesIntegration7; ServiceNow?: AWSCustomerProfilesIntegration8; Zendesk?: AWSCustomerProfilesIntegration9; } export interface AWSCustomerProfilesIntegration5 { Object: string; } export interface AWSCustomerProfilesIntegration6 { BucketName: string; BucketPrefix?: string; } export interface AWSCustomerProfilesIntegration7 { EnableDynamicFieldUpdate?: boolean; IncludeDeletedRecords?: boolean; Object: string; } export interface AWSCustomerProfilesIntegration8 { Object: string; } export interface AWSCustomerProfilesIntegration9 { Object: string; } export interface AWSCustomerProfilesIntegration10 { ConnectorOperator?: AWSCustomerProfilesIntegration11; DestinationField?: string; SourceFields: string[]; TaskProperties?: AWSCustomerProfilesIntegration12[]; TaskType: string; } export interface AWSCustomerProfilesIntegration11 { Marketo?: string; S3?: string; Salesforce?: string; ServiceNow?: string; Zendesk?: string; } export interface AWSCustomerProfilesIntegration12 { OperatorPropertyKey: string; Property: string; } export interface AWSCustomerProfilesIntegration13 { TriggerProperties?: AWSCustomerProfilesIntegration14; TriggerType: string; } export interface AWSCustomerProfilesIntegration14 { Scheduled?: AWSCustomerProfilesIntegration15; } export interface AWSCustomerProfilesIntegration15 { DataPullMode?: string; FirstExecutionFrom?: number; ScheduleEndTime?: number; ScheduleExpression: string; ScheduleOffset?: number; ScheduleStartTime?: number; Timezone?: string; } export interface AWSCustomerProfilesIntegration16 { Key: string; Value: string; } export interface AWSCustomerProfilesObjectType { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowProfileCreation?: boolean; Description?: string; DomainName: string; EncryptionKey?: string; ExpirationDays?: number; Fields?: AWSCustomerProfilesObjectType1[]; Keys?: AWSCustomerProfilesObjectType3[]; ObjectTypeName?: string; Tags?: Tag[]; TemplateId?: string; }; Type: 'AWS::CustomerProfiles::ObjectType'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSCustomerProfilesObjectType1 { Name?: string; ObjectTypeField?: AWSCustomerProfilesObjectType2; } export interface AWSCustomerProfilesObjectType2 { ContentType?: string; Source?: string; Target?: string; } export interface AWSCustomerProfilesObjectType3 { Name?: string; ObjectTypeKeyList?: AWSCustomerProfilesObjectType4[]; } export interface AWSCustomerProfilesObjectType4 { FieldNames?: string[]; StandardIdentifiers?: string[]; } export interface AWSDAXCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AvailabilityZones?: string[]; ClusterEndpointEncryptionType?: string; ClusterName?: string; Description?: string; IAMRoleARN: string; NodeType: string; NotificationTopicARN?: string; ParameterGroupName?: string; PreferredMaintenanceWindow?: string; ReplicationFactor: number; SSESpecification?: AWSDAXCluster1; SecurityGroupIds?: string[]; SubnetGroupName?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::DAX::Cluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDAXCluster1 { SSEEnabled?: boolean; } export interface AWSDAXParameterGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; ParameterGroupName?: string; ParameterNameValues?: { [k: string]: unknown; }; }; Type: 'AWS::DAX::ParameterGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDAXSubnetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; SubnetGroupName?: string; SubnetIds: string[]; }; Type: 'AWS::DAX::SubnetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDLMLifecyclePolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; ExecutionRoleArn?: string; PolicyDetails?: AWSDLMLifecyclePolicy1; State?: string; Tags?: Tag[]; }; Type: 'AWS::DLM::LifecyclePolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDLMLifecyclePolicy1 { Actions?: AWSDLMLifecyclePolicy2[]; EventSource?: AWSDLMLifecyclePolicy6; Parameters?: AWSDLMLifecyclePolicy8; PolicyType?: string; ResourceLocations?: string[]; ResourceTypes?: string[]; Schedules?: AWSDLMLifecyclePolicy9[]; TargetTags?: Tag[]; } export interface AWSDLMLifecyclePolicy2 { CrossRegionCopy: AWSDLMLifecyclePolicy3[]; Name: string; } export interface AWSDLMLifecyclePolicy3 { EncryptionConfiguration: AWSDLMLifecyclePolicy4; RetainRule?: AWSDLMLifecyclePolicy5; Target: string; } export interface AWSDLMLifecyclePolicy4 { CmkArn?: string; Encrypted: boolean; } export interface AWSDLMLifecyclePolicy5 { Interval: number; IntervalUnit: string; } export interface AWSDLMLifecyclePolicy6 { Parameters?: AWSDLMLifecyclePolicy7; Type: string; } export interface AWSDLMLifecyclePolicy7 { DescriptionRegex?: string; EventType: string; SnapshotOwner: string[]; } export interface AWSDLMLifecyclePolicy8 { ExcludeBootVolume?: boolean; ExcludeDataVolumeTags?: Tag[]; NoReboot?: boolean; } export interface AWSDLMLifecyclePolicy9 { ArchiveRule?: AWSDLMLifecyclePolicy10; CopyTags?: boolean; CreateRule?: AWSDLMLifecyclePolicy13; CrossRegionCopyRules?: AWSDLMLifecyclePolicy14[]; DeprecateRule?: AWSDLMLifecyclePolicy16; FastRestoreRule?: AWSDLMLifecyclePolicy17; Name?: string; RetainRule?: AWSDLMLifecyclePolicy18; ShareRules?: AWSDLMLifecyclePolicy19[]; TagsToAdd?: Tag[]; VariableTags?: Tag[]; } export interface AWSDLMLifecyclePolicy10 { RetainRule: AWSDLMLifecyclePolicy11; } export interface AWSDLMLifecyclePolicy11 { RetentionArchiveTier: AWSDLMLifecyclePolicy12; } export interface AWSDLMLifecyclePolicy12 { Count?: number; Interval?: number; IntervalUnit?: string; } export interface AWSDLMLifecyclePolicy13 { CronExpression?: string; Interval?: number; IntervalUnit?: string; Location?: string; Times?: string[]; } export interface AWSDLMLifecyclePolicy14 { CmkArn?: string; CopyTags?: boolean; DeprecateRule?: AWSDLMLifecyclePolicy15; Encrypted: boolean; RetainRule?: AWSDLMLifecyclePolicy5; Target?: string; TargetRegion?: string; } export interface AWSDLMLifecyclePolicy15 { Interval: number; IntervalUnit: string; } export interface AWSDLMLifecyclePolicy16 { Count?: number; Interval?: number; IntervalUnit?: string; } export interface AWSDLMLifecyclePolicy17 { AvailabilityZones?: string[]; Count?: number; Interval?: number; IntervalUnit?: string; } export interface AWSDLMLifecyclePolicy18 { Count?: number; Interval?: number; IntervalUnit?: string; } export interface AWSDLMLifecyclePolicy19 { TargetAccounts?: string[]; UnshareInterval?: number; UnshareIntervalUnit?: string; } export interface AWSDMSCertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CertificateIdentifier?: string; CertificatePem?: string; CertificateWallet?: string; }; Type: 'AWS::DMS::Certificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDMSEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CertificateArn?: string; DatabaseName?: string; DocDbSettings?: AWSDMSEndpoint1; DynamoDbSettings?: AWSDMSEndpoint2; ElasticsearchSettings?: AWSDMSEndpoint3; EndpointIdentifier?: string; EndpointType: string; EngineName: string; ExtraConnectionAttributes?: string; GcpMySQLSettings?: AWSDMSEndpoint4; IbmDb2Settings?: AWSDMSEndpoint5; KafkaSettings?: AWSDMSEndpoint6; KinesisSettings?: AWSDMSEndpoint7; KmsKeyId?: string; MicrosoftSqlServerSettings?: AWSDMSEndpoint8; MongoDbSettings?: AWSDMSEndpoint9; MySqlSettings?: AWSDMSEndpoint10; NeptuneSettings?: AWSDMSEndpoint11; OracleSettings?: AWSDMSEndpoint12; Password?: string; Port?: number; PostgreSqlSettings?: AWSDMSEndpoint13; RedisSettings?: AWSDMSEndpoint14; RedshiftSettings?: AWSDMSEndpoint15; ResourceIdentifier?: string; S3Settings?: AWSDMSEndpoint16; ServerName?: string; SslMode?: string; SybaseSettings?: AWSDMSEndpoint17; Tags?: Tag[]; Username?: string; }; Type: 'AWS::DMS::Endpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDMSEndpoint1 { DocsToInvestigate?: number; ExtractDocId?: boolean; NestingLevel?: string; SecretsManagerAccessRoleArn?: string; SecretsManagerSecretId?: string; } export interface AWSDMSEndpoint2 { ServiceAccessRoleArn?: string; } export interface AWSDMSEndpoint3 { EndpointUri?: string; ErrorRetryDuration?: number; FullLoadErrorPercentage?: number; ServiceAccessRoleArn?: string; } export interface AWSDMSEndpoint4 { AfterConnectScript?: string; CleanSourceMetadataOnMismatch?: boolean; DatabaseName?: string; EventsPollInterval?: number; MaxFileSize?: number; ParallelLoadThreads?: number; Password?: string; Port?: number; SecretsManagerAccessRoleArn?: string; SecretsManagerSecretId?: string; ServerName?: string; ServerTimezone?: string; Username?: string; } export interface AWSDMSEndpoint5 { CurrentLsn?: string; MaxKBytesPerRead?: number; SecretsManagerAccessRoleArn?: string; SecretsManagerSecretId?: string; SetDataCaptureChanges?: boolean; } export interface AWSDMSEndpoint6 { Broker?: string; IncludeControlDetails?: boolean; IncludeNullAndEmpty?: boolean; IncludePartitionValue?: boolean; IncludeTableAlterOperations?: boolean; IncludeTransactionDetails?: boolean; MessageFormat?: string; MessageMaxBytes?: number; NoHexPrefix?: boolean; PartitionIncludeSchemaTable?: boolean; SaslPassword?: string; SaslUserName?: string; SecurityProtocol?: string; SslCaCertificateArn?: string; SslClientCertificateArn?: string; SslClientKeyArn?: string; SslClientKeyPassword?: string; Topic?: string; } export interface AWSDMSEndpoint7 { IncludeControlDetails?: boolean; IncludeNullAndEmpty?: boolean; IncludePartitionValue?: boolean; IncludeTableAlterOperations?: boolean; IncludeTransactionDetails?: boolean; MessageFormat?: string; NoHexPrefix?: boolean; PartitionIncludeSchemaTable?: boolean; ServiceAccessRoleArn?: string; StreamArn?: string; } export interface AWSDMSEndpoint8 { BcpPacketSize?: number; ControlTablesFileGroup?: string; QuerySingleAlwaysOnNode?: boolean; ReadBackupOnly?: boolean; SafeguardPolicy?: string; SecretsManagerAccessRoleArn?: string; SecretsManagerSecretId?: string; UseBcpFullLoad?: boolean; UseThirdPartyBackupDevice?: boolean; } export interface AWSDMSEndpoint9 { AuthMechanism?: string; AuthSource?: string; AuthType?: string; DatabaseName?: string; DocsToInvestigate?: string; ExtractDocId?: string; NestingLevel?: string; Password?: string; Port?: number; SecretsManagerAccessRoleArn?: string; SecretsManagerSecretId?: string; ServerName?: string; Username?: string; } export interface AWSDMSEndpoint10 { AfterConnectScript?: string; CleanSourceMetadataOnMismatch?: boolean; EventsPollInterval?: number; MaxFileSize?: number; ParallelLoadThreads?: number; SecretsManagerAccessRoleArn?: string; SecretsManagerSecretId?: string; ServerTimezone?: string; TargetDbType?: string; } export interface AWSDMSEndpoint11 { ErrorRetryDuration?: number; IamAuthEnabled?: boolean; MaxFileSize?: number; MaxRetryCount?: number; S3BucketFolder?: string; S3BucketName?: string; ServiceAccessRoleArn?: string; } export interface AWSDMSEndpoint12 { AccessAlternateDirectly?: boolean; AddSupplementalLogging?: boolean; AdditionalArchivedLogDestId?: number; AllowSelectNestedTables?: boolean; ArchivedLogDestId?: number; ArchivedLogsOnly?: boolean; AsmPassword?: string; AsmServer?: string; AsmUser?: string; CharLengthSemantics?: string; DirectPathNoLog?: boolean; DirectPathParallelLoad?: boolean; EnableHomogenousTablespace?: boolean; ExtraArchivedLogDestIds?: number[]; FailTasksOnLobTruncation?: boolean; NumberDatatypeScale?: number; OraclePathPrefix?: string; ParallelAsmReadThreads?: number; ReadAheadBlocks?: number; ReadTableSpaceName?: boolean; ReplacePathPrefix?: boolean; RetryInterval?: number; SecretsManagerAccessRoleArn?: string; SecretsManagerOracleAsmAccessRoleArn?: string; SecretsManagerOracleAsmSecretId?: string; SecretsManagerSecretId?: string; SecurityDbEncryption?: string; SecurityDbEncryptionName?: string; SpatialDataOptionToGeoJsonFunctionName?: string; StandbyDelayTime?: number; UseAlternateFolderForOnline?: boolean; UseBFile?: boolean; UseDirectPathFullLoad?: boolean; UseLogminerReader?: boolean; UsePathPrefix?: string; } export interface AWSDMSEndpoint13 { AfterConnectScript?: string; CaptureDdls?: boolean; DdlArtifactsSchema?: string; ExecuteTimeout?: number; FailTasksOnLobTruncation?: boolean; HeartbeatEnable?: boolean; HeartbeatFrequency?: number; HeartbeatSchema?: string; MaxFileSize?: number; PluginName?: string; SecretsManagerAccessRoleArn?: string; SecretsManagerSecretId?: string; SlotName?: string; } export interface AWSDMSEndpoint14 { AuthPassword?: string; AuthType?: string; AuthUserName?: string; Port?: number; ServerName?: string; SslCaCertificateArn?: string; SslSecurityProtocol?: string; } export interface AWSDMSEndpoint15 { AcceptAnyDate?: boolean; AfterConnectScript?: string; BucketFolder?: string; BucketName?: string; CaseSensitiveNames?: boolean; CompUpdate?: boolean; ConnectionTimeout?: number; DateFormat?: string; EmptyAsNull?: boolean; EncryptionMode?: string; ExplicitIds?: boolean; FileTransferUploadStreams?: number; LoadTimeout?: number; MaxFileSize?: number; RemoveQuotes?: boolean; ReplaceChars?: string; ReplaceInvalidChars?: string; SecretsManagerAccessRoleArn?: string; SecretsManagerSecretId?: string; ServerSideEncryptionKmsKeyId?: string; ServiceAccessRoleArn?: string; TimeFormat?: string; TrimBlanks?: boolean; TruncateColumns?: boolean; WriteBufferSize?: number; } export interface AWSDMSEndpoint16 { AddColumnName?: boolean; BucketFolder?: string; BucketName?: string; CannedAclForObjects?: string; CdcInsertsAndUpdates?: boolean; CdcInsertsOnly?: boolean; CdcMaxBatchInterval?: number; CdcMinFileSize?: number; CdcPath?: string; CompressionType?: string; CsvDelimiter?: string; CsvNoSupValue?: string; CsvNullValue?: string; CsvRowDelimiter?: string; DataFormat?: string; DataPageSize?: number; DatePartitionDelimiter?: string; DatePartitionEnabled?: boolean; DatePartitionSequence?: string; DatePartitionTimezone?: string; DictPageSizeLimit?: number; EnableStatistics?: boolean; EncodingType?: string; EncryptionMode?: string; ExternalTableDefinition?: string; IgnoreHeaderRows?: number; IncludeOpForFullLoad?: boolean; MaxFileSize?: number; ParquetTimestampInMillisecond?: boolean; ParquetVersion?: string; PreserveTransactions?: boolean; Rfc4180?: boolean; RowGroupLength?: number; ServerSideEncryptionKmsKeyId?: string; ServiceAccessRoleArn?: string; TimestampColumnName?: string; UseCsvNoSupValue?: boolean; UseTaskStartTimeForFullLoadTimestamp?: boolean; } export interface AWSDMSEndpoint17 { SecretsManagerAccessRoleArn?: string; SecretsManagerSecretId?: string; } export interface AWSDMSEventSubscription { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Enabled?: boolean; EventCategories?: string[]; SnsTopicArn: string; SourceIds?: string[]; SourceType?: string; SubscriptionName?: string; Tags?: Tag[]; }; Type: 'AWS::DMS::EventSubscription'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDMSReplicationInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllocatedStorage?: number; AllowMajorVersionUpgrade?: boolean; AutoMinorVersionUpgrade?: boolean; AvailabilityZone?: string; EngineVersion?: string; KmsKeyId?: string; MultiAZ?: boolean; PreferredMaintenanceWindow?: string; PubliclyAccessible?: boolean; ReplicationInstanceClass: string; ReplicationInstanceIdentifier?: string; ReplicationSubnetGroupIdentifier?: string; ResourceIdentifier?: string; Tags?: Tag[]; VpcSecurityGroupIds?: string[]; }; Type: 'AWS::DMS::ReplicationInstance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDMSReplicationSubnetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ReplicationSubnetGroupDescription: string; ReplicationSubnetGroupIdentifier?: string; SubnetIds: string[]; Tags?: Tag[]; }; Type: 'AWS::DMS::ReplicationSubnetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDMSReplicationTask { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CdcStartPosition?: string; CdcStartTime?: number; CdcStopPosition?: string; MigrationType: string; ReplicationInstanceArn: string; ReplicationTaskIdentifier?: string; ReplicationTaskSettings?: string; ResourceIdentifier?: string; SourceEndpointArn: string; TableMappings: string; Tags?: Tag[]; TargetEndpointArn: string; TaskData?: string; }; Type: 'AWS::DMS::ReplicationTask'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataBrewDataset { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Format?: string; FormatOptions?: AWSDataBrewDataset1; Input: AWSDataBrewDataset5; Name: string; PathOptions?: AWSDataBrewDataset10; Tags?: Tag[]; }; Type: 'AWS::DataBrew::Dataset'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataBrewDataset1 { Csv?: AWSDataBrewDataset2; Excel?: AWSDataBrewDataset3; Json?: AWSDataBrewDataset4; } export interface AWSDataBrewDataset2 { Delimiter?: string; HeaderRow?: boolean; } export interface AWSDataBrewDataset3 { HeaderRow?: boolean; SheetIndexes?: number[]; SheetNames?: string[]; } export interface AWSDataBrewDataset4 { MultiLine?: boolean; } export interface AWSDataBrewDataset5 { DataCatalogInputDefinition?: AWSDataBrewDataset6; DatabaseInputDefinition?: AWSDataBrewDataset8; Metadata?: AWSDataBrewDataset9; S3InputDefinition?: AWSDataBrewDataset7; } export interface AWSDataBrewDataset6 { CatalogId?: string; DatabaseName?: string; TableName?: string; TempDirectory?: AWSDataBrewDataset7; } export interface AWSDataBrewDataset7 { Bucket: string; Key?: string; } export interface AWSDataBrewDataset8 { DatabaseTableName?: string; GlueConnectionName: string; QueryString?: string; TempDirectory?: AWSDataBrewDataset7; } export interface AWSDataBrewDataset9 { SourceArn?: string; } export interface AWSDataBrewDataset10 { FilesLimit?: AWSDataBrewDataset11; LastModifiedDateCondition?: AWSDataBrewDataset12; Parameters?: AWSDataBrewDataset14[]; } export interface AWSDataBrewDataset11 { MaxFiles: number; Order?: string; OrderedBy?: string; } export interface AWSDataBrewDataset12 { Expression: string; ValuesMap: AWSDataBrewDataset13[]; } export interface AWSDataBrewDataset13 { Value: string; ValueReference: string; } export interface AWSDataBrewDataset14 { DatasetParameter: AWSDataBrewDataset15; PathParameterName: string; } export interface AWSDataBrewDataset15 { CreateColumn?: boolean; DatetimeOptions?: AWSDataBrewDataset16; Filter?: AWSDataBrewDataset12; Name: string; Type: string; } export interface AWSDataBrewDataset16 { Format: string; LocaleCode?: string; TimezoneOffset?: string; } export interface AWSDataBrewJob { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataCatalogOutputs?: AWSDataBrewJob1[]; DatabaseOutputs?: AWSDataBrewJob5[]; DatasetName?: string; EncryptionKeyArn?: string; EncryptionMode?: string; JobSample?: AWSDataBrewJob6; LogSubscription?: string; MaxCapacity?: number; MaxRetries?: number; Name: string; OutputLocation?: AWSDataBrewJob7; Outputs?: AWSDataBrewJob8[]; ProfileConfiguration?: AWSDataBrewJob11; ProjectName?: string; Recipe?: AWSDataBrewJob18; RoleArn: string; Tags?: Tag[]; Timeout?: number; Type: string; ValidationConfigurations?: AWSDataBrewJob19[]; }; Type: 'AWS::DataBrew::Job'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataBrewJob1 { CatalogId?: string; DatabaseName: string; DatabaseOptions?: AWSDataBrewJob2; Overwrite?: boolean; S3Options?: AWSDataBrewJob4; TableName: string; } export interface AWSDataBrewJob2 { TableName: string; TempDirectory?: AWSDataBrewJob3; } export interface AWSDataBrewJob3 { Bucket: string; BucketOwner?: string; Key?: string; } export interface AWSDataBrewJob4 { Location: AWSDataBrewJob3; } export interface AWSDataBrewJob5 { DatabaseOptions: AWSDataBrewJob2; DatabaseOutputMode?: string; GlueConnectionName: string; } export interface AWSDataBrewJob6 { Mode?: string; Size?: number; } export interface AWSDataBrewJob7 { Bucket: string; BucketOwner?: string; Key?: string; } export interface AWSDataBrewJob8 { CompressionFormat?: string; Format?: string; FormatOptions?: AWSDataBrewJob9; Location: AWSDataBrewJob3; MaxOutputFiles?: number; Overwrite?: boolean; PartitionColumns?: string[]; } export interface AWSDataBrewJob9 { Csv?: AWSDataBrewJob10; } export interface AWSDataBrewJob10 { Delimiter?: string; } export interface AWSDataBrewJob11 { ColumnStatisticsConfigurations?: AWSDataBrewJob12[]; DatasetStatisticsConfiguration?: AWSDataBrewJob14; EntityDetectorConfiguration?: AWSDataBrewJob16; ProfileColumns?: AWSDataBrewJob13[]; } export interface AWSDataBrewJob12 { Selectors?: AWSDataBrewJob13[]; Statistics: AWSDataBrewJob14; } export interface AWSDataBrewJob13 { Name?: string; Regex?: string; } export interface AWSDataBrewJob14 { IncludedStatistics?: string[]; Overrides?: AWSDataBrewJob15[]; } export interface AWSDataBrewJob15 { Parameters: { [k: string]: unknown; }; Statistic: string; } export interface AWSDataBrewJob16 { AllowedStatistics?: AWSDataBrewJob17; EntityTypes: string[]; } export interface AWSDataBrewJob17 { Statistics: string[]; } export interface AWSDataBrewJob18 { Name: string; Version?: string; } export interface AWSDataBrewJob19 { RulesetArn: string; ValidationMode?: string; } export interface AWSDataBrewProject { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DatasetName: string; Name: string; RecipeName: string; RoleArn: string; Sample?: AWSDataBrewProject1; Tags?: Tag[]; }; Type: 'AWS::DataBrew::Project'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataBrewProject1 { Size?: number; Type: string; } export interface AWSDataBrewRecipe { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Steps: AWSDataBrewRecipe1[]; Tags?: Tag[]; }; Type: 'AWS::DataBrew::Recipe'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataBrewRecipe1 { Action: AWSDataBrewRecipe2; ConditionExpressions?: AWSDataBrewRecipe8[]; } export interface AWSDataBrewRecipe2 { Operation: string; Parameters?: AWSDataBrewRecipe3; } export interface AWSDataBrewRecipe3 { AggregateFunction?: string; Base?: string; CaseStatement?: string; CategoryMap?: string; CharsToRemove?: string; CollapseConsecutiveWhitespace?: string; ColumnDataType?: string; ColumnRange?: string; Count?: string; CustomCharacters?: string; CustomStopWords?: string; CustomValue?: string; DatasetsColumns?: string; DateAddValue?: string; DateTimeFormat?: string; DateTimeParameters?: string; DeleteOtherRows?: string; Delimiter?: string; EndPattern?: string; EndPosition?: string; EndValue?: string; ExpandContractions?: string; Exponent?: string; FalseString?: string; GroupByAggFunctionOptions?: string; GroupByColumns?: string; HiddenColumns?: string; IgnoreCase?: string; IncludeInSplit?: string; Input?: AWSDataBrewRecipe4; Interval?: string; IsText?: string; JoinKeys?: string; JoinType?: string; LeftColumns?: string; Limit?: string; LowerBound?: string; MapType?: string; ModeType?: string; MultiLine?: boolean; NumRows?: string; NumRowsAfter?: string; NumRowsBefore?: string; OrderByColumn?: string; OrderByColumns?: string; Other?: string; Pattern?: string; PatternOption1?: string; PatternOption2?: string; PatternOptions?: string; Period?: string; Position?: string; RemoveAllPunctuation?: string; RemoveAllQuotes?: string; RemoveAllWhitespace?: string; RemoveCustomCharacters?: string; RemoveCustomValue?: string; RemoveLeadingAndTrailingPunctuation?: string; RemoveLeadingAndTrailingQuotes?: string; RemoveLeadingAndTrailingWhitespace?: string; RemoveLetters?: string; RemoveNumbers?: string; RemoveSourceColumn?: string; RemoveSpecialCharacters?: string; RightColumns?: string; SampleSize?: string; SampleType?: string; SecondInput?: string; SecondaryInputs?: AWSDataBrewRecipe7[]; SheetIndexes?: number[]; SheetNames?: string[]; SourceColumn?: string; SourceColumn1?: string; SourceColumn2?: string; SourceColumns?: string; StartColumnIndex?: string; StartPattern?: string; StartPosition?: string; StartValue?: string; StemmingMode?: string; StepCount?: string; StepIndex?: string; StopWordsMode?: string; Strategy?: string; TargetColumn?: string; TargetColumnNames?: string; TargetDateFormat?: string; TargetIndex?: string; TimeZone?: string; TokenizerPattern?: string; TrueString?: string; UdfLang?: string; Units?: string; UnpivotColumn?: string; UpperBound?: string; UseNewDataFrame?: string; Value?: string; Value1?: string; Value2?: string; ValueColumn?: string; ViewFrame?: string; } export interface AWSDataBrewRecipe4 { DataCatalogInputDefinition?: AWSDataBrewRecipe5; S3InputDefinition?: AWSDataBrewRecipe6; } export interface AWSDataBrewRecipe5 { CatalogId?: string; DatabaseName?: string; TableName?: string; TempDirectory?: AWSDataBrewRecipe6; } export interface AWSDataBrewRecipe6 { Bucket: string; Key?: string; } export interface AWSDataBrewRecipe7 { DataCatalogInputDefinition?: AWSDataBrewRecipe5; S3InputDefinition?: AWSDataBrewRecipe6; } export interface AWSDataBrewRecipe8 { Condition: string; TargetColumn: string; Value?: string; } export interface AWSDataBrewRuleset { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Rules: AWSDataBrewRuleset1[]; Tags?: Tag[]; TargetArn: string; }; Type: 'AWS::DataBrew::Ruleset'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataBrewRuleset1 { CheckExpression: string; ColumnSelectors?: AWSDataBrewRuleset2[]; Disabled?: boolean; Name: string; SubstitutionMap?: AWSDataBrewRuleset3[]; Threshold?: AWSDataBrewRuleset4; } export interface AWSDataBrewRuleset2 { Name?: string; Regex?: string; } export interface AWSDataBrewRuleset3 { Value: string; ValueReference: string; } export interface AWSDataBrewRuleset4 { Type?: string; Unit?: string; Value: number; } export interface AWSDataBrewSchedule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CronExpression: string; JobNames?: string[]; Name: string; Tags?: Tag[]; }; Type: 'AWS::DataBrew::Schedule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataPipelinePipeline { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Activate?: boolean; Description?: string; Name: string; ParameterObjects?: AWSDataPipelinePipeline1[]; ParameterValues?: AWSDataPipelinePipeline3[]; PipelineObjects?: AWSDataPipelinePipeline4[]; PipelineTags?: AWSDataPipelinePipeline6[]; }; Type: 'AWS::DataPipeline::Pipeline'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataPipelinePipeline1 { Attributes: AWSDataPipelinePipeline2[]; Id: string; } export interface AWSDataPipelinePipeline2 { Key: string; StringValue: string; } export interface AWSDataPipelinePipeline3 { Id: string; StringValue: string; } export interface AWSDataPipelinePipeline4 { Fields: AWSDataPipelinePipeline5[]; Id: string; Name: string; } export interface AWSDataPipelinePipeline5 { Key: string; RefValue?: string; StringValue?: string; } export interface AWSDataPipelinePipeline6 { Key: string; Value: string; } export interface AWSDataSyncAgent { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ActivationKey: string; AgentName?: string; SecurityGroupArns?: string[]; SubnetArns?: string[]; Tags?: Tag[]; VpcEndpointId?: string; }; Type: 'AWS::DataSync::Agent'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationEFS { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessPointArn?: string; Ec2Config: AWSDataSyncLocationEFS1; EfsFilesystemArn?: string; FileSystemAccessRoleArn?: string; InTransitEncryption?: string; Subdirectory?: string; Tags?: Tag[]; }; Type: 'AWS::DataSync::LocationEFS'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationEFS1 { SecurityGroupArns: string[]; SubnetArn: string; } export interface AWSDataSyncLocationFSxLustre { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { FsxFilesystemArn?: string; SecurityGroupArns: string[]; Subdirectory?: string; Tags?: Tag[]; }; Type: 'AWS::DataSync::LocationFSxLustre'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationFSxONTAP { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Protocol: AWSDataSyncLocationFSxONTAP1; SecurityGroupArns: string[]; StorageVirtualMachineArn: string; Subdirectory?: string; Tags?: Tag[]; }; Type: 'AWS::DataSync::LocationFSxONTAP'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationFSxONTAP1 { NFS?: AWSDataSyncLocationFSxONTAP2; SMB?: AWSDataSyncLocationFSxONTAP4; } export interface AWSDataSyncLocationFSxONTAP2 { MountOptions: AWSDataSyncLocationFSxONTAP3; } export interface AWSDataSyncLocationFSxONTAP3 { Version?: string; } export interface AWSDataSyncLocationFSxONTAP4 { Domain?: string; MountOptions: AWSDataSyncLocationFSxONTAP5; Password: string; User: string; } export interface AWSDataSyncLocationFSxONTAP5 { Version?: string; } export interface AWSDataSyncLocationFSxOpenZFS { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { FsxFilesystemArn: string; Protocol: AWSDataSyncLocationFSxOpenZFS1; SecurityGroupArns: string[]; Subdirectory?: string; Tags?: Tag[]; }; Type: 'AWS::DataSync::LocationFSxOpenZFS'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationFSxOpenZFS1 { NFS?: AWSDataSyncLocationFSxOpenZFS2; } export interface AWSDataSyncLocationFSxOpenZFS2 { MountOptions: AWSDataSyncLocationFSxOpenZFS3; } export interface AWSDataSyncLocationFSxOpenZFS3 { Version?: string; } export interface AWSDataSyncLocationFSxWindows { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Domain?: string; FsxFilesystemArn?: string; Password?: string; SecurityGroupArns: string[]; Subdirectory?: string; Tags?: Tag[]; User: string; }; Type: 'AWS::DataSync::LocationFSxWindows'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationHDFS { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AgentArns: string[]; AuthenticationType: string; BlockSize?: number; KerberosKeytab?: string; KerberosKrb5Conf?: string; KerberosPrincipal?: string; KmsKeyProviderUri?: string; NameNodes: AWSDataSyncLocationHDFS1[]; QopConfiguration?: AWSDataSyncLocationHDFS2; ReplicationFactor?: number; SimpleUser?: string; Subdirectory?: string; Tags?: Tag[]; }; Type: 'AWS::DataSync::LocationHDFS'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationHDFS1 { Hostname: string; Port: number; } export interface AWSDataSyncLocationHDFS2 { DataTransferProtection?: string; RpcProtection?: string; } export interface AWSDataSyncLocationNFS { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MountOptions?: AWSDataSyncLocationNFS1; OnPremConfig: AWSDataSyncLocationNFS2; ServerHostname?: string; Subdirectory?: string; Tags?: Tag[]; }; Type: 'AWS::DataSync::LocationNFS'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationNFS1 { Version?: string; } export interface AWSDataSyncLocationNFS2 { AgentArns: string[]; } export interface AWSDataSyncLocationObjectStorage { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessKey?: string; AgentArns: string[]; BucketName?: string; SecretKey?: string; ServerHostname?: string; ServerPort?: number; ServerProtocol?: string; Subdirectory?: string; Tags?: Tag[]; }; Type: 'AWS::DataSync::LocationObjectStorage'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationS3 { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { S3BucketArn: string; S3Config: AWSDataSyncLocationS31; S3StorageClass?: string; Subdirectory?: string; Tags?: Tag[]; }; Type: 'AWS::DataSync::LocationS3'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationS31 { BucketAccessRoleArn: string; } export interface AWSDataSyncLocationSMB { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AgentArns: string[]; Domain?: string; MountOptions?: AWSDataSyncLocationSMB1; Password?: string; ServerHostname?: string; Subdirectory?: string; Tags?: Tag[]; User: string; }; Type: 'AWS::DataSync::LocationSMB'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncLocationSMB1 { Version?: string; } export interface AWSDataSyncTask { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CloudWatchLogGroupArn?: string; DestinationLocationArn: string; Excludes?: AWSDataSyncTask1[]; Includes?: AWSDataSyncTask1[]; Name?: string; Options?: AWSDataSyncTask2; Schedule?: AWSDataSyncTask3; SourceLocationArn: string; Tags?: Tag[]; }; Type: 'AWS::DataSync::Task'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDataSyncTask1 { FilterType?: string; Value?: string; } export interface AWSDataSyncTask2 { Atime?: string; BytesPerSecond?: number; Gid?: string; LogLevel?: string; Mtime?: string; ObjectTags?: string; OverwriteMode?: string; PosixPermissions?: string; PreserveDeletedFiles?: string; PreserveDevices?: string; SecurityDescriptorCopyFlags?: string; TaskQueueing?: string; TransferMode?: string; Uid?: string; VerifyMode?: string; } export interface AWSDataSyncTask3 { ScheduleExpression: string; } export interface AWSDetectiveGraph { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Tags?: Tag[]; }; Type: 'AWS::Detective::Graph'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDetectiveMemberInvitation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DisableEmailNotification?: boolean; GraphArn: string; MemberEmailAddress: string; MemberId: string; Message?: string; }; Type: 'AWS::Detective::MemberInvitation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDevOpsGuruNotificationChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Config: AWSDevOpsGuruNotificationChannel1; }; Type: 'AWS::DevOpsGuru::NotificationChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDevOpsGuruNotificationChannel1 { Filters?: AWSDevOpsGuruNotificationChannel2; Sns?: AWSDevOpsGuruNotificationChannel3; } export interface AWSDevOpsGuruNotificationChannel2 { MessageTypes?: string[]; Severities?: string[]; } export interface AWSDevOpsGuruNotificationChannel3 { TopicArn?: string; } export interface AWSDevOpsGuruResourceCollection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResourceCollectionFilter: AWSDevOpsGuruResourceCollection1; }; Type: 'AWS::DevOpsGuru::ResourceCollection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDevOpsGuruResourceCollection1 { CloudFormation?: AWSDevOpsGuruResourceCollection2; Tags?: AWSDevOpsGuruResourceCollection3[]; } export interface AWSDevOpsGuruResourceCollection2 { StackNames?: string[]; } export interface AWSDevOpsGuruResourceCollection3 { AppBoundaryKey?: string; TagValues?: string[]; } export interface AWSDirectoryServiceMicrosoftAD { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CreateAlias?: boolean; Edition?: string; EnableSso?: boolean; Name: string; Password: string; ShortName?: string; VpcSettings: AWSDirectoryServiceMicrosoftAD1; }; Type: 'AWS::DirectoryService::MicrosoftAD'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDirectoryServiceMicrosoftAD1 { SubnetIds: string[]; VpcId: string; } export interface AWSDirectoryServiceSimpleAD { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CreateAlias?: boolean; Description?: string; EnableSso?: boolean; Name: string; Password?: string; ShortName?: string; Size: string; VpcSettings: AWSDirectoryServiceSimpleAD1; }; Type: 'AWS::DirectoryService::SimpleAD'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDirectoryServiceSimpleAD1 { SubnetIds: string[]; VpcId: string; } export interface AWSDocDBDBCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AvailabilityZones?: string[]; BackupRetentionPeriod?: number; CopyTagsToSnapshot?: boolean; DBClusterIdentifier?: string; DBClusterParameterGroupName?: string; DBSubnetGroupName?: string; DeletionProtection?: boolean; EnableCloudwatchLogsExports?: string[]; EngineVersion?: string; KmsKeyId?: string; MasterUserPassword?: string; MasterUsername?: string; Port?: number; PreferredBackupWindow?: string; PreferredMaintenanceWindow?: string; RestoreToTime?: string; RestoreType?: string; SnapshotIdentifier?: string; SourceDBClusterIdentifier?: string; StorageEncrypted?: boolean; Tags?: Tag[]; UseLatestRestorableTime?: boolean; VpcSecurityGroupIds?: string[]; }; Type: 'AWS::DocDB::DBCluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDocDBDBClusterParameterGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description: string; Family: string; Name?: string; Parameters: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::DocDB::DBClusterParameterGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDocDBDBInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoMinorVersionUpgrade?: boolean; AvailabilityZone?: string; DBClusterIdentifier: string; DBInstanceClass: string; DBInstanceIdentifier?: string; EnablePerformanceInsights?: boolean; PreferredMaintenanceWindow?: string; Tags?: Tag[]; }; Type: 'AWS::DocDB::DBInstance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDocDBDBSubnetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DBSubnetGroupDescription: string; DBSubnetGroupName?: string; SubnetIds: string[]; Tags?: Tag[]; }; Type: 'AWS::DocDB::DBSubnetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDocDBElasticCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdminUserName: string; AdminUserPassword?: string; AuthType: string; ClusterName: string; KmsKeyId?: string; PreferredMaintenanceWindow?: string; ShardCapacity: number; ShardCount: number; SubnetIds?: string[]; Tags?: Tag[]; VpcSecurityGroupIds?: string[]; }; Type: 'AWS::DocDBElastic::Cluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDynamoDBGlobalTable { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AttributeDefinitions: AWSDynamoDBGlobalTable1[]; BillingMode?: string; GlobalSecondaryIndexes?: AWSDynamoDBGlobalTable2[]; KeySchema: AWSDynamoDBGlobalTable3[]; LocalSecondaryIndexes?: AWSDynamoDBGlobalTable8[]; Replicas: AWSDynamoDBGlobalTable9[]; SSESpecification?: AWSDynamoDBGlobalTable15; StreamSpecification?: AWSDynamoDBGlobalTable16; TableName?: string; TimeToLiveSpecification?: AWSDynamoDBGlobalTable17; WriteProvisionedThroughputSettings?: AWSDynamoDBGlobalTable5; }; Type: 'AWS::DynamoDB::GlobalTable'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDynamoDBGlobalTable1 { AttributeName: string; AttributeType: string; } export interface AWSDynamoDBGlobalTable2 { IndexName: string; KeySchema: AWSDynamoDBGlobalTable3[]; Projection: AWSDynamoDBGlobalTable4; WriteProvisionedThroughputSettings?: AWSDynamoDBGlobalTable5; } export interface AWSDynamoDBGlobalTable3 { AttributeName: string; KeyType: string; } export interface AWSDynamoDBGlobalTable4 { NonKeyAttributes?: string[]; ProjectionType?: string; } export interface AWSDynamoDBGlobalTable5 { WriteCapacityAutoScalingSettings?: AWSDynamoDBGlobalTable6; } export interface AWSDynamoDBGlobalTable6 { MaxCapacity: number; MinCapacity: number; SeedCapacity?: number; TargetTrackingScalingPolicyConfiguration: AWSDynamoDBGlobalTable7; } export interface AWSDynamoDBGlobalTable7 { DisableScaleIn?: boolean; ScaleInCooldown?: number; ScaleOutCooldown?: number; TargetValue: number; } export interface AWSDynamoDBGlobalTable8 { IndexName: string; KeySchema: AWSDynamoDBGlobalTable3[]; Projection: AWSDynamoDBGlobalTable4; } export interface AWSDynamoDBGlobalTable9 { ContributorInsightsSpecification?: AWSDynamoDBGlobalTable10; GlobalSecondaryIndexes?: AWSDynamoDBGlobalTable11[]; PointInTimeRecoverySpecification?: AWSDynamoDBGlobalTable13; ReadProvisionedThroughputSettings?: AWSDynamoDBGlobalTable12; Region: string; SSESpecification?: AWSDynamoDBGlobalTable14; TableClass?: string; Tags?: Tag[]; } export interface AWSDynamoDBGlobalTable10 { Enabled: boolean; } export interface AWSDynamoDBGlobalTable11 { ContributorInsightsSpecification?: AWSDynamoDBGlobalTable10; IndexName: string; ReadProvisionedThroughputSettings?: AWSDynamoDBGlobalTable12; } export interface AWSDynamoDBGlobalTable12 { ReadCapacityAutoScalingSettings?: AWSDynamoDBGlobalTable6; ReadCapacityUnits?: number; } export interface AWSDynamoDBGlobalTable13 { PointInTimeRecoveryEnabled?: boolean; } export interface AWSDynamoDBGlobalTable14 { KMSMasterKeyId: string; } export interface AWSDynamoDBGlobalTable15 { SSEEnabled: boolean; SSEType?: string; } export interface AWSDynamoDBGlobalTable16 { StreamViewType: string; } export interface AWSDynamoDBGlobalTable17 { AttributeName?: string; Enabled: boolean; } export interface AWSDynamoDBTable { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AttributeDefinitions?: AWSDynamoDBTable1[]; BillingMode?: string; ContributorInsightsSpecification?: AWSDynamoDBTable2; GlobalSecondaryIndexes?: AWSDynamoDBTable3[]; ImportSourceSpecification?: AWSDynamoDBTable7; KeySchema: AWSDynamoDBTable4[]; KinesisStreamSpecification?: AWSDynamoDBTable11; LocalSecondaryIndexes?: AWSDynamoDBTable12[]; PointInTimeRecoverySpecification?: AWSDynamoDBTable13; ProvisionedThroughput?: AWSDynamoDBTable6; SSESpecification?: AWSDynamoDBTable14; StreamSpecification?: AWSDynamoDBTable15; TableClass?: string; TableName?: string; Tags?: Tag[]; TimeToLiveSpecification?: AWSDynamoDBTable16; }; Type: 'AWS::DynamoDB::Table'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSDynamoDBTable1 { AttributeName: string; AttributeType: string; } export interface AWSDynamoDBTable2 { Enabled: boolean; } export interface AWSDynamoDBTable3 { ContributorInsightsSpecification?: AWSDynamoDBTable2; IndexName: string; KeySchema: AWSDynamoDBTable4[]; Projection: AWSDynamoDBTable5; ProvisionedThroughput?: AWSDynamoDBTable6; } export interface AWSDynamoDBTable4 { AttributeName: string; KeyType: string; } export interface AWSDynamoDBTable5 { NonKeyAttributes?: string[]; ProjectionType?: string; } export interface AWSDynamoDBTable6 { ReadCapacityUnits: number; WriteCapacityUnits: number; } export interface AWSDynamoDBTable7 { InputCompressionType?: string; InputFormat: string; InputFormatOptions?: AWSDynamoDBTable8; S3BucketSource: AWSDynamoDBTable10; } export interface AWSDynamoDBTable8 { Csv?: AWSDynamoDBTable9; } export interface AWSDynamoDBTable9 { Delimiter?: string; HeaderList?: string[]; } export interface AWSDynamoDBTable10 { S3Bucket: string; S3BucketOwner?: string; S3KeyPrefix?: string; } export interface AWSDynamoDBTable11 { StreamArn: string; } export interface AWSDynamoDBTable12 { IndexName: string; KeySchema: AWSDynamoDBTable4[]; Projection: AWSDynamoDBTable5; } export interface AWSDynamoDBTable13 { PointInTimeRecoveryEnabled?: boolean; } export interface AWSDynamoDBTable14 { KMSMasterKeyId?: string; SSEEnabled: boolean; SSEType?: string; } export interface AWSDynamoDBTable15 { StreamViewType: string; } export interface AWSDynamoDBTable16 { AttributeName: string; Enabled: boolean; } export interface AWSEC2CapacityReservation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AvailabilityZone: string; EbsOptimized?: boolean; EndDate?: string; EndDateType?: string; EphemeralStorage?: boolean; InstanceCount: number; InstanceMatchCriteria?: string; InstancePlatform: string; InstanceType: string; OutPostArn?: string; PlacementGroupArn?: string; TagSpecifications?: AWSEC2CapacityReservation1[]; Tenancy?: string; }; Type: 'AWS::EC2::CapacityReservation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2CapacityReservation1 { ResourceType?: string; Tags?: Tag[]; } export interface AWSEC2CapacityReservationFleet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AllocationStrategy?: string; EndDate?: string; InstanceMatchCriteria?: string; InstanceTypeSpecifications?: AWSEC2CapacityReservationFleet1[]; NoRemoveEndDate?: boolean; RemoveEndDate?: boolean; TagSpecifications?: AWSEC2CapacityReservationFleet2[]; Tenancy?: string; TotalTargetCapacity?: number; }; Type: 'AWS::EC2::CapacityReservationFleet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2CapacityReservationFleet1 { AvailabilityZone?: string; AvailabilityZoneId?: string; EbsOptimized?: boolean; InstancePlatform?: string; InstanceType?: string; Priority?: number; Weight?: number; } export interface AWSEC2CapacityReservationFleet2 { ResourceType?: string; Tags?: Tag[]; } export interface AWSEC2CarrierGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Tags?: Tag[]; VpcId: string; }; Type: 'AWS::EC2::CarrierGateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2ClientVpnAuthorizationRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessGroupId?: string; AuthorizeAllGroups?: boolean; ClientVpnEndpointId: string; Description?: string; TargetNetworkCidr: string; }; Type: 'AWS::EC2::ClientVpnAuthorizationRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2ClientVpnEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthenticationOptions: AWSEC2ClientVpnEndpoint1[]; ClientCidrBlock: string; ClientConnectOptions?: AWSEC2ClientVpnEndpoint5; ClientLoginBannerOptions?: AWSEC2ClientVpnEndpoint6; ConnectionLogOptions: AWSEC2ClientVpnEndpoint7; Description?: string; DnsServers?: string[]; SecurityGroupIds?: string[]; SelfServicePortal?: string; ServerCertificateArn: string; SessionTimeoutHours?: number; SplitTunnel?: boolean; TagSpecifications?: AWSEC2ClientVpnEndpoint8[]; TransportProtocol?: string; VpcId?: string; VpnPort?: number; }; Type: 'AWS::EC2::ClientVpnEndpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2ClientVpnEndpoint1 { ActiveDirectory?: AWSEC2ClientVpnEndpoint2; FederatedAuthentication?: AWSEC2ClientVpnEndpoint3; MutualAuthentication?: AWSEC2ClientVpnEndpoint4; Type: string; } export interface AWSEC2ClientVpnEndpoint2 { DirectoryId: string; } export interface AWSEC2ClientVpnEndpoint3 { SAMLProviderArn: string; SelfServiceSAMLProviderArn?: string; } export interface AWSEC2ClientVpnEndpoint4 { ClientRootCertificateChainArn: string; } export interface AWSEC2ClientVpnEndpoint5 { Enabled: boolean; LambdaFunctionArn?: string; } export interface AWSEC2ClientVpnEndpoint6 { BannerText?: string; Enabled: boolean; } export interface AWSEC2ClientVpnEndpoint7 { CloudwatchLogGroup?: string; CloudwatchLogStream?: string; Enabled: boolean; } export interface AWSEC2ClientVpnEndpoint8 { ResourceType: string; Tags: Tag[]; } export interface AWSEC2ClientVpnRoute { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClientVpnEndpointId: string; Description?: string; DestinationCidrBlock: string; TargetVpcSubnetId: string; }; Type: 'AWS::EC2::ClientVpnRoute'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2ClientVpnTargetNetworkAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClientVpnEndpointId: string; SubnetId: string; }; Type: 'AWS::EC2::ClientVpnTargetNetworkAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2CustomerGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BgpAsn: number; IpAddress: string; Tags?: Tag[]; Type: string; }; Type: 'AWS::EC2::CustomerGateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2DHCPOptions { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DomainName?: string; DomainNameServers?: string[]; NetbiosNameServers?: string[]; NetbiosNodeType?: number; NtpServers?: string[]; Tags?: Tag[]; }; Type: 'AWS::EC2::DHCPOptions'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2EC2Fleet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Context?: string; ExcessCapacityTerminationPolicy?: string; LaunchTemplateConfigs: AWSEC2EC2Fleet1[]; OnDemandOptions?: AWSEC2EC2Fleet15; ReplaceUnhealthyInstances?: boolean; SpotOptions?: AWSEC2EC2Fleet17; TagSpecifications?: AWSEC2EC2Fleet20[]; TargetCapacitySpecification: AWSEC2EC2Fleet21; TerminateInstancesWithExpiration?: boolean; Type?: string; ValidFrom?: string; ValidUntil?: string; }; Type: 'AWS::EC2::EC2Fleet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2EC2Fleet1 { LaunchTemplateSpecification?: AWSEC2EC2Fleet2; Overrides?: AWSEC2EC2Fleet3[]; } export interface AWSEC2EC2Fleet2 { LaunchTemplateId?: string; LaunchTemplateName?: string; Version: string; } export interface AWSEC2EC2Fleet3 { AvailabilityZone?: string; InstanceRequirements?: AWSEC2EC2Fleet4; InstanceType?: string; MaxPrice?: string; Placement?: AWSEC2EC2Fleet14; Priority?: number; SubnetId?: string; WeightedCapacity?: number; } export interface AWSEC2EC2Fleet4 { AcceleratorCount?: AWSEC2EC2Fleet5; AcceleratorManufacturers?: string[]; AcceleratorNames?: string[]; AcceleratorTotalMemoryMiB?: AWSEC2EC2Fleet6; AcceleratorTypes?: string[]; AllowedInstanceTypes?: string[]; BareMetal?: string; BaselineEbsBandwidthMbps?: AWSEC2EC2Fleet7; BurstablePerformance?: string; CpuManufacturers?: string[]; ExcludedInstanceTypes?: string[]; InstanceGenerations?: string[]; LocalStorage?: string; LocalStorageTypes?: string[]; MemoryGiBPerVCpu?: AWSEC2EC2Fleet8; MemoryMiB?: AWSEC2EC2Fleet9; NetworkBandwidthGbps?: AWSEC2EC2Fleet10; NetworkInterfaceCount?: AWSEC2EC2Fleet11; OnDemandMaxPricePercentageOverLowestPrice?: number; RequireHibernateSupport?: boolean; SpotMaxPricePercentageOverLowestPrice?: number; TotalLocalStorageGB?: AWSEC2EC2Fleet12; VCpuCount?: AWSEC2EC2Fleet13; } export interface AWSEC2EC2Fleet5 { Max?: number; Min?: number; } export interface AWSEC2EC2Fleet6 { Max?: number; Min?: number; } export interface AWSEC2EC2Fleet7 { Max?: number; Min?: number; } export interface AWSEC2EC2Fleet8 { Max?: number; Min?: number; } export interface AWSEC2EC2Fleet9 { Max?: number; Min?: number; } export interface AWSEC2EC2Fleet10 { Max?: number; Min?: number; } export interface AWSEC2EC2Fleet11 { Max?: number; Min?: number; } export interface AWSEC2EC2Fleet12 { Max?: number; Min?: number; } export interface AWSEC2EC2Fleet13 { Max?: number; Min?: number; } export interface AWSEC2EC2Fleet14 { Affinity?: string; AvailabilityZone?: string; GroupName?: string; HostId?: string; HostResourceGroupArn?: string; PartitionNumber?: number; SpreadDomain?: string; Tenancy?: string; } export interface AWSEC2EC2Fleet15 { AllocationStrategy?: string; CapacityReservationOptions?: AWSEC2EC2Fleet16; MaxTotalPrice?: string; MinTargetCapacity?: number; SingleAvailabilityZone?: boolean; SingleInstanceType?: boolean; } export interface AWSEC2EC2Fleet16 { UsageStrategy?: string; } export interface AWSEC2EC2Fleet17 { AllocationStrategy?: string; InstanceInterruptionBehavior?: string; InstancePoolsToUseCount?: number; MaintenanceStrategies?: AWSEC2EC2Fleet18; MaxTotalPrice?: string; MinTargetCapacity?: number; SingleAvailabilityZone?: boolean; SingleInstanceType?: boolean; } export interface AWSEC2EC2Fleet18 { CapacityRebalance?: AWSEC2EC2Fleet19; } export interface AWSEC2EC2Fleet19 { ReplacementStrategy?: string; TerminationDelay?: number; } export interface AWSEC2EC2Fleet20 { ResourceType?: string; Tags?: Tag[]; } export interface AWSEC2EC2Fleet21 { DefaultTargetCapacityType?: string; OnDemandTargetCapacity?: number; SpotTargetCapacity?: number; TargetCapacityUnitType?: string; TotalTargetCapacity: number; } export interface AWSEC2EIP { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Domain?: string; InstanceId?: string; NetworkBorderGroup?: string; PublicIpv4Pool?: string; Tags?: Tag[]; TransferAddress?: string; }; Type: 'AWS::EC2::EIP'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2EIPAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AllocationId?: string; EIP?: string; InstanceId?: string; NetworkInterfaceId?: string; PrivateIpAddress?: string; }; Type: 'AWS::EC2::EIPAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2EgressOnlyInternetGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { VpcId: string; }; Type: 'AWS::EC2::EgressOnlyInternetGateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2EnclaveCertificateIamRoleAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CertificateArn: string; RoleArn: string; }; Type: 'AWS::EC2::EnclaveCertificateIamRoleAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2FlowLog { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeliverLogsPermissionArn?: string; DestinationOptions?: AWSEC2FlowLog1; LogDestination?: string; LogDestinationType?: string; LogFormat?: string; LogGroupName?: string; MaxAggregationInterval?: number; ResourceId: string; ResourceType: string; Tags?: Tag[]; TrafficType?: string; }; Type: 'AWS::EC2::FlowLog'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2FlowLog1 { FileFormat: string; HiveCompatiblePartitions: boolean; PerHourPartition: boolean; } export interface AWSEC2GatewayRouteTableAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GatewayId: string; RouteTableId: string; }; Type: 'AWS::EC2::GatewayRouteTableAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2Host { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoPlacement?: string; AvailabilityZone: string; HostRecovery?: string; InstanceFamily?: string; InstanceType?: string; OutpostArn?: string; }; Type: 'AWS::EC2::Host'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2IPAM { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; OperatingRegions?: AWSEC2IPAM1[]; Tags?: Tag[]; }; Type: 'AWS::EC2::IPAM'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2IPAM1 { RegionName: string; } export interface AWSEC2IPAMAllocation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Cidr?: string; Description?: string; IpamPoolId: string; NetmaskLength?: number; }; Type: 'AWS::EC2::IPAMAllocation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2IPAMPool { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AddressFamily: string; AllocationDefaultNetmaskLength?: number; AllocationMaxNetmaskLength?: number; AllocationMinNetmaskLength?: number; AllocationResourceTags?: Tag[]; AutoImport?: boolean; AwsService?: string; Description?: string; IpamScopeId: string; Locale?: string; ProvisionedCidrs?: AWSEC2IPAMPool1[]; PubliclyAdvertisable?: boolean; SourceIpamPoolId?: string; Tags?: Tag[]; }; Type: 'AWS::EC2::IPAMPool'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2IPAMPool1 { Cidr: string; } export interface AWSEC2IPAMScope { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; IpamId: string; Tags?: Tag[]; }; Type: 'AWS::EC2::IPAMScope'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2Instance { Condition?: string; CreationPolicy?: { [k: string]: unknown; }; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AdditionalInfo?: string; Affinity?: string; AvailabilityZone?: string; BlockDeviceMappings?: AWSEC2Instance1[]; CpuOptions?: AWSEC2Instance4; CreditSpecification?: AWSEC2Instance5; DisableApiTermination?: boolean; EbsOptimized?: boolean; ElasticGpuSpecifications?: AWSEC2Instance6[]; ElasticInferenceAccelerators?: AWSEC2Instance7[]; EnclaveOptions?: AWSEC2Instance8; HibernationOptions?: AWSEC2Instance9; HostId?: string; HostResourceGroupArn?: string; IamInstanceProfile?: string; ImageId?: string; InstanceInitiatedShutdownBehavior?: string; InstanceType?: string; Ipv6AddressCount?: number; Ipv6Addresses?: AWSEC2Instance10[]; KernelId?: string; KeyName?: string; LaunchTemplate?: AWSEC2Instance11; LicenseSpecifications?: AWSEC2Instance12[]; Monitoring?: boolean; NetworkInterfaces?: AWSEC2Instance13[]; PlacementGroupName?: string; PrivateDnsNameOptions?: AWSEC2Instance15; PrivateIpAddress?: string; PropagateTagsToVolumeOnCreation?: boolean; RamdiskId?: string; SecurityGroupIds?: string[]; SecurityGroups?: string[]; SourceDestCheck?: boolean; SsmAssociations?: AWSEC2Instance16[]; SubnetId?: string; Tags?: Tag[]; Tenancy?: string; UserData?: string; Volumes?: AWSEC2Instance18[]; }; Type: 'AWS::EC2::Instance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2Instance1 { DeviceName: string; Ebs?: AWSEC2Instance2; NoDevice?: AWSEC2Instance3; VirtualName?: string; } export interface AWSEC2Instance2 { DeleteOnTermination?: boolean; Encrypted?: boolean; Iops?: number; KmsKeyId?: string; SnapshotId?: string; VolumeSize?: number; VolumeType?: string; } export interface AWSEC2Instance3 {} export interface AWSEC2Instance4 { CoreCount?: number; ThreadsPerCore?: number; } export interface AWSEC2Instance5 { CPUCredits?: string; } export interface AWSEC2Instance6 { Type: string; } export interface AWSEC2Instance7 { Count?: number; Type: string; } export interface AWSEC2Instance8 { Enabled?: boolean; } export interface AWSEC2Instance9 { Configured?: boolean; } export interface AWSEC2Instance10 { Ipv6Address: string; } export interface AWSEC2Instance11 { LaunchTemplateId?: string; LaunchTemplateName?: string; Version: string; } export interface AWSEC2Instance12 { LicenseConfigurationArn: string; } export interface AWSEC2Instance13 { AssociateCarrierIpAddress?: boolean; AssociatePublicIpAddress?: boolean; DeleteOnTermination?: boolean; Description?: string; DeviceIndex: string; GroupSet?: string[]; Ipv6AddressCount?: number; Ipv6Addresses?: AWSEC2Instance10[]; NetworkInterfaceId?: string; PrivateIpAddress?: string; PrivateIpAddresses?: AWSEC2Instance14[]; SecondaryPrivateIpAddressCount?: number; SubnetId?: string; } export interface AWSEC2Instance14 { Primary: boolean; PrivateIpAddress: string; } export interface AWSEC2Instance15 { EnableResourceNameDnsAAAARecord?: boolean; EnableResourceNameDnsARecord?: boolean; HostnameType?: string; } export interface AWSEC2Instance16 { AssociationParameters?: AWSEC2Instance17[]; DocumentName: string; } export interface AWSEC2Instance17 { Key: string; Value: string[]; } export interface AWSEC2Instance18 { Device: string; VolumeId: string; } export interface AWSEC2InternetGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Tags?: Tag[]; }; Type: 'AWS::EC2::InternetGateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2KeyPair { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { KeyName: string; KeyType?: string; PublicKeyMaterial?: string; Tags?: Tag[]; }; Type: 'AWS::EC2::KeyPair'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2LaunchTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LaunchTemplateData: AWSEC2LaunchTemplate1; LaunchTemplateName?: string; TagSpecifications?: AWSEC2LaunchTemplate37[]; VersionDescription?: string; }; Type: 'AWS::EC2::LaunchTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2LaunchTemplate1 { BlockDeviceMappings?: AWSEC2LaunchTemplate2[]; CapacityReservationSpecification?: AWSEC2LaunchTemplate4; CpuOptions?: AWSEC2LaunchTemplate6; CreditSpecification?: AWSEC2LaunchTemplate7; DisableApiStop?: boolean; DisableApiTermination?: boolean; EbsOptimized?: boolean; ElasticGpuSpecifications?: AWSEC2LaunchTemplate8[]; ElasticInferenceAccelerators?: AWSEC2LaunchTemplate9[]; EnclaveOptions?: AWSEC2LaunchTemplate10; HibernationOptions?: AWSEC2LaunchTemplate11; IamInstanceProfile?: AWSEC2LaunchTemplate12; ImageId?: string; InstanceInitiatedShutdownBehavior?: string; InstanceMarketOptions?: AWSEC2LaunchTemplate13; InstanceRequirements?: AWSEC2LaunchTemplate15; InstanceType?: string; KernelId?: string; KeyName?: string; LicenseSpecifications?: AWSEC2LaunchTemplate25[]; MaintenanceOptions?: AWSEC2LaunchTemplate26; MetadataOptions?: AWSEC2LaunchTemplate27; Monitoring?: AWSEC2LaunchTemplate28; NetworkInterfaces?: AWSEC2LaunchTemplate29[]; Placement?: AWSEC2LaunchTemplate34; PrivateDnsNameOptions?: AWSEC2LaunchTemplate35; RamDiskId?: string; SecurityGroupIds?: string[]; SecurityGroups?: string[]; TagSpecifications?: AWSEC2LaunchTemplate36[]; UserData?: string; } export interface AWSEC2LaunchTemplate2 { DeviceName?: string; Ebs?: AWSEC2LaunchTemplate3; NoDevice?: string; VirtualName?: string; } export interface AWSEC2LaunchTemplate3 { DeleteOnTermination?: boolean; Encrypted?: boolean; Iops?: number; KmsKeyId?: string; SnapshotId?: string; Throughput?: number; VolumeSize?: number; VolumeType?: string; } export interface AWSEC2LaunchTemplate4 { CapacityReservationPreference?: string; CapacityReservationTarget?: AWSEC2LaunchTemplate5; } export interface AWSEC2LaunchTemplate5 { CapacityReservationId?: string; CapacityReservationResourceGroupArn?: string; } export interface AWSEC2LaunchTemplate6 { CoreCount?: number; ThreadsPerCore?: number; } export interface AWSEC2LaunchTemplate7 { CpuCredits?: string; } export interface AWSEC2LaunchTemplate8 { Type?: string; } export interface AWSEC2LaunchTemplate9 { Count?: number; Type?: string; } export interface AWSEC2LaunchTemplate10 { Enabled?: boolean; } export interface AWSEC2LaunchTemplate11 { Configured?: boolean; } export interface AWSEC2LaunchTemplate12 { Arn?: string; Name?: string; } export interface AWSEC2LaunchTemplate13 { MarketType?: string; SpotOptions?: AWSEC2LaunchTemplate14; } export interface AWSEC2LaunchTemplate14 { BlockDurationMinutes?: number; InstanceInterruptionBehavior?: string; MaxPrice?: string; SpotInstanceType?: string; ValidUntil?: string; } export interface AWSEC2LaunchTemplate15 { AcceleratorCount?: AWSEC2LaunchTemplate16; AcceleratorManufacturers?: string[]; AcceleratorNames?: string[]; AcceleratorTotalMemoryMiB?: AWSEC2LaunchTemplate17; AcceleratorTypes?: string[]; AllowedInstanceTypes?: string[]; BareMetal?: string; BaselineEbsBandwidthMbps?: AWSEC2LaunchTemplate18; BurstablePerformance?: string; CpuManufacturers?: string[]; ExcludedInstanceTypes?: string[]; InstanceGenerations?: string[]; LocalStorage?: string; LocalStorageTypes?: string[]; MemoryGiBPerVCpu?: AWSEC2LaunchTemplate19; MemoryMiB?: AWSEC2LaunchTemplate20; NetworkBandwidthGbps?: AWSEC2LaunchTemplate21; NetworkInterfaceCount?: AWSEC2LaunchTemplate22; OnDemandMaxPricePercentageOverLowestPrice?: number; RequireHibernateSupport?: boolean; SpotMaxPricePercentageOverLowestPrice?: number; TotalLocalStorageGB?: AWSEC2LaunchTemplate23; VCpuCount?: AWSEC2LaunchTemplate24; } export interface AWSEC2LaunchTemplate16 { Max?: number; Min?: number; } export interface AWSEC2LaunchTemplate17 { Max?: number; Min?: number; } export interface AWSEC2LaunchTemplate18 { Max?: number; Min?: number; } export interface AWSEC2LaunchTemplate19 { Max?: number; Min?: number; } export interface AWSEC2LaunchTemplate20 { Max?: number; Min?: number; } export interface AWSEC2LaunchTemplate21 { Max?: number; Min?: number; } export interface AWSEC2LaunchTemplate22 { Max?: number; Min?: number; } export interface AWSEC2LaunchTemplate23 { Max?: number; Min?: number; } export interface AWSEC2LaunchTemplate24 { Max?: number; Min?: number; } export interface AWSEC2LaunchTemplate25 { LicenseConfigurationArn?: string; } export interface AWSEC2LaunchTemplate26 { AutoRecovery?: string; } export interface AWSEC2LaunchTemplate27 { HttpEndpoint?: string; HttpProtocolIpv6?: string; HttpPutResponseHopLimit?: number; HttpTokens?: string; InstanceMetadataTags?: string; } export interface AWSEC2LaunchTemplate28 { Enabled?: boolean; } export interface AWSEC2LaunchTemplate29 { AssociateCarrierIpAddress?: boolean; AssociatePublicIpAddress?: boolean; DeleteOnTermination?: boolean; Description?: string; DeviceIndex?: number; Groups?: string[]; InterfaceType?: string; Ipv4PrefixCount?: number; Ipv4Prefixes?: AWSEC2LaunchTemplate30[]; Ipv6AddressCount?: number; Ipv6Addresses?: AWSEC2LaunchTemplate31[]; Ipv6PrefixCount?: number; Ipv6Prefixes?: AWSEC2LaunchTemplate32[]; NetworkCardIndex?: number; NetworkInterfaceId?: string; PrivateIpAddress?: string; PrivateIpAddresses?: AWSEC2LaunchTemplate33[]; SecondaryPrivateIpAddressCount?: number; SubnetId?: string; } export interface AWSEC2LaunchTemplate30 { Ipv4Prefix?: string; } export interface AWSEC2LaunchTemplate31 { Ipv6Address?: string; } export interface AWSEC2LaunchTemplate32 { Ipv6Prefix?: string; } export interface AWSEC2LaunchTemplate33 { Primary?: boolean; PrivateIpAddress?: string; } export interface AWSEC2LaunchTemplate34 { Affinity?: string; AvailabilityZone?: string; GroupId?: string; GroupName?: string; HostId?: string; HostResourceGroupArn?: string; PartitionNumber?: number; SpreadDomain?: string; Tenancy?: string; } export interface AWSEC2LaunchTemplate35 { EnableResourceNameDnsAAAARecord?: boolean; EnableResourceNameDnsARecord?: boolean; HostnameType?: string; } export interface AWSEC2LaunchTemplate36 { ResourceType?: string; Tags?: Tag[]; } export interface AWSEC2LaunchTemplate37 { ResourceType?: string; Tags?: Tag[]; } export interface AWSEC2LocalGatewayRoute { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DestinationCidrBlock: string; LocalGatewayRouteTableId: string; LocalGatewayVirtualInterfaceGroupId?: string; NetworkInterfaceId?: string; }; Type: 'AWS::EC2::LocalGatewayRoute'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2LocalGatewayRouteTableVPCAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LocalGatewayRouteTableId: string; Tags?: Tag[]; VpcId: string; }; Type: 'AWS::EC2::LocalGatewayRouteTableVPCAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NatGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllocationId?: string; ConnectivityType?: string; PrivateIpAddress?: string; SubnetId: string; Tags?: Tag[]; }; Type: 'AWS::EC2::NatGateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkAcl { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Tags?: Tag[]; VpcId: string; }; Type: 'AWS::EC2::NetworkAcl'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkAclEntry { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CidrBlock?: string; Egress?: boolean; Icmp?: AWSEC2NetworkAclEntry1; Ipv6CidrBlock?: string; NetworkAclId: string; PortRange?: AWSEC2NetworkAclEntry2; Protocol: number; RuleAction: string; RuleNumber: number; }; Type: 'AWS::EC2::NetworkAclEntry'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkAclEntry1 { Code?: number; Type?: number; } export interface AWSEC2NetworkAclEntry2 { From?: number; To?: number; } export interface AWSEC2NetworkInsightsAccessScope { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ExcludePaths?: AWSEC2NetworkInsightsAccessScope1[]; MatchPaths?: AWSEC2NetworkInsightsAccessScope1[]; Tags?: Tag[]; }; Type: 'AWS::EC2::NetworkInsightsAccessScope'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkInsightsAccessScope1 { Destination?: AWSEC2NetworkInsightsAccessScope2; Source?: AWSEC2NetworkInsightsAccessScope2; ThroughResources?: AWSEC2NetworkInsightsAccessScope5[]; } export interface AWSEC2NetworkInsightsAccessScope2 { PacketHeaderStatement?: AWSEC2NetworkInsightsAccessScope3; ResourceStatement?: AWSEC2NetworkInsightsAccessScope4; } export interface AWSEC2NetworkInsightsAccessScope3 { DestinationAddresses?: string[]; DestinationPorts?: string[]; DestinationPrefixLists?: string[]; Protocols?: string[]; SourceAddresses?: string[]; SourcePorts?: string[]; SourcePrefixLists?: string[]; } export interface AWSEC2NetworkInsightsAccessScope4 { ResourceTypes?: string[]; Resources?: string[]; } export interface AWSEC2NetworkInsightsAccessScope5 { ResourceStatement?: AWSEC2NetworkInsightsAccessScope4; } export interface AWSEC2NetworkInsightsAccessScopeAnalysis { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { NetworkInsightsAccessScopeId: string; Tags?: Tag[]; }; Type: 'AWS::EC2::NetworkInsightsAccessScopeAnalysis'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkInsightsAnalysis { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdditionalAccounts?: string[]; FilterInArns?: string[]; NetworkInsightsPathId: string; Tags?: Tag[]; }; Type: 'AWS::EC2::NetworkInsightsAnalysis'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkInsightsPath { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Destination: string; DestinationIp?: string; DestinationPort?: number; Protocol: string; Source: string; SourceIp?: string; Tags?: Tag[]; }; Type: 'AWS::EC2::NetworkInsightsPath'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkInterface { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; GroupSet?: string[]; InterfaceType?: string; Ipv6AddressCount?: number; Ipv6Addresses?: AWSEC2NetworkInterface1[]; PrivateIpAddress?: string; PrivateIpAddresses?: AWSEC2NetworkInterface2[]; SecondaryPrivateIpAddressCount?: number; SourceDestCheck?: boolean; SubnetId: string; Tags?: Tag[]; }; Type: 'AWS::EC2::NetworkInterface'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkInterface1 { Ipv6Address: string; } export interface AWSEC2NetworkInterface2 { Primary: boolean; PrivateIpAddress: string; } export interface AWSEC2NetworkInterfaceAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeleteOnTermination?: boolean; DeviceIndex: string; InstanceId: string; NetworkInterfaceId: string; }; Type: 'AWS::EC2::NetworkInterfaceAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkInterfacePermission { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AwsAccountId: string; NetworkInterfaceId: string; Permission: string; }; Type: 'AWS::EC2::NetworkInterfacePermission'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2NetworkPerformanceMetricSubscription { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Destination: string; Metric: string; Source: string; Statistic: string; }; Type: 'AWS::EC2::NetworkPerformanceMetricSubscription'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2PlacementGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { PartitionCount?: number; SpreadLevel?: string; Strategy?: string; Tags?: Tag[]; }; Type: 'AWS::EC2::PlacementGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2PrefixList { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AddressFamily: string; Entries?: AWSEC2PrefixList1[]; MaxEntries: number; PrefixListName: string; Tags?: Tag[]; }; Type: 'AWS::EC2::PrefixList'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2PrefixList1 { Cidr: string; Description?: string; } export interface AWSEC2Route { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CarrierGatewayId?: string; DestinationCidrBlock?: string; DestinationIpv6CidrBlock?: string; EgressOnlyInternetGatewayId?: string; GatewayId?: string; InstanceId?: string; LocalGatewayId?: string; NatGatewayId?: string; NetworkInterfaceId?: string; RouteTableId: string; TransitGatewayId?: string; VpcEndpointId?: string; VpcPeeringConnectionId?: string; }; Type: 'AWS::EC2::Route'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2RouteTable { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Tags?: Tag[]; VpcId: string; }; Type: 'AWS::EC2::RouteTable'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2SecurityGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GroupDescription: string; GroupName?: string; SecurityGroupEgress?: AWSEC2SecurityGroup1[]; SecurityGroupIngress?: AWSEC2SecurityGroup2[]; Tags?: Tag[]; VpcId?: string; }; Type: 'AWS::EC2::SecurityGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2SecurityGroup1 { CidrIp?: string; CidrIpv6?: string; Description?: string; DestinationPrefixListId?: string; DestinationSecurityGroupId?: string; FromPort?: number; IpProtocol: string; ToPort?: number; } export interface AWSEC2SecurityGroup2 { CidrIp?: string; CidrIpv6?: string; Description?: string; FromPort?: number; IpProtocol: string; SourcePrefixListId?: string; SourceSecurityGroupId?: string; SourceSecurityGroupName?: string; SourceSecurityGroupOwnerId?: string; ToPort?: number; } export interface AWSEC2SecurityGroupEgress { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CidrIp?: string; CidrIpv6?: string; Description?: string; DestinationPrefixListId?: string; DestinationSecurityGroupId?: string; FromPort?: number; GroupId: string; IpProtocol: string; ToPort?: number; }; Type: 'AWS::EC2::SecurityGroupEgress'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2SecurityGroupIngress { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CidrIp?: string; CidrIpv6?: string; Description?: string; FromPort?: number; GroupId?: string; GroupName?: string; IpProtocol: string; SourcePrefixListId?: string; SourceSecurityGroupId?: string; SourceSecurityGroupName?: string; SourceSecurityGroupOwnerId?: string; ToPort?: number; }; Type: 'AWS::EC2::SecurityGroupIngress'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2SpotFleet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { SpotFleetRequestConfigData: AWSEC2SpotFleet1; }; Type: 'AWS::EC2::SpotFleet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2SpotFleet1 { AllocationStrategy?: string; Context?: string; ExcessCapacityTerminationPolicy?: string; IamFleetRole: string; InstanceInterruptionBehavior?: string; InstancePoolsToUseCount?: number; LaunchSpecifications?: AWSEC2SpotFleet2[]; LaunchTemplateConfigs?: AWSEC2SpotFleet23[]; LoadBalancersConfig?: AWSEC2SpotFleet26; OnDemandAllocationStrategy?: string; OnDemandMaxTotalPrice?: string; OnDemandTargetCapacity?: number; ReplaceUnhealthyInstances?: boolean; SpotMaintenanceStrategies?: AWSEC2SpotFleet31; SpotMaxTotalPrice?: string; SpotPrice?: string; TagSpecifications?: AWSEC2SpotFleet22[]; TargetCapacity: number; TargetCapacityUnitType?: string; TerminateInstancesWithExpiration?: boolean; Type?: string; ValidFrom?: string; ValidUntil?: string; } export interface AWSEC2SpotFleet2 { BlockDeviceMappings?: AWSEC2SpotFleet3[]; EbsOptimized?: boolean; IamInstanceProfile?: AWSEC2SpotFleet5; ImageId: string; InstanceRequirements?: AWSEC2SpotFleet6; InstanceType?: string; KernelId?: string; KeyName?: string; Monitoring?: AWSEC2SpotFleet16; NetworkInterfaces?: AWSEC2SpotFleet17[]; Placement?: AWSEC2SpotFleet20; RamdiskId?: string; SecurityGroups?: AWSEC2SpotFleet21[]; SpotPrice?: string; SubnetId?: string; TagSpecifications?: AWSEC2SpotFleet22[]; UserData?: string; WeightedCapacity?: number; } export interface AWSEC2SpotFleet3 { DeviceName: string; Ebs?: AWSEC2SpotFleet4; NoDevice?: string; VirtualName?: string; } export interface AWSEC2SpotFleet4 { DeleteOnTermination?: boolean; Encrypted?: boolean; Iops?: number; SnapshotId?: string; VolumeSize?: number; VolumeType?: string; } export interface AWSEC2SpotFleet5 { Arn?: string; } export interface AWSEC2SpotFleet6 { AcceleratorCount?: AWSEC2SpotFleet7; AcceleratorManufacturers?: string[]; AcceleratorNames?: string[]; AcceleratorTotalMemoryMiB?: AWSEC2SpotFleet8; AcceleratorTypes?: string[]; AllowedInstanceTypes?: string[]; BareMetal?: string; BaselineEbsBandwidthMbps?: AWSEC2SpotFleet9; BurstablePerformance?: string; CpuManufacturers?: string[]; ExcludedInstanceTypes?: string[]; InstanceGenerations?: string[]; LocalStorage?: string; LocalStorageTypes?: string[]; MemoryGiBPerVCpu?: AWSEC2SpotFleet10; MemoryMiB?: AWSEC2SpotFleet11; NetworkBandwidthGbps?: AWSEC2SpotFleet12; NetworkInterfaceCount?: AWSEC2SpotFleet13; OnDemandMaxPricePercentageOverLowestPrice?: number; RequireHibernateSupport?: boolean; SpotMaxPricePercentageOverLowestPrice?: number; TotalLocalStorageGB?: AWSEC2SpotFleet14; VCpuCount?: AWSEC2SpotFleet15; } export interface AWSEC2SpotFleet7 { Max?: number; Min?: number; } export interface AWSEC2SpotFleet8 { Max?: number; Min?: number; } export interface AWSEC2SpotFleet9 { Max?: number; Min?: number; } export interface AWSEC2SpotFleet10 { Max?: number; Min?: number; } export interface AWSEC2SpotFleet11 { Max?: number; Min?: number; } export interface AWSEC2SpotFleet12 { Max?: number; Min?: number; } export interface AWSEC2SpotFleet13 { Max?: number; Min?: number; } export interface AWSEC2SpotFleet14 { Max?: number; Min?: number; } export interface AWSEC2SpotFleet15 { Max?: number; Min?: number; } export interface AWSEC2SpotFleet16 { Enabled?: boolean; } export interface AWSEC2SpotFleet17 { AssociatePublicIpAddress?: boolean; DeleteOnTermination?: boolean; Description?: string; DeviceIndex?: number; Groups?: string[]; Ipv6AddressCount?: number; Ipv6Addresses?: AWSEC2SpotFleet18[]; NetworkInterfaceId?: string; PrivateIpAddresses?: AWSEC2SpotFleet19[]; SecondaryPrivateIpAddressCount?: number; SubnetId?: string; } export interface AWSEC2SpotFleet18 { Ipv6Address: string; } export interface AWSEC2SpotFleet19 { Primary?: boolean; PrivateIpAddress: string; } export interface AWSEC2SpotFleet20 { AvailabilityZone?: string; GroupName?: string; Tenancy?: string; } export interface AWSEC2SpotFleet21 { GroupId: string; } export interface AWSEC2SpotFleet22 { ResourceType?: string; Tags?: Tag[]; } export interface AWSEC2SpotFleet23 { LaunchTemplateSpecification?: AWSEC2SpotFleet24; Overrides?: AWSEC2SpotFleet25[]; } export interface AWSEC2SpotFleet24 { LaunchTemplateId?: string; LaunchTemplateName?: string; Version: string; } export interface AWSEC2SpotFleet25 { AvailabilityZone?: string; InstanceRequirements?: AWSEC2SpotFleet6; InstanceType?: string; Priority?: number; SpotPrice?: string; SubnetId?: string; WeightedCapacity?: number; } export interface AWSEC2SpotFleet26 { ClassicLoadBalancersConfig?: AWSEC2SpotFleet27; TargetGroupsConfig?: AWSEC2SpotFleet29; } export interface AWSEC2SpotFleet27 { ClassicLoadBalancers: AWSEC2SpotFleet28[]; } export interface AWSEC2SpotFleet28 { Name: string; } export interface AWSEC2SpotFleet29 { TargetGroups: AWSEC2SpotFleet30[]; } export interface AWSEC2SpotFleet30 { Arn: string; } export interface AWSEC2SpotFleet31 { CapacityRebalance?: AWSEC2SpotFleet32; } export interface AWSEC2SpotFleet32 { ReplacementStrategy?: string; TerminationDelay?: number; } export interface AWSEC2Subnet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssignIpv6AddressOnCreation?: boolean; AvailabilityZone?: string; AvailabilityZoneId?: string; CidrBlock?: string; EnableDns64?: boolean; Ipv6CidrBlock?: string; Ipv6Native?: boolean; MapPublicIpOnLaunch?: boolean; OutpostArn?: string; PrivateDnsNameOptionsOnLaunch?: AWSEC2Subnet1; Tags?: Tag[]; VpcId: string; }; Type: 'AWS::EC2::Subnet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2Subnet1 { EnableResourceNameDnsAAAARecord?: boolean; EnableResourceNameDnsARecord?: boolean; HostnameType?: string; } export interface AWSEC2SubnetCidrBlock { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Ipv6CidrBlock: string; SubnetId: string; }; Type: 'AWS::EC2::SubnetCidrBlock'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2SubnetNetworkAclAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { NetworkAclId: string; SubnetId: string; }; Type: 'AWS::EC2::SubnetNetworkAclAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2SubnetRouteTableAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { RouteTableId: string; SubnetId: string; }; Type: 'AWS::EC2::SubnetRouteTableAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TrafficMirrorFilter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; NetworkServices?: string[]; Tags?: Tag[]; }; Type: 'AWS::EC2::TrafficMirrorFilter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TrafficMirrorFilterRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; DestinationCidrBlock: string; DestinationPortRange?: AWSEC2TrafficMirrorFilterRule1; Protocol?: number; RuleAction: string; RuleNumber: number; SourceCidrBlock: string; SourcePortRange?: AWSEC2TrafficMirrorFilterRule1; TrafficDirection: string; TrafficMirrorFilterId: string; }; Type: 'AWS::EC2::TrafficMirrorFilterRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TrafficMirrorFilterRule1 { FromPort: number; ToPort: number; } export interface AWSEC2TrafficMirrorSession { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; NetworkInterfaceId: string; PacketLength?: number; SessionNumber: number; Tags?: Tag[]; TrafficMirrorFilterId: string; TrafficMirrorTargetId: string; VirtualNetworkId?: number; }; Type: 'AWS::EC2::TrafficMirrorSession'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TrafficMirrorTarget { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; GatewayLoadBalancerEndpointId?: string; NetworkInterfaceId?: string; NetworkLoadBalancerArn?: string; Tags?: Tag[]; }; Type: 'AWS::EC2::TrafficMirrorTarget'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AmazonSideAsn?: number; AssociationDefaultRouteTableId?: string; AutoAcceptSharedAttachments?: string; DefaultRouteTableAssociation?: string; DefaultRouteTablePropagation?: string; Description?: string; DnsSupport?: string; MulticastSupport?: string; PropagationDefaultRouteTableId?: string; Tags?: Tag[]; TransitGatewayCidrBlocks?: string[]; VpnEcmpSupport?: string; }; Type: 'AWS::EC2::TransitGateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Options?: AWSEC2TransitGatewayAttachment1; SubnetIds: string[]; Tags?: Tag[]; TransitGatewayId: string; VpcId: string; }; Type: 'AWS::EC2::TransitGatewayAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayAttachment1 { ApplianceModeSupport?: string; DnsSupport?: string; Ipv6Support?: string; } export interface AWSEC2TransitGatewayConnect { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Options: AWSEC2TransitGatewayConnect1; Tags?: Tag[]; TransportTransitGatewayAttachmentId: string; }; Type: 'AWS::EC2::TransitGatewayConnect'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayConnect1 { Protocol?: string; } export interface AWSEC2TransitGatewayMulticastDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Options?: AWSEC2TransitGatewayMulticastDomain1; Tags?: Tag[]; TransitGatewayId: string; }; Type: 'AWS::EC2::TransitGatewayMulticastDomain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayMulticastDomain1 { AutoAcceptSharedAssociations?: string; Igmpv2Support?: string; StaticSourcesSupport?: string; } export interface AWSEC2TransitGatewayMulticastDomainAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { SubnetId: string; TransitGatewayAttachmentId: string; TransitGatewayMulticastDomainId: string; }; Type: 'AWS::EC2::TransitGatewayMulticastDomainAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayMulticastGroupMember { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GroupIpAddress: string; NetworkInterfaceId: string; TransitGatewayMulticastDomainId: string; }; Type: 'AWS::EC2::TransitGatewayMulticastGroupMember'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayMulticastGroupSource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GroupIpAddress: string; NetworkInterfaceId: string; TransitGatewayMulticastDomainId: string; }; Type: 'AWS::EC2::TransitGatewayMulticastGroupSource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayPeeringAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PeerAccountId: string; PeerRegion: string; PeerTransitGatewayId: string; Tags?: Tag[]; TransitGatewayId: string; }; Type: 'AWS::EC2::TransitGatewayPeeringAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayRoute { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Blackhole?: boolean; DestinationCidrBlock?: string; TransitGatewayAttachmentId?: string; TransitGatewayRouteTableId: string; }; Type: 'AWS::EC2::TransitGatewayRoute'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayRouteTable { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Tags?: Tag[]; TransitGatewayId: string; }; Type: 'AWS::EC2::TransitGatewayRouteTable'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayRouteTableAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { TransitGatewayAttachmentId: string; TransitGatewayRouteTableId: string; }; Type: 'AWS::EC2::TransitGatewayRouteTableAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayRouteTablePropagation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { TransitGatewayAttachmentId: string; TransitGatewayRouteTableId: string; }; Type: 'AWS::EC2::TransitGatewayRouteTablePropagation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayVpcAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AddSubnetIds?: string[]; Options?: AWSEC2TransitGatewayVpcAttachment1; RemoveSubnetIds?: string[]; SubnetIds: string[]; Tags?: Tag[]; TransitGatewayId: string; VpcId: string; }; Type: 'AWS::EC2::TransitGatewayVpcAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2TransitGatewayVpcAttachment1 { ApplianceModeSupport?: string; DnsSupport?: string; Ipv6Support?: string; } export interface AWSEC2VPC { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CidrBlock?: string; EnableDnsHostnames?: boolean; EnableDnsSupport?: boolean; InstanceTenancy?: string; Ipv4IpamPoolId?: string; Ipv4NetmaskLength?: number; Tags?: Tag[]; }; Type: 'AWS::EC2::VPC'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPCCidrBlock { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AmazonProvidedIpv6CidrBlock?: boolean; CidrBlock?: string; Ipv4IpamPoolId?: string; Ipv4NetmaskLength?: number; Ipv6CidrBlock?: string; Ipv6IpamPoolId?: string; Ipv6NetmaskLength?: number; Ipv6Pool?: string; VpcId: string; }; Type: 'AWS::EC2::VPCCidrBlock'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPCDHCPOptionsAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DhcpOptionsId: string; VpcId: string; }; Type: 'AWS::EC2::VPCDHCPOptionsAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPCEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PolicyDocument?: { [k: string]: unknown; }; PrivateDnsEnabled?: boolean; RouteTableIds?: string[]; SecurityGroupIds?: string[]; ServiceName: string; SubnetIds?: string[]; VpcEndpointType?: string; VpcId: string; }; Type: 'AWS::EC2::VPCEndpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPCEndpointConnectionNotification { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectionEvents: string[]; ConnectionNotificationArn: string; ServiceId?: string; VPCEndpointId?: string; }; Type: 'AWS::EC2::VPCEndpointConnectionNotification'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPCEndpointService { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AcceptanceRequired?: boolean; ContributorInsightsEnabled?: boolean; GatewayLoadBalancerArns?: string[]; NetworkLoadBalancerArns?: string[]; PayerResponsibility?: string; }; Type: 'AWS::EC2::VPCEndpointService'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPCEndpointServicePermissions { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowedPrincipals?: string[]; ServiceId: string; }; Type: 'AWS::EC2::VPCEndpointServicePermissions'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPCGatewayAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InternetGatewayId?: string; VpcId: string; VpnGatewayId?: string; }; Type: 'AWS::EC2::VPCGatewayAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPCPeeringConnection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PeerOwnerId?: string; PeerRegion?: string; PeerRoleArn?: string; PeerVpcId: string; Tags?: Tag[]; VpcId: string; }; Type: 'AWS::EC2::VPCPeeringConnection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPNConnection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CustomerGatewayId: string; StaticRoutesOnly?: boolean; Tags?: Tag[]; TransitGatewayId?: string; Type: string; VpnGatewayId?: string; VpnTunnelOptionsSpecifications?: AWSEC2VPNConnection1[]; }; Type: 'AWS::EC2::VPNConnection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPNConnection1 { PreSharedKey?: string; TunnelInsideCidr?: string; } export interface AWSEC2VPNConnectionRoute { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DestinationCidrBlock: string; VpnConnectionId: string; }; Type: 'AWS::EC2::VPNConnectionRoute'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPNGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AmazonSideAsn?: number; Tags?: Tag[]; Type: string; }; Type: 'AWS::EC2::VPNGateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VPNGatewayRoutePropagation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { RouteTableIds: string[]; VpnGatewayId: string; }; Type: 'AWS::EC2::VPNGatewayRoutePropagation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2Volume { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoEnableIO?: boolean; AvailabilityZone: string; Encrypted?: boolean; Iops?: number; KmsKeyId?: string; MultiAttachEnabled?: boolean; OutpostArn?: string; Size?: number; SnapshotId?: string; Tags?: Tag[]; Throughput?: number; VolumeType?: string; }; Type: 'AWS::EC2::Volume'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEC2VolumeAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Device: string; InstanceId: string; VolumeId: string; }; Type: 'AWS::EC2::VolumeAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECRPublicRepository { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { RepositoryCatalogData?: AWSECRPublicRepository1; RepositoryName?: string; RepositoryPolicyText?: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::ECR::PublicRepository'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECRPublicRepository1 { AboutText?: string; Architectures?: string[]; OperatingSystems?: string[]; RepositoryDescription?: string; UsageText?: string; } export interface AWSECRPullThroughCacheRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { EcrRepositoryPrefix?: string; UpstreamRegistryUrl?: string; }; Type: 'AWS::ECR::PullThroughCacheRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECRRegistryPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PolicyText: { [k: string]: unknown; }; }; Type: 'AWS::ECR::RegistryPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECRReplicationConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ReplicationConfiguration: AWSECRReplicationConfiguration1; }; Type: 'AWS::ECR::ReplicationConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECRReplicationConfiguration1 { Rules: AWSECRReplicationConfiguration2[]; } export interface AWSECRReplicationConfiguration2 { Destinations: AWSECRReplicationConfiguration3[]; RepositoryFilters?: AWSECRReplicationConfiguration4[]; } export interface AWSECRReplicationConfiguration3 { Region: string; RegistryId: string; } export interface AWSECRReplicationConfiguration4 { Filter: string; FilterType: string; } export interface AWSECRRepository { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { EncryptionConfiguration?: AWSECRRepository1; ImageScanningConfiguration?: AWSECRRepository2; ImageTagMutability?: string; LifecyclePolicy?: AWSECRRepository3; RepositoryName?: string; RepositoryPolicyText?: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::ECR::Repository'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECRRepository1 { EncryptionType: string; KmsKey?: string; } export interface AWSECRRepository2 { ScanOnPush?: boolean; } export interface AWSECRRepository3 { LifecyclePolicyText?: string; RegistryId?: string; } export interface AWSECSCapacityProvider { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoScalingGroupProvider: AWSECSCapacityProvider1; Name?: string; Tags?: Tag[]; }; Type: 'AWS::ECS::CapacityProvider'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECSCapacityProvider1 { AutoScalingGroupArn: string; ManagedScaling?: AWSECSCapacityProvider2; ManagedTerminationProtection?: string; } export interface AWSECSCapacityProvider2 { InstanceWarmupPeriod?: number; MaximumScalingStepSize?: number; MinimumScalingStepSize?: number; Status?: string; TargetCapacity?: number; } export interface AWSECSCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CapacityProviders?: string[]; ClusterName?: string; ClusterSettings?: AWSECSCluster1[]; Configuration?: AWSECSCluster2; DefaultCapacityProviderStrategy?: AWSECSCluster5[]; ServiceConnectDefaults?: AWSECSCluster6; Tags?: Tag[]; }; Type: 'AWS::ECS::Cluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECSCluster1 { Name?: string; Value?: string; } export interface AWSECSCluster2 { ExecuteCommandConfiguration?: AWSECSCluster3; } export interface AWSECSCluster3 { KmsKeyId?: string; LogConfiguration?: AWSECSCluster4; Logging?: string; } export interface AWSECSCluster4 { CloudWatchEncryptionEnabled?: boolean; CloudWatchLogGroupName?: string; S3BucketName?: string; S3EncryptionEnabled?: boolean; S3KeyPrefix?: string; } export interface AWSECSCluster5 { Base?: number; CapacityProvider?: string; Weight?: number; } export interface AWSECSCluster6 { Namespace?: string; } export interface AWSECSClusterCapacityProviderAssociations { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CapacityProviders: string[]; Cluster: string; DefaultCapacityProviderStrategy: AWSECSClusterCapacityProviderAssociations1[]; }; Type: 'AWS::ECS::ClusterCapacityProviderAssociations'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECSClusterCapacityProviderAssociations1 { Base?: number; CapacityProvider: string; Weight?: number; } export interface AWSECSPrimaryTaskSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Cluster: string; Service: string; TaskSetId: string; }; Type: 'AWS::ECS::PrimaryTaskSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECSService { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CapacityProviderStrategy?: AWSECSService1[]; Cluster?: string; DeploymentConfiguration?: AWSECSService2; DeploymentController?: AWSECSService5; DesiredCount?: number; EnableECSManagedTags?: boolean; EnableExecuteCommand?: boolean; HealthCheckGracePeriodSeconds?: number; LaunchType?: string; LoadBalancers?: AWSECSService6[]; NetworkConfiguration?: AWSECSService7; PlacementConstraints?: AWSECSService9[]; PlacementStrategies?: AWSECSService10[]; PlatformVersion?: string; PropagateTags?: string; Role?: string; SchedulingStrategy?: string; ServiceConnectConfiguration?: AWSECSService11; ServiceName?: string; ServiceRegistries?: AWSECSService16[]; Tags?: Tag[]; TaskDefinition?: string; }; Type: 'AWS::ECS::Service'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECSService1 { Base?: number; CapacityProvider?: string; Weight?: number; } export interface AWSECSService2 { Alarms?: AWSECSService3; DeploymentCircuitBreaker?: AWSECSService4; MaximumPercent?: number; MinimumHealthyPercent?: number; } export interface AWSECSService3 { AlarmNames: string[]; Enable: boolean; Rollback: boolean; } export interface AWSECSService4 { Enable: boolean; Rollback: boolean; } export interface AWSECSService5 { Type?: string; } export interface AWSECSService6 { ContainerName?: string; ContainerPort?: number; LoadBalancerName?: string; TargetGroupArn?: string; } export interface AWSECSService7 { AwsvpcConfiguration?: AWSECSService8; } export interface AWSECSService8 { AssignPublicIp?: string; SecurityGroups?: string[]; Subnets?: string[]; } export interface AWSECSService9 { Expression?: string; Type: string; } export interface AWSECSService10 { Field?: string; Type: string; } export interface AWSECSService11 { Enabled: boolean; LogConfiguration?: AWSECSService12; Namespace?: string; Services?: AWSECSService14[]; } export interface AWSECSService12 { LogDriver?: string; Options?: { [k: string]: unknown; }; SecretOptions?: AWSECSService13[]; } export interface AWSECSService13 { Name: string; ValueFrom: string; } export interface AWSECSService14 { ClientAliases?: AWSECSService15[]; DiscoveryName?: string; IngressPortOverride?: number; PortName: string; } export interface AWSECSService15 { DnsName?: string; Port: number; } export interface AWSECSService16 { ContainerName?: string; ContainerPort?: number; Port?: number; RegistryArn?: string; } export interface AWSECSTaskDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ContainerDefinitions?: AWSECSTaskDefinition1[]; Cpu?: string; EphemeralStorage?: AWSECSTaskDefinition21; ExecutionRoleArn?: string; Family?: string; InferenceAccelerators?: AWSECSTaskDefinition22[]; IpcMode?: string; Memory?: string; NetworkMode?: string; PidMode?: string; PlacementConstraints?: AWSECSTaskDefinition23[]; ProxyConfiguration?: AWSECSTaskDefinition24; RequiresCompatibilities?: string[]; RuntimePlatform?: AWSECSTaskDefinition25; Tags?: Tag[]; TaskRoleArn?: string; Volumes?: AWSECSTaskDefinition26[]; }; Type: 'AWS::ECS::TaskDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECSTaskDefinition1 { Command?: string[]; Cpu?: number; DependsOn?: AWSECSTaskDefinition2[]; DisableNetworking?: boolean; DnsSearchDomains?: string[]; DnsServers?: string[]; DockerLabels?: { [k: string]: unknown; }; DockerSecurityOptions?: string[]; EntryPoint?: string[]; Environment?: AWSECSTaskDefinition3[]; EnvironmentFiles?: AWSECSTaskDefinition4[]; Essential?: boolean; ExtraHosts?: AWSECSTaskDefinition5[]; FirelensConfiguration?: AWSECSTaskDefinition6; HealthCheck?: AWSECSTaskDefinition7; Hostname?: string; Image: string; Interactive?: boolean; Links?: string[]; LinuxParameters?: AWSECSTaskDefinition8; LogConfiguration?: AWSECSTaskDefinition12; Memory?: number; MemoryReservation?: number; MountPoints?: AWSECSTaskDefinition14[]; Name: string; PortMappings?: AWSECSTaskDefinition15[]; Privileged?: boolean; PseudoTerminal?: boolean; ReadonlyRootFilesystem?: boolean; RepositoryCredentials?: AWSECSTaskDefinition16; ResourceRequirements?: AWSECSTaskDefinition17[]; Secrets?: AWSECSTaskDefinition13[]; StartTimeout?: number; StopTimeout?: number; SystemControls?: AWSECSTaskDefinition18[]; Ulimits?: AWSECSTaskDefinition19[]; User?: string; VolumesFrom?: AWSECSTaskDefinition20[]; WorkingDirectory?: string; } export interface AWSECSTaskDefinition2 { Condition?: string; ContainerName?: string; } export interface AWSECSTaskDefinition3 { Name?: string; Value?: string; } export interface AWSECSTaskDefinition4 { Type?: string; Value?: string; } export interface AWSECSTaskDefinition5 { Hostname?: string; IpAddress?: string; } export interface AWSECSTaskDefinition6 { Options?: { [k: string]: unknown; }; Type?: string; } export interface AWSECSTaskDefinition7 { Command?: string[]; Interval?: number; Retries?: number; StartPeriod?: number; Timeout?: number; } export interface AWSECSTaskDefinition8 { Capabilities?: AWSECSTaskDefinition9; Devices?: AWSECSTaskDefinition10[]; InitProcessEnabled?: boolean; MaxSwap?: number; SharedMemorySize?: number; Swappiness?: number; Tmpfs?: AWSECSTaskDefinition11[]; } export interface AWSECSTaskDefinition9 { Add?: string[]; Drop?: string[]; } export interface AWSECSTaskDefinition10 { ContainerPath?: string; HostPath?: string; Permissions?: string[]; } export interface AWSECSTaskDefinition11 { ContainerPath?: string; MountOptions?: string[]; Size: number; } export interface AWSECSTaskDefinition12 { LogDriver: string; Options?: { [k: string]: unknown; }; SecretOptions?: AWSECSTaskDefinition13[]; } export interface AWSECSTaskDefinition13 { Name: string; ValueFrom: string; } export interface AWSECSTaskDefinition14 { ContainerPath?: string; ReadOnly?: boolean; SourceVolume?: string; } export interface AWSECSTaskDefinition15 { AppProtocol?: string; ContainerPort?: number; ContainerPortRange?: string; HostPort?: number; Name?: string; Protocol?: string; } export interface AWSECSTaskDefinition16 { CredentialsParameter?: string; } export interface AWSECSTaskDefinition17 { Type: string; Value: string; } export interface AWSECSTaskDefinition18 { Namespace?: string; Value?: string; } export interface AWSECSTaskDefinition19 { HardLimit: number; Name: string; SoftLimit: number; } export interface AWSECSTaskDefinition20 { ReadOnly?: boolean; SourceContainer?: string; } export interface AWSECSTaskDefinition21 { SizeInGiB?: number; } export interface AWSECSTaskDefinition22 { DeviceName?: string; DeviceType?: string; } export interface AWSECSTaskDefinition23 { Expression?: string; Type: string; } export interface AWSECSTaskDefinition24 { ContainerName: string; ProxyConfigurationProperties?: AWSECSTaskDefinition3[]; Type?: string; } export interface AWSECSTaskDefinition25 { CpuArchitecture?: string; OperatingSystemFamily?: string; } export interface AWSECSTaskDefinition26 { DockerVolumeConfiguration?: AWSECSTaskDefinition27; EFSVolumeConfiguration?: AWSECSTaskDefinition28; Host?: AWSECSTaskDefinition30; Name?: string; } export interface AWSECSTaskDefinition27 { Autoprovision?: boolean; Driver?: string; DriverOpts?: { [k: string]: unknown; }; Labels?: { [k: string]: unknown; }; Scope?: string; } export interface AWSECSTaskDefinition28 { AuthorizationConfig?: AWSECSTaskDefinition29; FilesystemId: string; RootDirectory?: string; TransitEncryption?: string; TransitEncryptionPort?: number; } export interface AWSECSTaskDefinition29 { AccessPointId?: string; IAM?: string; } export interface AWSECSTaskDefinition30 { SourcePath?: string; } export interface AWSECSTaskSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Cluster: string; ExternalId?: string; LaunchType?: string; LoadBalancers?: AWSECSTaskSet1[]; NetworkConfiguration?: AWSECSTaskSet2; PlatformVersion?: string; Scale?: AWSECSTaskSet4; Service: string; ServiceRegistries?: AWSECSTaskSet5[]; TaskDefinition: string; }; Type: 'AWS::ECS::TaskSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSECSTaskSet1 { ContainerName?: string; ContainerPort?: number; LoadBalancerName?: string; TargetGroupArn?: string; } export interface AWSECSTaskSet2 { AwsVpcConfiguration?: AWSECSTaskSet3; } export interface AWSECSTaskSet3 { AssignPublicIp?: string; SecurityGroups?: string[]; Subnets: string[]; } export interface AWSECSTaskSet4 { Unit?: string; Value?: number; } export interface AWSECSTaskSet5 { ContainerName?: string; ContainerPort?: number; Port?: number; RegistryArn?: string; } export interface AWSEFSAccessPoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessPointTags?: AWSEFSAccessPoint1[]; ClientToken?: string; FileSystemId: string; PosixUser?: AWSEFSAccessPoint2; RootDirectory?: AWSEFSAccessPoint3; }; Type: 'AWS::EFS::AccessPoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEFSAccessPoint1 { Key?: string; Value?: string; } export interface AWSEFSAccessPoint2 { Gid: string; SecondaryGids?: string[]; Uid: string; } export interface AWSEFSAccessPoint3 { CreationInfo?: AWSEFSAccessPoint4; Path?: string; } export interface AWSEFSAccessPoint4 { OwnerGid: string; OwnerUid: string; Permissions: string; } export interface AWSEFSFileSystem { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AvailabilityZoneName?: string; BackupPolicy?: AWSEFSFileSystem1; BypassPolicyLockoutSafetyCheck?: boolean; Encrypted?: boolean; FileSystemPolicy?: { [k: string]: unknown; }; FileSystemTags?: AWSEFSFileSystem2[]; KmsKeyId?: string; LifecyclePolicies?: AWSEFSFileSystem3[]; PerformanceMode?: string; ProvisionedThroughputInMibps?: number; ThroughputMode?: string; }; Type: 'AWS::EFS::FileSystem'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEFSFileSystem1 { Status: string; } export interface AWSEFSFileSystem2 { Key: string; Value: string; } export interface AWSEFSFileSystem3 { TransitionToIA?: string; TransitionToPrimaryStorageClass?: string; } export interface AWSEFSMountTarget { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { FileSystemId: string; IpAddress?: string; SecurityGroups: string[]; SubnetId: string; }; Type: 'AWS::EFS::MountTarget'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEKSAddon { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AddonName: string; AddonVersion?: string; ClusterName: string; ConfigurationValues?: string; ResolveConflicts?: string; ServiceAccountRoleArn?: string; Tags?: Tag[]; }; Type: 'AWS::EKS::Addon'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEKSCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EncryptionConfig?: AWSEKSCluster1[]; KubernetesNetworkConfig?: AWSEKSCluster3; Logging?: AWSEKSCluster4; Name?: string; OutpostConfig?: AWSEKSCluster7; ResourcesVpcConfig: AWSEKSCluster9; RoleArn: string; Tags?: Tag[]; Version?: string; }; Type: 'AWS::EKS::Cluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEKSCluster1 { Provider?: AWSEKSCluster2; Resources?: string[]; } export interface AWSEKSCluster2 { KeyArn?: string; } export interface AWSEKSCluster3 { IpFamily?: string; ServiceIpv4Cidr?: string; ServiceIpv6Cidr?: string; } export interface AWSEKSCluster4 { ClusterLogging?: AWSEKSCluster5; } export interface AWSEKSCluster5 { EnabledTypes?: AWSEKSCluster6[]; } export interface AWSEKSCluster6 { Type?: string; } export interface AWSEKSCluster7 { ControlPlaneInstanceType: string; ControlPlanePlacement?: AWSEKSCluster8; OutpostArns: string[]; } export interface AWSEKSCluster8 { GroupName?: string; } export interface AWSEKSCluster9 { EndpointPrivateAccess?: boolean; EndpointPublicAccess?: boolean; PublicAccessCidrs?: string[]; SecurityGroupIds?: string[]; SubnetIds: string[]; } export interface AWSEKSFargateProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClusterName: string; FargateProfileName?: string; PodExecutionRoleArn: string; Selectors: AWSEKSFargateProfile1[]; Subnets?: string[]; Tags?: Tag[]; }; Type: 'AWS::EKS::FargateProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEKSFargateProfile1 { Labels?: AWSEKSFargateProfile2[]; Namespace: string; } export interface AWSEKSFargateProfile2 { Key: string; Value: string; } export interface AWSEKSIdentityProviderConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClusterName: string; IdentityProviderConfigName?: string; Oidc?: AWSEKSIdentityProviderConfig1; Tags?: Tag[]; Type: string; }; Type: 'AWS::EKS::IdentityProviderConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEKSIdentityProviderConfig1 { ClientId: string; GroupsClaim?: string; GroupsPrefix?: string; IssuerUrl: string; RequiredClaims?: AWSEKSIdentityProviderConfig2[]; UsernameClaim?: string; UsernamePrefix?: string; } export interface AWSEKSIdentityProviderConfig2 { Key: string; Value: string; } export interface AWSEKSNodegroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AmiType?: string; CapacityType?: string; ClusterName: string; DiskSize?: number; ForceUpdateEnabled?: boolean; InstanceTypes?: string[]; Labels?: { [k: string]: unknown; }; LaunchTemplate?: AWSEKSNodegroup1; NodeRole: string; NodegroupName?: string; ReleaseVersion?: string; RemoteAccess?: AWSEKSNodegroup2; ScalingConfig?: AWSEKSNodegroup3; Subnets: string[]; Tags?: { [k: string]: unknown; }; Taints?: AWSEKSNodegroup4[]; UpdateConfig?: AWSEKSNodegroup5; Version?: string; }; Type: 'AWS::EKS::Nodegroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEKSNodegroup1 { Id?: string; Name?: string; Version?: string; } export interface AWSEKSNodegroup2 { Ec2SshKey: string; SourceSecurityGroups?: string[]; } export interface AWSEKSNodegroup3 { DesiredSize?: number; MaxSize?: number; MinSize?: number; } export interface AWSEKSNodegroup4 { Effect?: string; Key?: string; Value?: string; } export interface AWSEKSNodegroup5 { MaxUnavailable?: number; MaxUnavailablePercentage?: number; } export interface AWSEMRCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdditionalInfo?: { [k: string]: unknown; }; Applications?: AWSEMRCluster1[]; AutoScalingRole?: string; AutoTerminationPolicy?: AWSEMRCluster2; BootstrapActions?: AWSEMRCluster3[]; Configurations?: AWSEMRCluster5[]; CustomAmiId?: string; EbsRootVolumeSize?: number; Instances: AWSEMRCluster6; JobFlowRole: string; KerberosAttributes?: AWSEMRCluster25; LogEncryptionKmsKeyId?: string; LogUri?: string; ManagedScalingPolicy?: AWSEMRCluster26; Name: string; OSReleaseLabel?: string; ReleaseLabel?: string; ScaleDownBehavior?: string; SecurityConfiguration?: string; ServiceRole: string; StepConcurrencyLevel?: number; Steps?: AWSEMRCluster28[]; Tags?: Tag[]; VisibleToAllUsers?: boolean; }; Type: 'AWS::EMR::Cluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEMRCluster1 { AdditionalInfo?: { [k: string]: unknown; }; Args?: string[]; Name?: string; Version?: string; } export interface AWSEMRCluster2 { IdleTimeout?: number; } export interface AWSEMRCluster3 { Name: string; ScriptBootstrapAction: AWSEMRCluster4; } export interface AWSEMRCluster4 { Args?: string[]; Path: string; } export interface AWSEMRCluster5 { Classification?: string; ConfigurationProperties?: { [k: string]: unknown; }; Configurations?: AWSEMRCluster5[]; } export interface AWSEMRCluster6 { AdditionalMasterSecurityGroups?: string[]; AdditionalSlaveSecurityGroups?: string[]; CoreInstanceFleet?: AWSEMRCluster7; CoreInstanceGroup?: AWSEMRCluster15; Ec2KeyName?: string; Ec2SubnetId?: string; Ec2SubnetIds?: string[]; EmrManagedMasterSecurityGroup?: string; EmrManagedSlaveSecurityGroup?: string; HadoopVersion?: string; KeepJobFlowAliveWhenNoSteps?: boolean; MasterInstanceFleet?: AWSEMRCluster7; MasterInstanceGroup?: AWSEMRCluster15; Placement?: AWSEMRCluster24; ServiceAccessSecurityGroup?: string; TaskInstanceFleets?: AWSEMRCluster7[]; TaskInstanceGroups?: AWSEMRCluster15[]; TerminationProtected?: boolean; } export interface AWSEMRCluster7 { InstanceTypeConfigs?: AWSEMRCluster8[]; LaunchSpecifications?: AWSEMRCluster12; Name?: string; TargetOnDemandCapacity?: number; TargetSpotCapacity?: number; } export interface AWSEMRCluster8 { BidPrice?: string; BidPriceAsPercentageOfOnDemandPrice?: number; Configurations?: AWSEMRCluster5[]; CustomAmiId?: string; EbsConfiguration?: AWSEMRCluster9; InstanceType: string; WeightedCapacity?: number; } export interface AWSEMRCluster9 { EbsBlockDeviceConfigs?: AWSEMRCluster10[]; EbsOptimized?: boolean; } export interface AWSEMRCluster10 { VolumeSpecification: AWSEMRCluster11; VolumesPerInstance?: number; } export interface AWSEMRCluster11 { Iops?: number; SizeInGB: number; VolumeType: string; } export interface AWSEMRCluster12 { OnDemandSpecification?: AWSEMRCluster13; SpotSpecification?: AWSEMRCluster14; } export interface AWSEMRCluster13 { AllocationStrategy: string; } export interface AWSEMRCluster14 { AllocationStrategy?: string; BlockDurationMinutes?: number; TimeoutAction: string; TimeoutDurationMinutes: number; } export interface AWSEMRCluster15 { AutoScalingPolicy?: AWSEMRCluster16; BidPrice?: string; Configurations?: AWSEMRCluster5[]; CustomAmiId?: string; EbsConfiguration?: AWSEMRCluster9; InstanceCount: number; InstanceType: string; Market?: string; Name?: string; } export interface AWSEMRCluster16 { Constraints: AWSEMRCluster17; Rules: AWSEMRCluster18[]; } export interface AWSEMRCluster17 { MaxCapacity: number; MinCapacity: number; } export interface AWSEMRCluster18 { Action: AWSEMRCluster19; Description?: string; Name: string; Trigger: AWSEMRCluster21; } export interface AWSEMRCluster19 { Market?: string; SimpleScalingPolicyConfiguration: AWSEMRCluster20; } export interface AWSEMRCluster20 { AdjustmentType?: string; CoolDown?: number; ScalingAdjustment: number; } export interface AWSEMRCluster21 { CloudWatchAlarmDefinition: AWSEMRCluster22; } export interface AWSEMRCluster22 { ComparisonOperator: string; Dimensions?: AWSEMRCluster23[]; EvaluationPeriods?: number; MetricName: string; Namespace?: string; Period: number; Statistic?: string; Threshold: number; Unit?: string; } export interface AWSEMRCluster23 { Key: string; Value: string; } export interface AWSEMRCluster24 { AvailabilityZone: string; } export interface AWSEMRCluster25 { ADDomainJoinPassword?: string; ADDomainJoinUser?: string; CrossRealmTrustPrincipalPassword?: string; KdcAdminPassword: string; Realm: string; } export interface AWSEMRCluster26 { ComputeLimits?: AWSEMRCluster27; } export interface AWSEMRCluster27 { MaximumCapacityUnits: number; MaximumCoreCapacityUnits?: number; MaximumOnDemandCapacityUnits?: number; MinimumCapacityUnits: number; UnitType: string; } export interface AWSEMRCluster28 { ActionOnFailure?: string; HadoopJarStep: AWSEMRCluster29; Name: string; } export interface AWSEMRCluster29 { Args?: string[]; Jar: string; MainClass?: string; StepProperties?: AWSEMRCluster30[]; } export interface AWSEMRCluster30 { Key?: string; Value?: string; } export interface AWSEMRInstanceFleetConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClusterId: string; InstanceFleetType: string; InstanceTypeConfigs?: AWSEMRInstanceFleetConfig1[]; LaunchSpecifications?: AWSEMRInstanceFleetConfig6; Name?: string; TargetOnDemandCapacity?: number; TargetSpotCapacity?: number; }; Type: 'AWS::EMR::InstanceFleetConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEMRInstanceFleetConfig1 { BidPrice?: string; BidPriceAsPercentageOfOnDemandPrice?: number; Configurations?: AWSEMRInstanceFleetConfig2[]; CustomAmiId?: string; EbsConfiguration?: AWSEMRInstanceFleetConfig3; InstanceType: string; WeightedCapacity?: number; } export interface AWSEMRInstanceFleetConfig2 { Classification?: string; ConfigurationProperties?: { [k: string]: unknown; }; Configurations?: AWSEMRInstanceFleetConfig2[]; } export interface AWSEMRInstanceFleetConfig3 { EbsBlockDeviceConfigs?: AWSEMRInstanceFleetConfig4[]; EbsOptimized?: boolean; } export interface AWSEMRInstanceFleetConfig4 { VolumeSpecification: AWSEMRInstanceFleetConfig5; VolumesPerInstance?: number; } export interface AWSEMRInstanceFleetConfig5 { Iops?: number; SizeInGB: number; VolumeType: string; } export interface AWSEMRInstanceFleetConfig6 { OnDemandSpecification?: AWSEMRInstanceFleetConfig7; SpotSpecification?: AWSEMRInstanceFleetConfig8; } export interface AWSEMRInstanceFleetConfig7 { AllocationStrategy: string; } export interface AWSEMRInstanceFleetConfig8 { AllocationStrategy?: string; BlockDurationMinutes?: number; TimeoutAction: string; TimeoutDurationMinutes: number; } export interface AWSEMRInstanceGroupConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoScalingPolicy?: AWSEMRInstanceGroupConfig1; BidPrice?: string; Configurations?: AWSEMRInstanceGroupConfig9[]; CustomAmiId?: string; EbsConfiguration?: AWSEMRInstanceGroupConfig10; InstanceCount: number; InstanceRole: string; InstanceType: string; JobFlowId: string; Market?: string; Name?: string; }; Type: 'AWS::EMR::InstanceGroupConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEMRInstanceGroupConfig1 { Constraints: AWSEMRInstanceGroupConfig2; Rules: AWSEMRInstanceGroupConfig3[]; } export interface AWSEMRInstanceGroupConfig2 { MaxCapacity: number; MinCapacity: number; } export interface AWSEMRInstanceGroupConfig3 { Action: AWSEMRInstanceGroupConfig4; Description?: string; Name: string; Trigger: AWSEMRInstanceGroupConfig6; } export interface AWSEMRInstanceGroupConfig4 { Market?: string; SimpleScalingPolicyConfiguration: AWSEMRInstanceGroupConfig5; } export interface AWSEMRInstanceGroupConfig5 { AdjustmentType?: string; CoolDown?: number; ScalingAdjustment: number; } export interface AWSEMRInstanceGroupConfig6 { CloudWatchAlarmDefinition: AWSEMRInstanceGroupConfig7; } export interface AWSEMRInstanceGroupConfig7 { ComparisonOperator: string; Dimensions?: AWSEMRInstanceGroupConfig8[]; EvaluationPeriods?: number; MetricName: string; Namespace?: string; Period: number; Statistic?: string; Threshold: number; Unit?: string; } export interface AWSEMRInstanceGroupConfig8 { Key: string; Value: string; } export interface AWSEMRInstanceGroupConfig9 { Classification?: string; ConfigurationProperties?: { [k: string]: unknown; }; Configurations?: AWSEMRInstanceGroupConfig9[]; } export interface AWSEMRInstanceGroupConfig10 { EbsBlockDeviceConfigs?: AWSEMRInstanceGroupConfig11[]; EbsOptimized?: boolean; } export interface AWSEMRInstanceGroupConfig11 { VolumeSpecification: AWSEMRInstanceGroupConfig12; VolumesPerInstance?: number; } export interface AWSEMRInstanceGroupConfig12 { Iops?: number; SizeInGB: number; VolumeType: string; } export interface AWSEMRSecurityConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name?: string; SecurityConfiguration: { [k: string]: unknown; }; }; Type: 'AWS::EMR::SecurityConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEMRStep { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ActionOnFailure: string; HadoopJarStep: AWSEMRStep1; JobFlowId: string; Name: string; }; Type: 'AWS::EMR::Step'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEMRStep1 { Args?: string[]; Jar: string; MainClass?: string; StepProperties?: AWSEMRStep2[]; } export interface AWSEMRStep2 { Key?: string; Value?: string; } export interface AWSEMRStudio { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthMode: string; DefaultS3Location: string; Description?: string; EngineSecurityGroupId: string; IdpAuthUrl?: string; IdpRelayStateParameterName?: string; Name: string; ServiceRole: string; SubnetIds: string[]; Tags?: Tag[]; UserRole?: string; VpcId: string; WorkspaceSecurityGroupId: string; }; Type: 'AWS::EMR::Studio'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEMRStudioSessionMapping { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { IdentityName: string; IdentityType: string; SessionPolicyArn: string; StudioId: string; }; Type: 'AWS::EMR::StudioSessionMapping'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEMRContainersVirtualCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ContainerProvider: AWSEMRContainersVirtualCluster1; Name: string; Tags?: Tag[]; }; Type: 'AWS::EMRContainers::VirtualCluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEMRContainersVirtualCluster1 { Id: string; Info: AWSEMRContainersVirtualCluster2; Type: string; } export interface AWSEMRContainersVirtualCluster2 { EksInfo: AWSEMRContainersVirtualCluster3; } export interface AWSEMRContainersVirtualCluster3 { Namespace: string; } export interface AWSEMRServerlessApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Architecture?: string; AutoStartConfiguration?: AWSEMRServerlessApplication1; AutoStopConfiguration?: AWSEMRServerlessApplication2; InitialCapacity?: AWSEMRServerlessApplication3[]; MaximumCapacity?: AWSEMRServerlessApplication6; Name?: string; NetworkConfiguration?: AWSEMRServerlessApplication7; ReleaseLabel: string; Tags?: Tag[]; Type: string; }; Type: 'AWS::EMRServerless::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEMRServerlessApplication1 { Enabled?: boolean; } export interface AWSEMRServerlessApplication2 { Enabled?: boolean; IdleTimeoutMinutes?: number; } export interface AWSEMRServerlessApplication3 { Key: string; Value: AWSEMRServerlessApplication4; } export interface AWSEMRServerlessApplication4 { WorkerConfiguration: AWSEMRServerlessApplication5; WorkerCount: number; } export interface AWSEMRServerlessApplication5 { Cpu: string; Disk?: string; Memory: string; } export interface AWSEMRServerlessApplication6 { Cpu: string; Disk?: string; Memory: string; } export interface AWSEMRServerlessApplication7 { SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSElastiCacheCacheCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AZMode?: string; AutoMinorVersionUpgrade?: boolean; CacheNodeType: string; CacheParameterGroupName?: string; CacheSecurityGroupNames?: string[]; CacheSubnetGroupName?: string; ClusterName?: string; Engine: string; EngineVersion?: string; IpDiscovery?: string; LogDeliveryConfigurations?: AWSElastiCacheCacheCluster1[]; NetworkType?: string; NotificationTopicArn?: string; NumCacheNodes: number; Port?: number; PreferredAvailabilityZone?: string; PreferredAvailabilityZones?: string[]; PreferredMaintenanceWindow?: string; SnapshotArns?: string[]; SnapshotName?: string; SnapshotRetentionLimit?: number; SnapshotWindow?: string; Tags?: Tag[]; TransitEncryptionEnabled?: boolean; VpcSecurityGroupIds?: string[]; }; Type: 'AWS::ElastiCache::CacheCluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElastiCacheCacheCluster1 { DestinationDetails: AWSElastiCacheCacheCluster2; DestinationType: string; LogFormat: string; LogType: string; } export interface AWSElastiCacheCacheCluster2 { CloudWatchLogsDetails?: AWSElastiCacheCacheCluster3; KinesisFirehoseDetails?: AWSElastiCacheCacheCluster4; } export interface AWSElastiCacheCacheCluster3 { LogGroup: string; } export interface AWSElastiCacheCacheCluster4 { DeliveryStream: string; } export interface AWSElastiCacheGlobalReplicationGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutomaticFailoverEnabled?: boolean; CacheNodeType?: string; CacheParameterGroupName?: string; EngineVersion?: string; GlobalNodeGroupCount?: number; GlobalReplicationGroupDescription?: string; GlobalReplicationGroupIdSuffix?: string; Members: AWSElastiCacheGlobalReplicationGroup1[]; RegionalConfigurations?: AWSElastiCacheGlobalReplicationGroup2[]; }; Type: 'AWS::ElastiCache::GlobalReplicationGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElastiCacheGlobalReplicationGroup1 { ReplicationGroupId?: string; ReplicationGroupRegion?: string; Role?: string; } export interface AWSElastiCacheGlobalReplicationGroup2 { ReplicationGroupId?: string; ReplicationGroupRegion?: string; ReshardingConfigurations?: AWSElastiCacheGlobalReplicationGroup3[]; } export interface AWSElastiCacheGlobalReplicationGroup3 { NodeGroupId?: string; PreferredAvailabilityZones?: string[]; } export interface AWSElastiCacheParameterGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CacheParameterGroupFamily: string; Description: string; Properties?: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::ElastiCache::ParameterGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElastiCacheReplicationGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AtRestEncryptionEnabled?: boolean; AuthToken?: string; AutoMinorVersionUpgrade?: boolean; AutomaticFailoverEnabled?: boolean; CacheNodeType?: string; CacheParameterGroupName?: string; CacheSecurityGroupNames?: string[]; CacheSubnetGroupName?: string; DataTieringEnabled?: boolean; Engine?: string; EngineVersion?: string; GlobalReplicationGroupId?: string; IpDiscovery?: string; KmsKeyId?: string; LogDeliveryConfigurations?: AWSElastiCacheReplicationGroup1[]; MultiAZEnabled?: boolean; NetworkType?: string; NodeGroupConfiguration?: AWSElastiCacheReplicationGroup5[]; NotificationTopicArn?: string; NumCacheClusters?: number; NumNodeGroups?: number; Port?: number; PreferredCacheClusterAZs?: string[]; PreferredMaintenanceWindow?: string; PrimaryClusterId?: string; ReplicasPerNodeGroup?: number; ReplicationGroupDescription: string; ReplicationGroupId?: string; SecurityGroupIds?: string[]; SnapshotArns?: string[]; SnapshotName?: string; SnapshotRetentionLimit?: number; SnapshotWindow?: string; SnapshottingClusterId?: string; Tags?: Tag[]; TransitEncryptionEnabled?: boolean; UserGroupIds?: string[]; }; Type: 'AWS::ElastiCache::ReplicationGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElastiCacheReplicationGroup1 { DestinationDetails: AWSElastiCacheReplicationGroup2; DestinationType: string; LogFormat: string; LogType: string; } export interface AWSElastiCacheReplicationGroup2 { CloudWatchLogsDetails?: AWSElastiCacheReplicationGroup3; KinesisFirehoseDetails?: AWSElastiCacheReplicationGroup4; } export interface AWSElastiCacheReplicationGroup3 { LogGroup: string; } export interface AWSElastiCacheReplicationGroup4 { DeliveryStream: string; } export interface AWSElastiCacheReplicationGroup5 { NodeGroupId?: string; PrimaryAvailabilityZone?: string; ReplicaAvailabilityZones?: string[]; ReplicaCount?: number; Slots?: string; } export interface AWSElastiCacheSecurityGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description: string; Tags?: Tag[]; }; Type: 'AWS::ElastiCache::SecurityGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElastiCacheSecurityGroupIngress { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CacheSecurityGroupName: string; EC2SecurityGroupName: string; EC2SecurityGroupOwnerId?: string; }; Type: 'AWS::ElastiCache::SecurityGroupIngress'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElastiCacheSubnetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CacheSubnetGroupName?: string; Description: string; SubnetIds: string[]; Tags?: Tag[]; }; Type: 'AWS::ElastiCache::SubnetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElastiCacheUser { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessString?: string; AuthenticationMode?: AWSElastiCacheUser1; Engine: string; NoPasswordRequired?: boolean; Passwords?: string[]; UserId: string; UserName: string; }; Type: 'AWS::ElastiCache::User'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElastiCacheUser1 { Passwords?: string[]; Type: string; } export interface AWSElastiCacheUserGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Engine: string; UserGroupId: string; UserIds?: string[]; }; Type: 'AWS::ElastiCache::UserGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticBeanstalkApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ApplicationName?: string; Description?: string; ResourceLifecycleConfig?: AWSElasticBeanstalkApplication1; }; Type: 'AWS::ElasticBeanstalk::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticBeanstalkApplication1 { ServiceRole?: string; VersionLifecycleConfig?: AWSElasticBeanstalkApplication2; } export interface AWSElasticBeanstalkApplication2 { MaxAgeRule?: AWSElasticBeanstalkApplication3; MaxCountRule?: AWSElasticBeanstalkApplication4; } export interface AWSElasticBeanstalkApplication3 { DeleteSourceFromS3?: boolean; Enabled?: boolean; MaxAgeInDays?: number; } export interface AWSElasticBeanstalkApplication4 { DeleteSourceFromS3?: boolean; Enabled?: boolean; MaxCount?: number; } export interface AWSElasticBeanstalkApplicationVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationName: string; Description?: string; SourceBundle: AWSElasticBeanstalkApplicationVersion1; }; Type: 'AWS::ElasticBeanstalk::ApplicationVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticBeanstalkApplicationVersion1 { S3Bucket: string; S3Key: string; } export interface AWSElasticBeanstalkConfigurationTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationName: string; Description?: string; EnvironmentId?: string; OptionSettings?: AWSElasticBeanstalkConfigurationTemplate1[]; PlatformArn?: string; SolutionStackName?: string; SourceConfiguration?: AWSElasticBeanstalkConfigurationTemplate2; }; Type: 'AWS::ElasticBeanstalk::ConfigurationTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticBeanstalkConfigurationTemplate1 { Namespace: string; OptionName: string; ResourceName?: string; Value?: string; } export interface AWSElasticBeanstalkConfigurationTemplate2 { ApplicationName: string; TemplateName: string; } export interface AWSElasticBeanstalkEnvironment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationName: string; CNAMEPrefix?: string; Description?: string; EnvironmentName?: string; OperationsRole?: string; OptionSettings?: AWSElasticBeanstalkEnvironment1[]; PlatformArn?: string; SolutionStackName?: string; Tags?: Tag[]; TemplateName?: string; Tier?: AWSElasticBeanstalkEnvironment2; VersionLabel?: string; }; Type: 'AWS::ElasticBeanstalk::Environment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticBeanstalkEnvironment1 { Namespace: string; OptionName: string; ResourceName?: string; Value?: string; } export interface AWSElasticBeanstalkEnvironment2 { Name?: string; Type?: string; Version?: string; } export interface AWSElasticLoadBalancingLoadBalancer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessLoggingPolicy?: AWSElasticLoadBalancingLoadBalancer1; AppCookieStickinessPolicy?: AWSElasticLoadBalancingLoadBalancer2[]; AvailabilityZones?: string[]; ConnectionDrainingPolicy?: AWSElasticLoadBalancingLoadBalancer3; ConnectionSettings?: AWSElasticLoadBalancingLoadBalancer4; CrossZone?: boolean; HealthCheck?: AWSElasticLoadBalancingLoadBalancer5; Instances?: string[]; LBCookieStickinessPolicy?: AWSElasticLoadBalancingLoadBalancer6[]; Listeners: AWSElasticLoadBalancingLoadBalancer7[]; LoadBalancerName?: string; Policies?: AWSElasticLoadBalancingLoadBalancer8[]; Scheme?: string; SecurityGroups?: string[]; Subnets?: string[]; Tags?: Tag[]; }; Type: 'AWS::ElasticLoadBalancing::LoadBalancer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticLoadBalancingLoadBalancer1 { EmitInterval?: number; Enabled: boolean; S3BucketName: string; S3BucketPrefix?: string; } export interface AWSElasticLoadBalancingLoadBalancer2 { CookieName: string; PolicyName: string; } export interface AWSElasticLoadBalancingLoadBalancer3 { Enabled: boolean; Timeout?: number; } export interface AWSElasticLoadBalancingLoadBalancer4 { IdleTimeout: number; } export interface AWSElasticLoadBalancingLoadBalancer5 { HealthyThreshold: string; Interval: string; Target: string; Timeout: string; UnhealthyThreshold: string; } export interface AWSElasticLoadBalancingLoadBalancer6 { CookieExpirationPeriod?: string; PolicyName?: string; } export interface AWSElasticLoadBalancingLoadBalancer7 { InstancePort: string; InstanceProtocol?: string; LoadBalancerPort: string; PolicyNames?: string[]; Protocol: string; SSLCertificateId?: string; } export interface AWSElasticLoadBalancingLoadBalancer8 { Attributes: { [k: string]: unknown; }[]; InstancePorts?: string[]; LoadBalancerPorts?: string[]; PolicyName: string; PolicyType: string; } export interface AWSElasticLoadBalancingV2Listener { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AlpnPolicy?: string[]; Certificates?: AWSElasticLoadBalancingV2Listener1[]; DefaultActions: AWSElasticLoadBalancingV2Listener2[]; LoadBalancerArn: string; Port?: number; Protocol?: string; SslPolicy?: string; }; Type: 'AWS::ElasticLoadBalancingV2::Listener'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticLoadBalancingV2Listener1 { CertificateArn?: string; } export interface AWSElasticLoadBalancingV2Listener2 { AuthenticateCognitoConfig?: AWSElasticLoadBalancingV2Listener3; AuthenticateOidcConfig?: AWSElasticLoadBalancingV2Listener4; FixedResponseConfig?: AWSElasticLoadBalancingV2Listener5; ForwardConfig?: AWSElasticLoadBalancingV2Listener6; Order?: number; RedirectConfig?: AWSElasticLoadBalancingV2Listener9; TargetGroupArn?: string; Type: string; } export interface AWSElasticLoadBalancingV2Listener3 { AuthenticationRequestExtraParams?: { [k: string]: unknown; }; OnUnauthenticatedRequest?: string; Scope?: string; SessionCookieName?: string; SessionTimeout?: string; UserPoolArn: string; UserPoolClientId: string; UserPoolDomain: string; } export interface AWSElasticLoadBalancingV2Listener4 { AuthenticationRequestExtraParams?: { [k: string]: unknown; }; AuthorizationEndpoint: string; ClientId: string; ClientSecret?: string; Issuer: string; OnUnauthenticatedRequest?: string; Scope?: string; SessionCookieName?: string; SessionTimeout?: string; TokenEndpoint: string; UseExistingClientSecret?: boolean; UserInfoEndpoint: string; } export interface AWSElasticLoadBalancingV2Listener5 { ContentType?: string; MessageBody?: string; StatusCode: string; } export interface AWSElasticLoadBalancingV2Listener6 { TargetGroupStickinessConfig?: AWSElasticLoadBalancingV2Listener7; TargetGroups?: AWSElasticLoadBalancingV2Listener8[]; } export interface AWSElasticLoadBalancingV2Listener7 { DurationSeconds?: number; Enabled?: boolean; } export interface AWSElasticLoadBalancingV2Listener8 { TargetGroupArn?: string; Weight?: number; } export interface AWSElasticLoadBalancingV2Listener9 { Host?: string; Path?: string; Port?: string; Protocol?: string; Query?: string; StatusCode: string; } export interface AWSElasticLoadBalancingV2ListenerCertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Certificates: AWSElasticLoadBalancingV2ListenerCertificate1[]; ListenerArn: string; }; Type: 'AWS::ElasticLoadBalancingV2::ListenerCertificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticLoadBalancingV2ListenerCertificate1 { CertificateArn?: string; } export interface AWSElasticLoadBalancingV2ListenerRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Actions: AWSElasticLoadBalancingV2ListenerRule1[]; Conditions: AWSElasticLoadBalancingV2ListenerRule9[]; ListenerArn: string; Priority: number; }; Type: 'AWS::ElasticLoadBalancingV2::ListenerRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticLoadBalancingV2ListenerRule1 { AuthenticateCognitoConfig?: AWSElasticLoadBalancingV2ListenerRule2; AuthenticateOidcConfig?: AWSElasticLoadBalancingV2ListenerRule3; FixedResponseConfig?: AWSElasticLoadBalancingV2ListenerRule4; ForwardConfig?: AWSElasticLoadBalancingV2ListenerRule5; Order?: number; RedirectConfig?: AWSElasticLoadBalancingV2ListenerRule8; TargetGroupArn?: string; Type: string; } export interface AWSElasticLoadBalancingV2ListenerRule2 { AuthenticationRequestExtraParams?: { [k: string]: unknown; }; OnUnauthenticatedRequest?: string; Scope?: string; SessionCookieName?: string; SessionTimeout?: number; UserPoolArn: string; UserPoolClientId: string; UserPoolDomain: string; } export interface AWSElasticLoadBalancingV2ListenerRule3 { AuthenticationRequestExtraParams?: { [k: string]: unknown; }; AuthorizationEndpoint: string; ClientId: string; ClientSecret?: string; Issuer: string; OnUnauthenticatedRequest?: string; Scope?: string; SessionCookieName?: string; SessionTimeout?: number; TokenEndpoint: string; UseExistingClientSecret?: boolean; UserInfoEndpoint: string; } export interface AWSElasticLoadBalancingV2ListenerRule4 { ContentType?: string; MessageBody?: string; StatusCode: string; } export interface AWSElasticLoadBalancingV2ListenerRule5 { TargetGroupStickinessConfig?: AWSElasticLoadBalancingV2ListenerRule6; TargetGroups?: AWSElasticLoadBalancingV2ListenerRule7[]; } export interface AWSElasticLoadBalancingV2ListenerRule6 { DurationSeconds?: number; Enabled?: boolean; } export interface AWSElasticLoadBalancingV2ListenerRule7 { TargetGroupArn?: string; Weight?: number; } export interface AWSElasticLoadBalancingV2ListenerRule8 { Host?: string; Path?: string; Port?: string; Protocol?: string; Query?: string; StatusCode: string; } export interface AWSElasticLoadBalancingV2ListenerRule9 { Field?: string; HostHeaderConfig?: AWSElasticLoadBalancingV2ListenerRule10; HttpHeaderConfig?: AWSElasticLoadBalancingV2ListenerRule11; HttpRequestMethodConfig?: AWSElasticLoadBalancingV2ListenerRule12; PathPatternConfig?: AWSElasticLoadBalancingV2ListenerRule13; QueryStringConfig?: AWSElasticLoadBalancingV2ListenerRule14; SourceIpConfig?: AWSElasticLoadBalancingV2ListenerRule16; Values?: string[]; } export interface AWSElasticLoadBalancingV2ListenerRule10 { Values?: string[]; } export interface AWSElasticLoadBalancingV2ListenerRule11 { HttpHeaderName?: string; Values?: string[]; } export interface AWSElasticLoadBalancingV2ListenerRule12 { Values?: string[]; } export interface AWSElasticLoadBalancingV2ListenerRule13 { Values?: string[]; } export interface AWSElasticLoadBalancingV2ListenerRule14 { Values?: AWSElasticLoadBalancingV2ListenerRule15[]; } export interface AWSElasticLoadBalancingV2ListenerRule15 { Key?: string; Value?: string; } export interface AWSElasticLoadBalancingV2ListenerRule16 { Values?: string[]; } export interface AWSElasticLoadBalancingV2LoadBalancer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { IpAddressType?: string; LoadBalancerAttributes?: AWSElasticLoadBalancingV2LoadBalancer1[]; Name?: string; Scheme?: string; SecurityGroups?: string[]; SubnetMappings?: AWSElasticLoadBalancingV2LoadBalancer2[]; Subnets?: string[]; Tags?: Tag[]; Type?: string; }; Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticLoadBalancingV2LoadBalancer1 { Key?: string; Value?: string; } export interface AWSElasticLoadBalancingV2LoadBalancer2 { AllocationId?: string; IPv6Address?: string; PrivateIPv4Address?: string; SubnetId: string; } export interface AWSElasticLoadBalancingV2TargetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { HealthCheckEnabled?: boolean; HealthCheckIntervalSeconds?: number; HealthCheckPath?: string; HealthCheckPort?: string; HealthCheckProtocol?: string; HealthCheckTimeoutSeconds?: number; HealthyThresholdCount?: number; IpAddressType?: string; Matcher?: AWSElasticLoadBalancingV2TargetGroup1; Name?: string; Port?: number; Protocol?: string; ProtocolVersion?: string; Tags?: Tag[]; TargetGroupAttributes?: AWSElasticLoadBalancingV2TargetGroup2[]; TargetType?: string; Targets?: AWSElasticLoadBalancingV2TargetGroup3[]; UnhealthyThresholdCount?: number; VpcId?: string; }; Type: 'AWS::ElasticLoadBalancingV2::TargetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticLoadBalancingV2TargetGroup1 { GrpcCode?: string; HttpCode?: string; } export interface AWSElasticLoadBalancingV2TargetGroup2 { Key?: string; Value?: string; } export interface AWSElasticLoadBalancingV2TargetGroup3 { AvailabilityZone?: string; Id: string; Port?: number; } export interface AWSElasticsearchDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AccessPolicies?: { [k: string]: unknown; }; AdvancedOptions?: { [k: string]: unknown; }; AdvancedSecurityOptions?: AWSElasticsearchDomain1; CognitoOptions?: AWSElasticsearchDomain3; DomainEndpointOptions?: AWSElasticsearchDomain4; DomainName?: string; EBSOptions?: AWSElasticsearchDomain5; ElasticsearchClusterConfig?: AWSElasticsearchDomain6; ElasticsearchVersion?: string; EncryptionAtRestOptions?: AWSElasticsearchDomain9; LogPublishingOptions?: { [k: string]: AWSElasticsearchDomain10; }; NodeToNodeEncryptionOptions?: AWSElasticsearchDomain11; SnapshotOptions?: AWSElasticsearchDomain12; Tags?: Tag[]; VPCOptions?: AWSElasticsearchDomain13; }; Type: 'AWS::Elasticsearch::Domain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSElasticsearchDomain1 { AnonymousAuthEnabled?: boolean; Enabled?: boolean; InternalUserDatabaseEnabled?: boolean; MasterUserOptions?: AWSElasticsearchDomain2; } export interface AWSElasticsearchDomain2 { MasterUserARN?: string; MasterUserName?: string; MasterUserPassword?: string; } export interface AWSElasticsearchDomain3 { Enabled?: boolean; IdentityPoolId?: string; RoleArn?: string; UserPoolId?: string; } export interface AWSElasticsearchDomain4 { CustomEndpoint?: string; CustomEndpointCertificateArn?: string; CustomEndpointEnabled?: boolean; EnforceHTTPS?: boolean; TLSSecurityPolicy?: string; } export interface AWSElasticsearchDomain5 { EBSEnabled?: boolean; Iops?: number; VolumeSize?: number; VolumeType?: string; } export interface AWSElasticsearchDomain6 { ColdStorageOptions?: AWSElasticsearchDomain7; DedicatedMasterCount?: number; DedicatedMasterEnabled?: boolean; DedicatedMasterType?: string; InstanceCount?: number; InstanceType?: string; WarmCount?: number; WarmEnabled?: boolean; WarmType?: string; ZoneAwarenessConfig?: AWSElasticsearchDomain8; ZoneAwarenessEnabled?: boolean; } export interface AWSElasticsearchDomain7 { Enabled?: boolean; } export interface AWSElasticsearchDomain8 { AvailabilityZoneCount?: number; } export interface AWSElasticsearchDomain9 { Enabled?: boolean; KmsKeyId?: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSElasticsearchDomain10 { CloudWatchLogsLogGroupArn?: string; Enabled?: boolean; } export interface AWSElasticsearchDomain11 { Enabled?: boolean; } export interface AWSElasticsearchDomain12 { AutomatedSnapshotStartHour?: number; } export interface AWSElasticsearchDomain13 { SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSEventSchemasDiscoverer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CrossAccount?: boolean; Description?: string; SourceArn: string; Tags?: AWSEventSchemasDiscoverer1[]; }; Type: 'AWS::EventSchemas::Discoverer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventSchemasDiscoverer1 { Key: string; Value: string; } export interface AWSEventSchemasRegistry { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; RegistryName?: string; Tags?: AWSEventSchemasRegistry1[]; }; Type: 'AWS::EventSchemas::Registry'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventSchemasRegistry1 { Key: string; Value: string; } export interface AWSEventSchemasRegistryPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Policy: { [k: string]: unknown; }; RegistryName: string; RevisionId?: string; }; Type: 'AWS::EventSchemas::RegistryPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventSchemasSchema { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Content: string; Description?: string; RegistryName: string; SchemaName?: string; Tags?: AWSEventSchemasSchema1[]; Type: string; }; Type: 'AWS::EventSchemas::Schema'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventSchemasSchema1 { Key: string; Value: string; } export interface AWSEventsApiDestination { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectionArn: string; Description?: string; HttpMethod: string; InvocationEndpoint: string; InvocationRateLimitPerSecond?: number; Name?: string; }; Type: 'AWS::Events::ApiDestination'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventsArchive { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ArchiveName?: string; Description?: string; EventPattern?: { [k: string]: unknown; }; RetentionDays?: number; SourceArn: string; }; Type: 'AWS::Events::Archive'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventsConnection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthParameters: AWSEventsConnection1; AuthorizationType: string; Description?: string; Name?: string; }; Type: 'AWS::Events::Connection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventsConnection1 { ApiKeyAuthParameters?: AWSEventsConnection2; BasicAuthParameters?: AWSEventsConnection3; InvocationHttpParameters?: AWSEventsConnection4; OAuthParameters?: AWSEventsConnection6; } export interface AWSEventsConnection2 { ApiKeyName: string; ApiKeyValue: string; } export interface AWSEventsConnection3 { Password: string; Username: string; } export interface AWSEventsConnection4 { BodyParameters?: AWSEventsConnection5[]; HeaderParameters?: AWSEventsConnection5[]; QueryStringParameters?: AWSEventsConnection5[]; } export interface AWSEventsConnection5 { IsValueSecret?: boolean; Key: string; Value: string; } export interface AWSEventsConnection6 { AuthorizationEndpoint: string; ClientParameters: AWSEventsConnection7; HttpMethod: string; OAuthHttpParameters?: AWSEventsConnection4; } export interface AWSEventsConnection7 { ClientID: string; ClientSecret: string; } export interface AWSEventsEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; EventBuses: AWSEventsEndpoint1[]; Name: string; ReplicationConfig?: AWSEventsEndpoint2; RoleArn?: string; RoutingConfig: AWSEventsEndpoint3; }; Type: 'AWS::Events::Endpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventsEndpoint1 { EventBusArn: string; } export interface AWSEventsEndpoint2 { State: string; } export interface AWSEventsEndpoint3 { FailoverConfig: AWSEventsEndpoint4; } export interface AWSEventsEndpoint4 { Primary: AWSEventsEndpoint5; Secondary: AWSEventsEndpoint6; } export interface AWSEventsEndpoint5 { HealthCheck: string; } export interface AWSEventsEndpoint6 { Route: string; } export interface AWSEventsEventBus { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EventSourceName?: string; Name: string; Tags?: AWSEventsEventBus1[]; }; Type: 'AWS::Events::EventBus'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventsEventBus1 { Key: string; Value: string; } export interface AWSEventsEventBusPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Action?: string; Condition?: AWSEventsEventBusPolicy1; EventBusName?: string; Principal?: string; Statement?: { [k: string]: unknown; }; StatementId: string; }; Type: 'AWS::Events::EventBusPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventsEventBusPolicy1 { Key?: string; Type?: string; Value?: string; } export interface AWSEventsRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; EventBusName?: string; EventPattern?: { [k: string]: unknown; }; Name?: string; RoleArn?: string; ScheduleExpression?: string; State?: string; Targets?: AWSEventsRule1[]; }; Type: 'AWS::Events::Rule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEventsRule1 { Arn: string; BatchParameters?: AWSEventsRule2; DeadLetterConfig?: AWSEventsRule5; EcsParameters?: AWSEventsRule6; HttpParameters?: AWSEventsRule12; Id: string; Input?: string; InputPath?: string; InputTransformer?: AWSEventsRule13; KinesisParameters?: AWSEventsRule14; RedshiftDataParameters?: AWSEventsRule15; RetryPolicy?: AWSEventsRule16; RoleArn?: string; RunCommandParameters?: AWSEventsRule17; SageMakerPipelineParameters?: AWSEventsRule19; SqsParameters?: AWSEventsRule21; } export interface AWSEventsRule2 { ArrayProperties?: AWSEventsRule3; JobDefinition: string; JobName: string; RetryStrategy?: AWSEventsRule4; } export interface AWSEventsRule3 { Size?: number; } export interface AWSEventsRule4 { Attempts?: number; } export interface AWSEventsRule5 { Arn?: string; } export interface AWSEventsRule6 { CapacityProviderStrategy?: AWSEventsRule7[]; EnableECSManagedTags?: boolean; EnableExecuteCommand?: boolean; Group?: string; LaunchType?: string; NetworkConfiguration?: AWSEventsRule8; PlacementConstraints?: AWSEventsRule10[]; PlacementStrategies?: AWSEventsRule11[]; PlatformVersion?: string; PropagateTags?: string; ReferenceId?: string; TagList?: Tag[]; TaskCount?: number; TaskDefinitionArn: string; } export interface AWSEventsRule7 { Base?: number; CapacityProvider: string; Weight?: number; } export interface AWSEventsRule8 { AwsVpcConfiguration?: AWSEventsRule9; } export interface AWSEventsRule9 { AssignPublicIp?: string; SecurityGroups?: string[]; Subnets: string[]; } export interface AWSEventsRule10 { Expression?: string; Type?: string; } export interface AWSEventsRule11 { Field?: string; Type?: string; } export interface AWSEventsRule12 { HeaderParameters?: { [k: string]: unknown; }; PathParameterValues?: string[]; QueryStringParameters?: { [k: string]: unknown; }; } export interface AWSEventsRule13 { InputPathsMap?: { [k: string]: unknown; }; InputTemplate: string; } export interface AWSEventsRule14 { PartitionKeyPath: string; } export interface AWSEventsRule15 { Database: string; DbUser?: string; SecretManagerArn?: string; Sql: string; StatementName?: string; WithEvent?: boolean; } export interface AWSEventsRule16 { MaximumEventAgeInSeconds?: number; MaximumRetryAttempts?: number; } export interface AWSEventsRule17 { RunCommandTargets: AWSEventsRule18[]; } export interface AWSEventsRule18 { Key: string; Values: string[]; } export interface AWSEventsRule19 { PipelineParameterList?: AWSEventsRule20[]; } export interface AWSEventsRule20 { Name: string; Value: string; } export interface AWSEventsRule21 { MessageGroupId: string; } export interface AWSEvidentlyExperiment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; MetricGoals: AWSEvidentlyExperiment1[]; Name: string; OnlineAbConfig: AWSEvidentlyExperiment2; Project: string; RandomizationSalt?: string; RemoveSegment?: boolean; RunningStatus?: AWSEvidentlyExperiment4; SamplingRate?: number; Segment?: string; Tags?: Tag[]; Treatments: AWSEvidentlyExperiment5[]; }; Type: 'AWS::Evidently::Experiment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEvidentlyExperiment1 { DesiredChange: string; EntityIdKey: string; EventPattern?: string; MetricName: string; UnitLabel?: string; ValueKey: string; } export interface AWSEvidentlyExperiment2 { ControlTreatmentName?: string; TreatmentWeights?: AWSEvidentlyExperiment3[]; } export interface AWSEvidentlyExperiment3 { SplitWeight: number; Treatment: string; } export interface AWSEvidentlyExperiment4 { AnalysisCompleteTime?: string; DesiredState?: string; Reason?: string; Status: string; } export interface AWSEvidentlyExperiment5 { Description?: string; Feature: string; TreatmentName: string; Variation: string; } export interface AWSEvidentlyFeature { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DefaultVariation?: string; Description?: string; EntityOverrides?: AWSEvidentlyFeature1[]; EvaluationStrategy?: string; Name: string; Project: string; Tags?: Tag[]; Variations: AWSEvidentlyFeature2[]; }; Type: 'AWS::Evidently::Feature'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEvidentlyFeature1 { EntityId?: string; Variation?: string; } export interface AWSEvidentlyFeature2 { BooleanValue?: boolean; DoubleValue?: number; LongValue?: number; StringValue?: string; VariationName: string; } export interface AWSEvidentlyLaunch { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; ExecutionStatus?: AWSEvidentlyLaunch1; Groups: AWSEvidentlyLaunch2[]; MetricMonitors?: AWSEvidentlyLaunch3[]; Name: string; Project: string; RandomizationSalt?: string; ScheduledSplitsConfig: AWSEvidentlyLaunch4[]; Tags?: Tag[]; }; Type: 'AWS::Evidently::Launch'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEvidentlyLaunch1 { DesiredState?: string; Reason?: string; Status: string; } export interface AWSEvidentlyLaunch2 { Description?: string; Feature: string; GroupName: string; Variation: string; } export interface AWSEvidentlyLaunch3 { EntityIdKey: string; EventPattern?: string; MetricName: string; UnitLabel?: string; ValueKey: string; } export interface AWSEvidentlyLaunch4 { GroupWeights: AWSEvidentlyLaunch5[]; SegmentOverrides?: AWSEvidentlyLaunch6[]; StartTime: string; } export interface AWSEvidentlyLaunch5 { GroupName: string; SplitWeight: number; } export interface AWSEvidentlyLaunch6 { EvaluationOrder: number; Segment: string; Weights: AWSEvidentlyLaunch5[]; } export interface AWSEvidentlyProject { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppConfigResource?: AWSEvidentlyProject1; DataDelivery?: AWSEvidentlyProject2; Description?: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::Evidently::Project'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSEvidentlyProject1 { ApplicationId: string; EnvironmentId: string; } export interface AWSEvidentlyProject2 { LogGroup?: string; S3?: AWSEvidentlyProject3; } export interface AWSEvidentlyProject3 { BucketName: string; Prefix?: string; } export interface AWSEvidentlySegment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Pattern?: string; Tags?: Tag[]; }; Type: 'AWS::Evidently::Segment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFISExperimentTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Actions?: { [k: string]: AWSFISExperimentTemplate1; }; Description: string; LogConfiguration?: AWSFISExperimentTemplate2; RoleArn: string; StopConditions: AWSFISExperimentTemplate5[]; Tags: { [k: string]: unknown; }; Targets: { [k: string]: AWSFISExperimentTemplate6; }; }; Type: 'AWS::FIS::ExperimentTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSFISExperimentTemplate1 { ActionId: string; Description?: string; Parameters?: { [k: string]: unknown; }; StartAfter?: string[]; Targets?: { [k: string]: unknown; }; } export interface AWSFISExperimentTemplate2 { CloudWatchLogsConfiguration?: AWSFISExperimentTemplate3; LogSchemaVersion: number; S3Configuration?: AWSFISExperimentTemplate4; } export interface AWSFISExperimentTemplate3 { LogGroupArn: string; } export interface AWSFISExperimentTemplate4 { BucketName: string; Prefix?: string; } export interface AWSFISExperimentTemplate5 { Source: string; Value?: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSFISExperimentTemplate6 { Filters?: AWSFISExperimentTemplate7[]; Parameters?: { [k: string]: unknown; }; ResourceArns?: string[]; ResourceTags?: { [k: string]: unknown; }; ResourceType: string; SelectionMode: string; } export interface AWSFISExperimentTemplate7 { Path: string; Values: string[]; } export interface AWSFMSNotificationChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { SnsRoleName: string; SnsTopicArn: string; }; Type: 'AWS::FMS::NotificationChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFMSPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeleteAllPolicyResources?: boolean; ExcludeMap?: AWSFMSPolicy1; ExcludeResourceTags: boolean; IncludeMap?: AWSFMSPolicy1; PolicyName: string; RemediationEnabled: boolean; ResourceTags?: AWSFMSPolicy2[]; ResourceType: string; ResourceTypeList?: string[]; ResourcesCleanUp?: boolean; SecurityServicePolicyData: AWSFMSPolicy3; Tags?: AWSFMSPolicy7[]; }; Type: 'AWS::FMS::Policy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFMSPolicy1 { ACCOUNT?: string[]; ORGUNIT?: string[]; } export interface AWSFMSPolicy2 { Key: string; Value?: string; } export interface AWSFMSPolicy3 { ManagedServiceData?: string; PolicyOption?: AWSFMSPolicy4; Type: string; } export interface AWSFMSPolicy4 { NetworkFirewallPolicy?: AWSFMSPolicy5; ThirdPartyFirewallPolicy?: AWSFMSPolicy6; } export interface AWSFMSPolicy5 { FirewallDeploymentModel: string; } export interface AWSFMSPolicy6 { FirewallDeploymentModel: string; } export interface AWSFMSPolicy7 { Key: string; Value: string; } export interface AWSFSxDataRepositoryAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BatchImportMetaDataOnCreate?: boolean; DataRepositoryPath: string; FileSystemId: string; FileSystemPath: string; ImportedFileChunkSize?: number; S3?: AWSFSxDataRepositoryAssociation1; Tags?: Tag[]; }; Type: 'AWS::FSx::DataRepositoryAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFSxDataRepositoryAssociation1 { AutoExportPolicy?: AWSFSxDataRepositoryAssociation2; AutoImportPolicy?: AWSFSxDataRepositoryAssociation3; } export interface AWSFSxDataRepositoryAssociation2 { Events: string[]; } export interface AWSFSxDataRepositoryAssociation3 { Events: string[]; } export interface AWSFSxFileSystem { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BackupId?: string; FileSystemType: string; FileSystemTypeVersion?: string; KmsKeyId?: string; LustreConfiguration?: AWSFSxFileSystem1; OntapConfiguration?: AWSFSxFileSystem2; OpenZFSConfiguration?: AWSFSxFileSystem4; SecurityGroupIds?: string[]; StorageCapacity?: number; StorageType?: string; SubnetIds: string[]; Tags?: Tag[]; WindowsConfiguration?: AWSFSxFileSystem9; }; Type: 'AWS::FSx::FileSystem'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFSxFileSystem1 { AutoImportPolicy?: string; AutomaticBackupRetentionDays?: number; CopyTagsToBackups?: boolean; DailyAutomaticBackupStartTime?: string; DataCompressionType?: string; DeploymentType?: string; DriveCacheType?: string; ExportPath?: string; ImportPath?: string; ImportedFileChunkSize?: number; PerUnitStorageThroughput?: number; WeeklyMaintenanceStartTime?: string; } export interface AWSFSxFileSystem2 { AutomaticBackupRetentionDays?: number; DailyAutomaticBackupStartTime?: string; DeploymentType: string; DiskIopsConfiguration?: AWSFSxFileSystem3; EndpointIpAddressRange?: string; FsxAdminPassword?: string; PreferredSubnetId?: string; RouteTableIds?: string[]; ThroughputCapacity?: number; WeeklyMaintenanceStartTime?: string; } export interface AWSFSxFileSystem3 { Iops?: number; Mode?: string; } export interface AWSFSxFileSystem4 { AutomaticBackupRetentionDays?: number; CopyTagsToBackups?: boolean; CopyTagsToVolumes?: boolean; DailyAutomaticBackupStartTime?: string; DeploymentType: string; DiskIopsConfiguration?: AWSFSxFileSystem3; Options?: string[]; RootVolumeConfiguration?: AWSFSxFileSystem5; ThroughputCapacity?: number; WeeklyMaintenanceStartTime?: string; } export interface AWSFSxFileSystem5 { CopyTagsToSnapshots?: boolean; DataCompressionType?: string; NfsExports?: AWSFSxFileSystem6[]; ReadOnly?: boolean; RecordSizeKiB?: number; UserAndGroupQuotas?: AWSFSxFileSystem8[]; } export interface AWSFSxFileSystem6 { ClientConfigurations?: AWSFSxFileSystem7[]; } export interface AWSFSxFileSystem7 { Clients?: string; Options?: string[]; } export interface AWSFSxFileSystem8 { Id?: number; StorageCapacityQuotaGiB?: number; Type?: string; } export interface AWSFSxFileSystem9 { ActiveDirectoryId?: string; Aliases?: string[]; AuditLogConfiguration?: AWSFSxFileSystem10; AutomaticBackupRetentionDays?: number; CopyTagsToBackups?: boolean; DailyAutomaticBackupStartTime?: string; DeploymentType?: string; PreferredSubnetId?: string; SelfManagedActiveDirectoryConfiguration?: AWSFSxFileSystem11; ThroughputCapacity: number; WeeklyMaintenanceStartTime?: string; } export interface AWSFSxFileSystem10 { AuditLogDestination?: string; FileAccessAuditLogLevel: string; FileShareAccessAuditLogLevel: string; } export interface AWSFSxFileSystem11 { DnsIps?: string[]; DomainName?: string; FileSystemAdministratorsGroup?: string; OrganizationalUnitDistinguishedName?: string; Password?: string; UserName?: string; } export interface AWSFSxSnapshot { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; Tags?: Tag[]; VolumeId: string; }; Type: 'AWS::FSx::Snapshot'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFSxStorageVirtualMachine { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ActiveDirectoryConfiguration?: AWSFSxStorageVirtualMachine1; FileSystemId: string; Name: string; RootVolumeSecurityStyle?: string; SvmAdminPassword?: string; Tags?: Tag[]; }; Type: 'AWS::FSx::StorageVirtualMachine'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFSxStorageVirtualMachine1 { NetBiosName?: string; SelfManagedActiveDirectoryConfiguration?: AWSFSxStorageVirtualMachine2; } export interface AWSFSxStorageVirtualMachine2 { DnsIps?: string[]; DomainName?: string; FileSystemAdministratorsGroup?: string; OrganizationalUnitDistinguishedName?: string; Password?: string; UserName?: string; } export interface AWSFSxVolume { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BackupId?: string; Name: string; OntapConfiguration?: AWSFSxVolume1; OpenZFSConfiguration?: AWSFSxVolume3; Tags?: Tag[]; VolumeType?: string; }; Type: 'AWS::FSx::Volume'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFSxVolume1 { CopyTagsToBackups?: string; JunctionPath?: string; OntapVolumeType?: string; SecurityStyle?: string; SizeInMegabytes: string; SnapshotPolicy?: string; StorageEfficiencyEnabled?: string; StorageVirtualMachineId: string; TieringPolicy?: AWSFSxVolume2; } export interface AWSFSxVolume2 { CoolingPeriod?: number; Name?: string; } export interface AWSFSxVolume3 { CopyTagsToSnapshots?: boolean; DataCompressionType?: string; NfsExports?: AWSFSxVolume4[]; Options?: string[]; OriginSnapshot?: AWSFSxVolume6; ParentVolumeId: string; ReadOnly?: boolean; RecordSizeKiB?: number; StorageCapacityQuotaGiB?: number; StorageCapacityReservationGiB?: number; UserAndGroupQuotas?: AWSFSxVolume7[]; } export interface AWSFSxVolume4 { ClientConfigurations: AWSFSxVolume5[]; } export interface AWSFSxVolume5 { Clients: string; Options: string[]; } export interface AWSFSxVolume6 { CopyStrategy: string; SnapshotARN: string; } export interface AWSFSxVolume7 { Id: number; StorageCapacityQuotaGiB: number; Type: string; } export interface AWSFinSpaceEnvironment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataBundles?: string[]; Description?: string; FederationMode?: string; FederationParameters?: AWSFinSpaceEnvironment1; KmsKeyId?: string; Name: string; SuperuserParameters?: AWSFinSpaceEnvironment2; }; Type: 'AWS::FinSpace::Environment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFinSpaceEnvironment1 { ApplicationCallBackURL?: string; AttributeMap?: { [k: string]: unknown; }; FederationProviderName?: string; FederationURN?: string; SamlMetadataDocument?: string; SamlMetadataURL?: string; } export interface AWSFinSpaceEnvironment2 { EmailAddress?: string; FirstName?: string; LastName?: string; } export interface AWSForecastDataset { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataFrequency?: string; DatasetName: string; DatasetType: string; Domain: string; EncryptionConfig?: AWSForecastDataset1; Schema: AWSForecastDataset2; Tags?: AWSForecastDataset4[]; }; Type: 'AWS::Forecast::Dataset'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSForecastDataset1 { KmsKeyArn?: string; RoleArn?: string; } export interface AWSForecastDataset2 { Attributes?: AWSForecastDataset3[]; } export interface AWSForecastDataset3 { AttributeName?: string; AttributeType?: string; } export interface AWSForecastDataset4 { Key: string; Value: string; } export interface AWSForecastDatasetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DatasetArns?: string[]; DatasetGroupName: string; Domain: string; Tags?: Tag[]; }; Type: 'AWS::Forecast::DatasetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFraudDetectorDetector { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssociatedModels?: AWSFraudDetectorDetector1[]; Description?: string; DetectorId: string; DetectorVersionStatus?: string; EventType: AWSFraudDetectorDetector2; RuleExecutionMode?: string; Rules: AWSFraudDetectorDetector6[]; Tags?: Tag[]; }; Type: 'AWS::FraudDetector::Detector'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFraudDetectorDetector1 { Arn?: string; } export interface AWSFraudDetectorDetector2 { Arn?: string; CreatedTime?: string; Description?: string; EntityTypes?: AWSFraudDetectorDetector3[]; EventVariables?: AWSFraudDetectorDetector4[]; Inline?: boolean; Labels?: AWSFraudDetectorDetector5[]; LastUpdatedTime?: string; Name?: string; Tags?: Tag[]; } export interface AWSFraudDetectorDetector3 { Arn?: string; CreatedTime?: string; Description?: string; Inline?: boolean; LastUpdatedTime?: string; Name?: string; Tags?: Tag[]; } export interface AWSFraudDetectorDetector4 { Arn?: string; CreatedTime?: string; DataSource?: string; DataType?: string; DefaultValue?: string; Description?: string; Inline?: boolean; LastUpdatedTime?: string; Name?: string; Tags?: Tag[]; VariableType?: string; } export interface AWSFraudDetectorDetector5 { Arn?: string; CreatedTime?: string; Description?: string; Inline?: boolean; LastUpdatedTime?: string; Name?: string; Tags?: Tag[]; } export interface AWSFraudDetectorDetector6 { Arn?: string; CreatedTime?: string; Description?: string; DetectorId?: string; Expression?: string; Language?: string; LastUpdatedTime?: string; Outcomes?: AWSFraudDetectorDetector7[]; RuleId?: string; RuleVersion?: string; Tags?: Tag[]; } export interface AWSFraudDetectorDetector7 { Arn?: string; CreatedTime?: string; Description?: string; Inline?: boolean; LastUpdatedTime?: string; Name?: string; Tags?: Tag[]; } export interface AWSFraudDetectorEntityType { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::FraudDetector::EntityType'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFraudDetectorEventType { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; EntityTypes: AWSFraudDetectorEventType1[]; EventVariables: AWSFraudDetectorEventType2[]; Labels: AWSFraudDetectorEventType3[]; Name: string; Tags?: Tag[]; }; Type: 'AWS::FraudDetector::EventType'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFraudDetectorEventType1 { Arn?: string; CreatedTime?: string; Description?: string; Inline?: boolean; LastUpdatedTime?: string; Name?: string; Tags?: Tag[]; } export interface AWSFraudDetectorEventType2 { Arn?: string; CreatedTime?: string; DataSource?: string; DataType?: string; DefaultValue?: string; Description?: string; Inline?: boolean; LastUpdatedTime?: string; Name?: string; Tags?: Tag[]; VariableType?: string; } export interface AWSFraudDetectorEventType3 { Arn?: string; CreatedTime?: string; Description?: string; Inline?: boolean; LastUpdatedTime?: string; Name?: string; Tags?: Tag[]; } export interface AWSFraudDetectorLabel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::FraudDetector::Label'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFraudDetectorOutcome { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::FraudDetector::Outcome'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSFraudDetectorVariable { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataSource: string; DataType: string; DefaultValue: string; Description?: string; Name: string; Tags?: Tag[]; VariableType?: string; }; Type: 'AWS::FraudDetector::Variable'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftAlias { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; RoutingStrategy: AWSGameLiftAlias1; }; Type: 'AWS::GameLift::Alias'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftAlias1 { FleetId?: string; Message?: string; Type: string; } export interface AWSGameLiftBuild { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Name?: string; OperatingSystem?: string; StorageLocation?: AWSGameLiftBuild1; Version?: string; }; Type: 'AWS::GameLift::Build'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftBuild1 { Bucket: string; Key: string; ObjectVersion?: string; RoleArn: string; } export interface AWSGameLiftFleet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AnywhereConfiguration?: AWSGameLiftFleet1; BuildId?: string; CertificateConfiguration?: AWSGameLiftFleet2; ComputeType?: string; Description?: string; DesiredEC2Instances?: number; EC2InboundPermissions?: AWSGameLiftFleet3[]; EC2InstanceType?: string; FleetType?: string; InstanceRoleARN?: string; Locations?: AWSGameLiftFleet4[]; MaxSize?: number; MetricGroups?: string[]; MinSize?: number; Name: string; NewGameSessionProtectionPolicy?: string; PeerVpcAwsAccountId?: string; PeerVpcId?: string; ResourceCreationLimitPolicy?: AWSGameLiftFleet6; RuntimeConfiguration?: AWSGameLiftFleet7; ScriptId?: string; }; Type: 'AWS::GameLift::Fleet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftFleet1 { Cost: string; } export interface AWSGameLiftFleet2 { CertificateType: string; } export interface AWSGameLiftFleet3 { FromPort: number; IpRange: string; Protocol: string; ToPort: number; } export interface AWSGameLiftFleet4 { Location: string; LocationCapacity?: AWSGameLiftFleet5; } export interface AWSGameLiftFleet5 { DesiredEC2Instances: number; MaxSize: number; MinSize: number; } export interface AWSGameLiftFleet6 { NewGameSessionsPerCreator?: number; PolicyPeriodInMinutes?: number; } export interface AWSGameLiftFleet7 { GameSessionActivationTimeoutSeconds?: number; MaxConcurrentGameSessionActivations?: number; ServerProcesses?: AWSGameLiftFleet8[]; } export interface AWSGameLiftFleet8 { ConcurrentExecutions: number; LaunchPath: string; Parameters?: string; } export interface AWSGameLiftGameServerGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoScalingPolicy?: AWSGameLiftGameServerGroup1; BalancingStrategy?: string; DeleteOption?: string; GameServerGroupName: string; GameServerProtectionPolicy?: string; InstanceDefinitions: AWSGameLiftGameServerGroup3[]; LaunchTemplate: AWSGameLiftGameServerGroup4; MaxSize?: number; MinSize?: number; RoleArn: string; Tags?: Tag[]; VpcSubnets?: string[]; }; Type: 'AWS::GameLift::GameServerGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftGameServerGroup1 { EstimatedInstanceWarmup?: number; TargetTrackingConfiguration: AWSGameLiftGameServerGroup2; } export interface AWSGameLiftGameServerGroup2 { TargetValue: number; } export interface AWSGameLiftGameServerGroup3 { InstanceType: string; WeightedCapacity?: string; } export interface AWSGameLiftGameServerGroup4 { LaunchTemplateId?: string; LaunchTemplateName?: string; Version?: string; } export interface AWSGameLiftGameSessionQueue { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CustomEventData?: string; Destinations?: AWSGameLiftGameSessionQueue1[]; FilterConfiguration?: AWSGameLiftGameSessionQueue2; Name: string; NotificationTarget?: string; PlayerLatencyPolicies?: AWSGameLiftGameSessionQueue3[]; PriorityConfiguration?: AWSGameLiftGameSessionQueue4; Tags?: Tag[]; TimeoutInSeconds?: number; }; Type: 'AWS::GameLift::GameSessionQueue'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftGameSessionQueue1 { DestinationArn?: string; } export interface AWSGameLiftGameSessionQueue2 { AllowedLocations?: string[]; } export interface AWSGameLiftGameSessionQueue3 { MaximumIndividualPlayerLatencyMilliseconds?: number; PolicyDurationSeconds?: number; } export interface AWSGameLiftGameSessionQueue4 { LocationOrder?: string[]; PriorityOrder?: string[]; } export interface AWSGameLiftLocation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LocationName: string; Tags?: Tag[]; }; Type: 'AWS::GameLift::Location'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftMatchmakingConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptanceRequired: boolean; AcceptanceTimeoutSeconds?: number; AdditionalPlayerCount?: number; BackfillMode?: string; CustomEventData?: string; Description?: string; FlexMatchMode?: string; GameProperties?: AWSGameLiftMatchmakingConfiguration1[]; GameSessionData?: string; GameSessionQueueArns?: string[]; Name: string; NotificationTarget?: string; RequestTimeoutSeconds: number; RuleSetName: string; Tags?: Tag[]; }; Type: 'AWS::GameLift::MatchmakingConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftMatchmakingConfiguration1 { Key: string; Value: string; } export interface AWSGameLiftMatchmakingRuleSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; RuleSetBody: string; Tags?: Tag[]; }; Type: 'AWS::GameLift::MatchmakingRuleSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftScript { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name?: string; StorageLocation: AWSGameLiftScript1; Tags?: Tag[]; Version?: string; }; Type: 'AWS::GameLift::Script'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGameLiftScript1 { Bucket: string; Key: string; ObjectVersion?: string; RoleArn: string; } export interface AWSGlobalAcceleratorAccelerator { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Enabled?: boolean; IpAddressType?: string; IpAddresses?: string[]; Name: string; Tags?: Tag[]; }; Type: 'AWS::GlobalAccelerator::Accelerator'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlobalAcceleratorEndpointGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EndpointConfigurations?: AWSGlobalAcceleratorEndpointGroup1[]; EndpointGroupRegion: string; HealthCheckIntervalSeconds?: number; HealthCheckPath?: string; HealthCheckPort?: number; HealthCheckProtocol?: string; ListenerArn: string; PortOverrides?: AWSGlobalAcceleratorEndpointGroup2[]; ThresholdCount?: number; TrafficDialPercentage?: number; }; Type: 'AWS::GlobalAccelerator::EndpointGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlobalAcceleratorEndpointGroup1 { ClientIPPreservationEnabled?: boolean; EndpointId: string; Weight?: number; } export interface AWSGlobalAcceleratorEndpointGroup2 { EndpointPort: number; ListenerPort: number; } export interface AWSGlobalAcceleratorListener { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceleratorArn: string; ClientAffinity?: string; PortRanges: AWSGlobalAcceleratorListener1[]; Protocol: string; }; Type: 'AWS::GlobalAccelerator::Listener'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlobalAcceleratorListener1 { FromPort: number; ToPort: number; } export interface AWSGlueClassifier { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CsvClassifier?: AWSGlueClassifier1; GrokClassifier?: AWSGlueClassifier2; JsonClassifier?: AWSGlueClassifier3; XMLClassifier?: AWSGlueClassifier4; }; Type: 'AWS::Glue::Classifier'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueClassifier1 { AllowSingleColumn?: boolean; ContainsHeader?: string; Delimiter?: string; DisableValueTrimming?: boolean; Header?: string[]; Name?: string; QuoteSymbol?: string; } export interface AWSGlueClassifier2 { Classification: string; CustomPatterns?: string; GrokPattern: string; Name?: string; } export interface AWSGlueClassifier3 { JsonPath: string; Name?: string; } export interface AWSGlueClassifier4 { Classification: string; Name?: string; RowTag: string; } export interface AWSGlueConnection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CatalogId: string; ConnectionInput: AWSGlueConnection1; }; Type: 'AWS::Glue::Connection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueConnection1 { ConnectionProperties?: { [k: string]: unknown; }; ConnectionType: string; Description?: string; MatchCriteria?: string[]; Name?: string; PhysicalConnectionRequirements?: AWSGlueConnection2; } export interface AWSGlueConnection2 { AvailabilityZone?: string; SecurityGroupIdList?: string[]; SubnetId?: string; } export interface AWSGlueCrawler { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Classifiers?: string[]; Configuration?: string; CrawlerSecurityConfiguration?: string; DatabaseName?: string; Description?: string; Name?: string; RecrawlPolicy?: AWSGlueCrawler1; Role: string; Schedule?: AWSGlueCrawler2; SchemaChangePolicy?: AWSGlueCrawler3; TablePrefix?: string; Tags?: { [k: string]: unknown; }; Targets: AWSGlueCrawler4; }; Type: 'AWS::Glue::Crawler'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueCrawler1 { RecrawlBehavior?: string; } export interface AWSGlueCrawler2 { ScheduleExpression?: string; } export interface AWSGlueCrawler3 { DeleteBehavior?: string; UpdateBehavior?: string; } export interface AWSGlueCrawler4 { CatalogTargets?: AWSGlueCrawler5[]; DynamoDBTargets?: AWSGlueCrawler6[]; JdbcTargets?: AWSGlueCrawler7[]; MongoDBTargets?: AWSGlueCrawler8[]; S3Targets?: AWSGlueCrawler9[]; } export interface AWSGlueCrawler5 { DatabaseName?: string; Tables?: string[]; } export interface AWSGlueCrawler6 { Path?: string; } export interface AWSGlueCrawler7 { ConnectionName?: string; Exclusions?: string[]; Path?: string; } export interface AWSGlueCrawler8 { ConnectionName?: string; Path?: string; } export interface AWSGlueCrawler9 { ConnectionName?: string; DlqEventQueueArn?: string; EventQueueArn?: string; Exclusions?: string[]; Path?: string; SampleSize?: number; } export interface AWSGlueDataCatalogEncryptionSettings { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CatalogId: string; DataCatalogEncryptionSettings: AWSGlueDataCatalogEncryptionSettings1; }; Type: 'AWS::Glue::DataCatalogEncryptionSettings'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueDataCatalogEncryptionSettings1 { ConnectionPasswordEncryption?: AWSGlueDataCatalogEncryptionSettings2; EncryptionAtRest?: AWSGlueDataCatalogEncryptionSettings3; } export interface AWSGlueDataCatalogEncryptionSettings2 { KmsKeyId?: string; ReturnConnectionPasswordEncrypted?: boolean; } export interface AWSGlueDataCatalogEncryptionSettings3 { CatalogEncryptionMode?: string; SseAwsKmsKeyId?: string; } export interface AWSGlueDatabase { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CatalogId: string; DatabaseInput: AWSGlueDatabase1; }; Type: 'AWS::Glue::Database'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueDatabase1 { CreateTableDefaultPermissions?: AWSGlueDatabase2[]; Description?: string; LocationUri?: string; Name?: string; Parameters?: { [k: string]: unknown; }; TargetDatabase?: AWSGlueDatabase4; } export interface AWSGlueDatabase2 { Permissions?: string[]; Principal?: AWSGlueDatabase3; } export interface AWSGlueDatabase3 { DataLakePrincipalIdentifier?: string; } export interface AWSGlueDatabase4 { CatalogId?: string; DatabaseName?: string; } export interface AWSGlueDevEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Arguments?: { [k: string]: unknown; }; EndpointName?: string; ExtraJarsS3Path?: string; ExtraPythonLibsS3Path?: string; GlueVersion?: string; NumberOfNodes?: number; NumberOfWorkers?: number; PublicKey?: string; PublicKeys?: string[]; RoleArn: string; SecurityConfiguration?: string; SecurityGroupIds?: string[]; SubnetId?: string; Tags?: { [k: string]: unknown; }; WorkerType?: string; }; Type: 'AWS::Glue::DevEndpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueJob { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllocatedCapacity?: number; Command: AWSGlueJob1; Connections?: AWSGlueJob2; DefaultArguments?: { [k: string]: unknown; }; Description?: string; ExecutionClass?: string; ExecutionProperty?: AWSGlueJob3; GlueVersion?: string; LogUri?: string; MaxCapacity?: number; MaxRetries?: number; Name?: string; NonOverridableArguments?: { [k: string]: unknown; }; NotificationProperty?: AWSGlueJob4; NumberOfWorkers?: number; Role: string; SecurityConfiguration?: string; Tags?: { [k: string]: unknown; }; Timeout?: number; WorkerType?: string; }; Type: 'AWS::Glue::Job'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueJob1 { Name?: string; PythonVersion?: string; ScriptLocation?: string; } export interface AWSGlueJob2 { Connections?: string[]; } export interface AWSGlueJob3 { MaxConcurrentRuns?: number; } export interface AWSGlueJob4 { NotifyDelayAfter?: number; } export interface AWSGlueMLTransform { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; GlueVersion?: string; InputRecordTables: AWSGlueMLTransform1; MaxCapacity?: number; MaxRetries?: number; Name?: string; NumberOfWorkers?: number; Role: string; Tags?: { [k: string]: unknown; }; Timeout?: number; TransformEncryption?: AWSGlueMLTransform3; TransformParameters: AWSGlueMLTransform5; WorkerType?: string; }; Type: 'AWS::Glue::MLTransform'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueMLTransform1 { GlueTables?: AWSGlueMLTransform2[]; } export interface AWSGlueMLTransform2 { CatalogId?: string; ConnectionName?: string; DatabaseName: string; TableName: string; } export interface AWSGlueMLTransform3 { MLUserDataEncryption?: AWSGlueMLTransform4; TaskRunSecurityConfigurationName?: string; } export interface AWSGlueMLTransform4 { KmsKeyId?: string; MLUserDataEncryptionMode: string; } export interface AWSGlueMLTransform5 { FindMatchesParameters?: AWSGlueMLTransform6; TransformType: string; } export interface AWSGlueMLTransform6 { AccuracyCostTradeoff?: number; EnforceProvidedLabels?: boolean; PrecisionRecallTradeoff?: number; PrimaryKeyColumnName: string; } export interface AWSGluePartition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CatalogId: string; DatabaseName: string; PartitionInput: AWSGluePartition1; TableName: string; }; Type: 'AWS::Glue::Partition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGluePartition1 { Parameters?: { [k: string]: unknown; }; StorageDescriptor?: AWSGluePartition2; Values: string[]; } export interface AWSGluePartition2 { BucketColumns?: string[]; Columns?: AWSGluePartition3[]; Compressed?: boolean; InputFormat?: string; Location?: string; NumberOfBuckets?: number; OutputFormat?: string; Parameters?: { [k: string]: unknown; }; SchemaReference?: AWSGluePartition4; SerdeInfo?: AWSGluePartition6; SkewedInfo?: AWSGluePartition7; SortColumns?: AWSGluePartition8[]; StoredAsSubDirectories?: boolean; } export interface AWSGluePartition3 { Comment?: string; Name: string; Type?: string; } export interface AWSGluePartition4 { SchemaId?: AWSGluePartition5; SchemaVersionId?: string; SchemaVersionNumber?: number; } export interface AWSGluePartition5 { RegistryName?: string; SchemaArn?: string; SchemaName?: string; } export interface AWSGluePartition6 { Name?: string; Parameters?: { [k: string]: unknown; }; SerializationLibrary?: string; } export interface AWSGluePartition7 { SkewedColumnNames?: string[]; SkewedColumnValueLocationMaps?: { [k: string]: unknown; }; SkewedColumnValues?: string[]; } export interface AWSGluePartition8 { Column: string; SortOrder?: number; } export interface AWSGlueRegistry { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::Glue::Registry'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueSchema { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CheckpointVersion?: AWSGlueSchema1; Compatibility: string; DataFormat: string; Description?: string; Name: string; Registry?: AWSGlueSchema2; SchemaDefinition: string; Tags?: Tag[]; }; Type: 'AWS::Glue::Schema'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueSchema1 { IsLatest?: boolean; VersionNumber?: number; } export interface AWSGlueSchema2 { Arn?: string; Name?: string; } export interface AWSGlueSchemaVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Schema: AWSGlueSchemaVersion1; SchemaDefinition: string; }; Type: 'AWS::Glue::SchemaVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueSchemaVersion1 { RegistryName?: string; SchemaArn?: string; SchemaName?: string; } export interface AWSGlueSchemaVersionMetadata { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Key: string; SchemaVersionId: string; Value: string; }; Type: 'AWS::Glue::SchemaVersionMetadata'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueSecurityConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EncryptionConfiguration: AWSGlueSecurityConfiguration1; Name: string; }; Type: 'AWS::Glue::SecurityConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueSecurityConfiguration1 { CloudWatchEncryption?: AWSGlueSecurityConfiguration2; JobBookmarksEncryption?: AWSGlueSecurityConfiguration3; S3Encryptions?: AWSGlueSecurityConfiguration4; } export interface AWSGlueSecurityConfiguration2 { CloudWatchEncryptionMode?: string; KmsKeyArn?: string; } export interface AWSGlueSecurityConfiguration3 { JobBookmarksEncryptionMode?: string; KmsKeyArn?: string; } export interface AWSGlueSecurityConfiguration4 {} export interface AWSGlueTable { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CatalogId: string; DatabaseName: string; TableInput: AWSGlueTable1; }; Type: 'AWS::Glue::Table'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueTable1 { Description?: string; Name?: string; Owner?: string; Parameters?: { [k: string]: unknown; }; PartitionKeys?: AWSGlueTable2[]; Retention?: number; StorageDescriptor?: AWSGlueTable3; TableType?: string; TargetTable?: AWSGlueTable9; ViewExpandedText?: string; ViewOriginalText?: string; } export interface AWSGlueTable2 { Comment?: string; Name: string; Type?: string; } export interface AWSGlueTable3 { BucketColumns?: string[]; Columns?: AWSGlueTable2[]; Compressed?: boolean; InputFormat?: string; Location?: string; NumberOfBuckets?: number; OutputFormat?: string; Parameters?: { [k: string]: unknown; }; SchemaReference?: AWSGlueTable4; SerdeInfo?: AWSGlueTable6; SkewedInfo?: AWSGlueTable7; SortColumns?: AWSGlueTable8[]; StoredAsSubDirectories?: boolean; } export interface AWSGlueTable4 { SchemaId?: AWSGlueTable5; SchemaVersionId?: string; SchemaVersionNumber?: number; } export interface AWSGlueTable5 { RegistryName?: string; SchemaArn?: string; SchemaName?: string; } export interface AWSGlueTable6 { Name?: string; Parameters?: { [k: string]: unknown; }; SerializationLibrary?: string; } export interface AWSGlueTable7 { SkewedColumnNames?: string[]; SkewedColumnValueLocationMaps?: { [k: string]: unknown; }; SkewedColumnValues?: string[]; } export interface AWSGlueTable8 { Column: string; SortOrder: number; } export interface AWSGlueTable9 { CatalogId?: string; DatabaseName?: string; Name?: string; } export interface AWSGlueTrigger { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Actions: AWSGlueTrigger1[]; Description?: string; EventBatchingCondition?: AWSGlueTrigger3; Name?: string; Predicate?: AWSGlueTrigger4; Schedule?: string; StartOnCreation?: boolean; Tags?: { [k: string]: unknown; }; Type: string; WorkflowName?: string; }; Type: 'AWS::Glue::Trigger'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGlueTrigger1 { Arguments?: { [k: string]: unknown; }; CrawlerName?: string; JobName?: string; NotificationProperty?: AWSGlueTrigger2; SecurityConfiguration?: string; Timeout?: number; } export interface AWSGlueTrigger2 { NotifyDelayAfter?: number; } export interface AWSGlueTrigger3 { BatchSize: number; BatchWindow?: number; } export interface AWSGlueTrigger4 { Conditions?: AWSGlueTrigger5[]; Logical?: string; } export interface AWSGlueTrigger5 { CrawlState?: string; CrawlerName?: string; JobName?: string; LogicalOperator?: string; State?: string; } export interface AWSGlueWorkflow { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DefaultRunProperties?: { [k: string]: unknown; }; Description?: string; MaxConcurrentRuns?: number; Name?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Glue::Workflow'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGrafanaWorkspace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AccountAccessType?: string; AuthenticationProviders?: string[]; ClientToken?: string; DataSources?: string[]; Description?: string; Name?: string; NotificationDestinations?: string[]; OrganizationRoleName?: string; OrganizationalUnits?: string[]; PermissionType?: string; RoleArn?: string; SamlConfiguration?: AWSGrafanaWorkspace1; StackSetName?: string; VpcConfiguration?: AWSGrafanaWorkspace5; }; Type: 'AWS::Grafana::Workspace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGrafanaWorkspace1 { AllowedOrganizations?: string[]; AssertionAttributes?: AWSGrafanaWorkspace2; IdpMetadata: AWSGrafanaWorkspace3; LoginValidityDuration?: number; RoleValues?: AWSGrafanaWorkspace4; } export interface AWSGrafanaWorkspace2 { Email?: string; Groups?: string; Login?: string; Name?: string; Org?: string; Role?: string; } export interface AWSGrafanaWorkspace3 { Url?: string; Xml?: string; } export interface AWSGrafanaWorkspace4 { Admin?: string[]; Editor?: string[]; } export interface AWSGrafanaWorkspace5 { SecurityGroupIds: string[]; SubnetIds: string[]; } export interface AWSGreengrassConnectorDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InitialVersion?: AWSGreengrassConnectorDefinition1; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Greengrass::ConnectorDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassConnectorDefinition1 { Connectors: AWSGreengrassConnectorDefinition2[]; } export interface AWSGreengrassConnectorDefinition2 { ConnectorArn: string; Id: string; Parameters?: { [k: string]: unknown; }; } export interface AWSGreengrassConnectorDefinitionVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectorDefinitionId: string; Connectors: AWSGreengrassConnectorDefinitionVersion1[]; }; Type: 'AWS::Greengrass::ConnectorDefinitionVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassConnectorDefinitionVersion1 { ConnectorArn: string; Id: string; Parameters?: { [k: string]: unknown; }; } export interface AWSGreengrassCoreDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InitialVersion?: AWSGreengrassCoreDefinition1; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Greengrass::CoreDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassCoreDefinition1 { Cores: AWSGreengrassCoreDefinition2[]; } export interface AWSGreengrassCoreDefinition2 { CertificateArn: string; Id: string; SyncShadow?: boolean; ThingArn: string; } export interface AWSGreengrassCoreDefinitionVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CoreDefinitionId: string; Cores: AWSGreengrassCoreDefinitionVersion1[]; }; Type: 'AWS::Greengrass::CoreDefinitionVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassCoreDefinitionVersion1 { CertificateArn: string; Id: string; SyncShadow?: boolean; ThingArn: string; } export interface AWSGreengrassDeviceDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InitialVersion?: AWSGreengrassDeviceDefinition1; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Greengrass::DeviceDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassDeviceDefinition1 { Devices: AWSGreengrassDeviceDefinition2[]; } export interface AWSGreengrassDeviceDefinition2 { CertificateArn: string; Id: string; SyncShadow?: boolean; ThingArn: string; } export interface AWSGreengrassDeviceDefinitionVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeviceDefinitionId: string; Devices: AWSGreengrassDeviceDefinitionVersion1[]; }; Type: 'AWS::Greengrass::DeviceDefinitionVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassDeviceDefinitionVersion1 { CertificateArn: string; Id: string; SyncShadow?: boolean; ThingArn: string; } export interface AWSGreengrassFunctionDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InitialVersion?: AWSGreengrassFunctionDefinition1; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Greengrass::FunctionDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassFunctionDefinition1 { DefaultConfig?: AWSGreengrassFunctionDefinition2; Functions: AWSGreengrassFunctionDefinition5[]; } export interface AWSGreengrassFunctionDefinition2 { Execution: AWSGreengrassFunctionDefinition3; } export interface AWSGreengrassFunctionDefinition3 { IsolationMode?: string; RunAs?: AWSGreengrassFunctionDefinition4; } export interface AWSGreengrassFunctionDefinition4 { Gid?: number; Uid?: number; } export interface AWSGreengrassFunctionDefinition5 { FunctionArn: string; FunctionConfiguration: AWSGreengrassFunctionDefinition6; Id: string; } export interface AWSGreengrassFunctionDefinition6 { EncodingType?: string; Environment?: AWSGreengrassFunctionDefinition7; ExecArgs?: string; Executable?: string; MemorySize?: number; Pinned?: boolean; Timeout?: number; } export interface AWSGreengrassFunctionDefinition7 { AccessSysfs?: boolean; Execution?: AWSGreengrassFunctionDefinition3; ResourceAccessPolicies?: AWSGreengrassFunctionDefinition8[]; Variables?: { [k: string]: unknown; }; } export interface AWSGreengrassFunctionDefinition8 { Permission?: string; ResourceId: string; } export interface AWSGreengrassFunctionDefinitionVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DefaultConfig?: AWSGreengrassFunctionDefinitionVersion1; FunctionDefinitionId: string; Functions: AWSGreengrassFunctionDefinitionVersion4[]; }; Type: 'AWS::Greengrass::FunctionDefinitionVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassFunctionDefinitionVersion1 { Execution: AWSGreengrassFunctionDefinitionVersion2; } export interface AWSGreengrassFunctionDefinitionVersion2 { IsolationMode?: string; RunAs?: AWSGreengrassFunctionDefinitionVersion3; } export interface AWSGreengrassFunctionDefinitionVersion3 { Gid?: number; Uid?: number; } export interface AWSGreengrassFunctionDefinitionVersion4 { FunctionArn: string; FunctionConfiguration: AWSGreengrassFunctionDefinitionVersion5; Id: string; } export interface AWSGreengrassFunctionDefinitionVersion5 { EncodingType?: string; Environment?: AWSGreengrassFunctionDefinitionVersion6; ExecArgs?: string; Executable?: string; MemorySize?: number; Pinned?: boolean; Timeout?: number; } export interface AWSGreengrassFunctionDefinitionVersion6 { AccessSysfs?: boolean; Execution?: AWSGreengrassFunctionDefinitionVersion2; ResourceAccessPolicies?: AWSGreengrassFunctionDefinitionVersion7[]; Variables?: { [k: string]: unknown; }; } export interface AWSGreengrassFunctionDefinitionVersion7 { Permission?: string; ResourceId: string; } export interface AWSGreengrassGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InitialVersion?: AWSGreengrassGroup1; Name: string; RoleArn?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Greengrass::Group'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassGroup1 { ConnectorDefinitionVersionArn?: string; CoreDefinitionVersionArn?: string; DeviceDefinitionVersionArn?: string; FunctionDefinitionVersionArn?: string; LoggerDefinitionVersionArn?: string; ResourceDefinitionVersionArn?: string; SubscriptionDefinitionVersionArn?: string; } export interface AWSGreengrassGroupVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectorDefinitionVersionArn?: string; CoreDefinitionVersionArn?: string; DeviceDefinitionVersionArn?: string; FunctionDefinitionVersionArn?: string; GroupId: string; LoggerDefinitionVersionArn?: string; ResourceDefinitionVersionArn?: string; SubscriptionDefinitionVersionArn?: string; }; Type: 'AWS::Greengrass::GroupVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassLoggerDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InitialVersion?: AWSGreengrassLoggerDefinition1; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Greengrass::LoggerDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassLoggerDefinition1 { Loggers: AWSGreengrassLoggerDefinition2[]; } export interface AWSGreengrassLoggerDefinition2 { Component: string; Id: string; Level: string; Space?: number; Type: string; } export interface AWSGreengrassLoggerDefinitionVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LoggerDefinitionId: string; Loggers: AWSGreengrassLoggerDefinitionVersion1[]; }; Type: 'AWS::Greengrass::LoggerDefinitionVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassLoggerDefinitionVersion1 { Component: string; Id: string; Level: string; Space?: number; Type: string; } export interface AWSGreengrassResourceDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InitialVersion?: AWSGreengrassResourceDefinition1; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Greengrass::ResourceDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassResourceDefinition1 { Resources: AWSGreengrassResourceDefinition2[]; } export interface AWSGreengrassResourceDefinition2 { Id: string; Name: string; ResourceDataContainer: AWSGreengrassResourceDefinition3; } export interface AWSGreengrassResourceDefinition3 { LocalDeviceResourceData?: AWSGreengrassResourceDefinition4; LocalVolumeResourceData?: AWSGreengrassResourceDefinition6; S3MachineLearningModelResourceData?: AWSGreengrassResourceDefinition7; SageMakerMachineLearningModelResourceData?: AWSGreengrassResourceDefinition9; SecretsManagerSecretResourceData?: AWSGreengrassResourceDefinition10; } export interface AWSGreengrassResourceDefinition4 { GroupOwnerSetting?: AWSGreengrassResourceDefinition5; SourcePath: string; } export interface AWSGreengrassResourceDefinition5 { AutoAddGroupOwner: boolean; GroupOwner?: string; } export interface AWSGreengrassResourceDefinition6 { DestinationPath: string; GroupOwnerSetting?: AWSGreengrassResourceDefinition5; SourcePath: string; } export interface AWSGreengrassResourceDefinition7 { DestinationPath: string; OwnerSetting?: AWSGreengrassResourceDefinition8; S3Uri: string; } export interface AWSGreengrassResourceDefinition8 { GroupOwner: string; GroupPermission: string; } export interface AWSGreengrassResourceDefinition9 { DestinationPath: string; OwnerSetting?: AWSGreengrassResourceDefinition8; SageMakerJobArn: string; } export interface AWSGreengrassResourceDefinition10 { ARN: string; AdditionalStagingLabelsToDownload?: string[]; } export interface AWSGreengrassResourceDefinitionVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResourceDefinitionId: string; Resources: AWSGreengrassResourceDefinitionVersion1[]; }; Type: 'AWS::Greengrass::ResourceDefinitionVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassResourceDefinitionVersion1 { Id: string; Name: string; ResourceDataContainer: AWSGreengrassResourceDefinitionVersion2; } export interface AWSGreengrassResourceDefinitionVersion2 { LocalDeviceResourceData?: AWSGreengrassResourceDefinitionVersion3; LocalVolumeResourceData?: AWSGreengrassResourceDefinitionVersion5; S3MachineLearningModelResourceData?: AWSGreengrassResourceDefinitionVersion6; SageMakerMachineLearningModelResourceData?: AWSGreengrassResourceDefinitionVersion8; SecretsManagerSecretResourceData?: AWSGreengrassResourceDefinitionVersion9; } export interface AWSGreengrassResourceDefinitionVersion3 { GroupOwnerSetting?: AWSGreengrassResourceDefinitionVersion4; SourcePath: string; } export interface AWSGreengrassResourceDefinitionVersion4 { AutoAddGroupOwner: boolean; GroupOwner?: string; } export interface AWSGreengrassResourceDefinitionVersion5 { DestinationPath: string; GroupOwnerSetting?: AWSGreengrassResourceDefinitionVersion4; SourcePath: string; } export interface AWSGreengrassResourceDefinitionVersion6 { DestinationPath: string; OwnerSetting?: AWSGreengrassResourceDefinitionVersion7; S3Uri: string; } export interface AWSGreengrassResourceDefinitionVersion7 { GroupOwner: string; GroupPermission: string; } export interface AWSGreengrassResourceDefinitionVersion8 { DestinationPath: string; OwnerSetting?: AWSGreengrassResourceDefinitionVersion7; SageMakerJobArn: string; } export interface AWSGreengrassResourceDefinitionVersion9 { ARN: string; AdditionalStagingLabelsToDownload?: string[]; } export interface AWSGreengrassSubscriptionDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InitialVersion?: AWSGreengrassSubscriptionDefinition1; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Greengrass::SubscriptionDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassSubscriptionDefinition1 { Subscriptions: AWSGreengrassSubscriptionDefinition2[]; } export interface AWSGreengrassSubscriptionDefinition2 { Id: string; Source: string; Subject: string; Target: string; } export interface AWSGreengrassSubscriptionDefinitionVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { SubscriptionDefinitionId: string; Subscriptions: AWSGreengrassSubscriptionDefinitionVersion1[]; }; Type: 'AWS::Greengrass::SubscriptionDefinitionVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassSubscriptionDefinitionVersion1 { Id: string; Source: string; Subject: string; Target: string; } export interface AWSGreengrassV2ComponentVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { InlineRecipe?: string; LambdaFunction?: AWSGreengrassV2ComponentVersion1; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::GreengrassV2::ComponentVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGreengrassV2ComponentVersion1 { ComponentDependencies?: { [k: string]: AWSGreengrassV2ComponentVersion2; }; ComponentLambdaParameters?: AWSGreengrassV2ComponentVersion3; ComponentName?: string; ComponentPlatforms?: AWSGreengrassV2ComponentVersion9[]; ComponentVersion?: string; LambdaArn?: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSGreengrassV2ComponentVersion2 { DependencyType?: string; VersionRequirement?: string; } export interface AWSGreengrassV2ComponentVersion3 { EnvironmentVariables?: { [k: string]: unknown; }; EventSources?: AWSGreengrassV2ComponentVersion4[]; ExecArgs?: string[]; InputPayloadEncodingType?: string; LinuxProcessParams?: AWSGreengrassV2ComponentVersion5; MaxIdleTimeInSeconds?: number; MaxInstancesCount?: number; MaxQueueSize?: number; Pinned?: boolean; StatusTimeoutInSeconds?: number; TimeoutInSeconds?: number; } export interface AWSGreengrassV2ComponentVersion4 { Topic?: string; Type?: string; } export interface AWSGreengrassV2ComponentVersion5 { ContainerParams?: AWSGreengrassV2ComponentVersion6; IsolationMode?: string; } export interface AWSGreengrassV2ComponentVersion6 { Devices?: AWSGreengrassV2ComponentVersion7[]; MemorySizeInKB?: number; MountROSysfs?: boolean; Volumes?: AWSGreengrassV2ComponentVersion8[]; } export interface AWSGreengrassV2ComponentVersion7 { AddGroupOwner?: boolean; Path?: string; Permission?: string; } export interface AWSGreengrassV2ComponentVersion8 { AddGroupOwner?: boolean; DestinationPath?: string; Permission?: string; SourcePath?: string; } export interface AWSGreengrassV2ComponentVersion9 { Attributes?: { [k: string]: unknown; }; Name?: string; } export interface AWSGreengrassV2Deployment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Components?: { [k: string]: AWSGreengrassV2Deployment1; }; DeploymentName?: string; DeploymentPolicies?: AWSGreengrassV2Deployment5; IotJobConfiguration?: AWSGreengrassV2Deployment8; Tags?: { [k: string]: unknown; }; TargetArn: string; }; Type: 'AWS::GreengrassV2::Deployment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSGreengrassV2Deployment1 { ComponentVersion?: string; ConfigurationUpdate?: AWSGreengrassV2Deployment2; RunWith?: AWSGreengrassV2Deployment3; } export interface AWSGreengrassV2Deployment2 { Merge?: string; Reset?: string[]; } export interface AWSGreengrassV2Deployment3 { PosixUser?: string; SystemResourceLimits?: AWSGreengrassV2Deployment4; WindowsUser?: string; } export interface AWSGreengrassV2Deployment4 { Cpus?: number; Memory?: number; } export interface AWSGreengrassV2Deployment5 { ComponentUpdatePolicy?: AWSGreengrassV2Deployment6; ConfigurationValidationPolicy?: AWSGreengrassV2Deployment7; FailureHandlingPolicy?: string; } export interface AWSGreengrassV2Deployment6 { Action?: string; TimeoutInSeconds?: number; } export interface AWSGreengrassV2Deployment7 { TimeoutInSeconds?: number; } export interface AWSGreengrassV2Deployment8 { AbortConfig?: AWSGreengrassV2Deployment9; JobExecutionsRolloutConfig?: AWSGreengrassV2Deployment11; TimeoutConfig?: AWSGreengrassV2Deployment14; } export interface AWSGreengrassV2Deployment9 { CriteriaList: AWSGreengrassV2Deployment10[]; } export interface AWSGreengrassV2Deployment10 { Action: string; FailureType: string; MinNumberOfExecutedThings: number; ThresholdPercentage: number; } export interface AWSGreengrassV2Deployment11 { ExponentialRate?: AWSGreengrassV2Deployment12; MaximumPerMinute?: number; } export interface AWSGreengrassV2Deployment12 { BaseRatePerMinute: number; IncrementFactor: number; RateIncreaseCriteria: AWSGreengrassV2Deployment13; } export interface AWSGreengrassV2Deployment13 { NumberOfNotifiedThings?: number; NumberOfSucceededThings?: number; } export interface AWSGreengrassV2Deployment14 { InProgressTimeoutInMinutes?: number; } export interface AWSGroundStationConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConfigData: AWSGroundStationConfig1; Name: string; Tags?: Tag[]; }; Type: 'AWS::GroundStation::Config'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGroundStationConfig1 { AntennaDownlinkConfig?: AWSGroundStationConfig2; AntennaDownlinkDemodDecodeConfig?: AWSGroundStationConfig6; AntennaUplinkConfig?: AWSGroundStationConfig9; DataflowEndpointConfig?: AWSGroundStationConfig12; S3RecordingConfig?: AWSGroundStationConfig13; TrackingConfig?: AWSGroundStationConfig14; UplinkEchoConfig?: AWSGroundStationConfig15; } export interface AWSGroundStationConfig2 { SpectrumConfig?: AWSGroundStationConfig3; } export interface AWSGroundStationConfig3 { Bandwidth?: AWSGroundStationConfig4; CenterFrequency?: AWSGroundStationConfig5; Polarization?: string; } export interface AWSGroundStationConfig4 { Units?: string; Value?: number; } export interface AWSGroundStationConfig5 { Units?: string; Value?: number; } export interface AWSGroundStationConfig6 { DecodeConfig?: AWSGroundStationConfig7; DemodulationConfig?: AWSGroundStationConfig8; SpectrumConfig?: AWSGroundStationConfig3; } export interface AWSGroundStationConfig7 { UnvalidatedJSON?: string; } export interface AWSGroundStationConfig8 { UnvalidatedJSON?: string; } export interface AWSGroundStationConfig9 { SpectrumConfig?: AWSGroundStationConfig10; TargetEirp?: AWSGroundStationConfig11; TransmitDisabled?: boolean; } export interface AWSGroundStationConfig10 { CenterFrequency?: AWSGroundStationConfig5; Polarization?: string; } export interface AWSGroundStationConfig11 { Units?: string; Value?: number; } export interface AWSGroundStationConfig12 { DataflowEndpointName?: string; DataflowEndpointRegion?: string; } export interface AWSGroundStationConfig13 { BucketArn?: string; Prefix?: string; RoleArn?: string; } export interface AWSGroundStationConfig14 { Autotrack?: string; } export interface AWSGroundStationConfig15 { AntennaUplinkConfigArn?: string; Enabled?: boolean; } export interface AWSGroundStationDataflowEndpointGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EndpointDetails: AWSGroundStationDataflowEndpointGroup1[]; Tags?: Tag[]; }; Type: 'AWS::GroundStation::DataflowEndpointGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGroundStationDataflowEndpointGroup1 { Endpoint?: AWSGroundStationDataflowEndpointGroup2; SecurityDetails?: AWSGroundStationDataflowEndpointGroup4; } export interface AWSGroundStationDataflowEndpointGroup2 { Address?: AWSGroundStationDataflowEndpointGroup3; Mtu?: number; Name?: string; } export interface AWSGroundStationDataflowEndpointGroup3 { Name?: string; Port?: number; } export interface AWSGroundStationDataflowEndpointGroup4 { RoleArn?: string; SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSGroundStationMissionProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ContactPostPassDurationSeconds?: number; ContactPrePassDurationSeconds?: number; DataflowEdges: AWSGroundStationMissionProfile1[]; MinimumViableContactDurationSeconds: number; Name: string; Tags?: Tag[]; TrackingConfigArn: string; }; Type: 'AWS::GroundStation::MissionProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGroundStationMissionProfile1 { Destination?: string; Source?: string; } export interface AWSGuardDutyDetector { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataSources?: AWSGuardDutyDetector1; Enable: boolean; FindingPublishingFrequency?: string; Tags?: Tag[]; }; Type: 'AWS::GuardDuty::Detector'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGuardDutyDetector1 { Kubernetes?: AWSGuardDutyDetector2; MalwareProtection?: AWSGuardDutyDetector4; S3Logs?: AWSGuardDutyDetector6; } export interface AWSGuardDutyDetector2 { AuditLogs?: AWSGuardDutyDetector3; } export interface AWSGuardDutyDetector3 { Enable?: boolean; } export interface AWSGuardDutyDetector4 { ScanEc2InstanceWithFindings?: AWSGuardDutyDetector5; } export interface AWSGuardDutyDetector5 { EbsVolumes?: boolean; } export interface AWSGuardDutyDetector6 { Enable?: boolean; } export interface AWSGuardDutyFilter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Action: string; Description: string; DetectorId: string; FindingCriteria: AWSGuardDutyFilter1; Name: string; Rank: number; Tags?: Tag[]; }; Type: 'AWS::GuardDuty::Filter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGuardDutyFilter1 { Criterion?: { [k: string]: unknown; }; ItemType?: AWSGuardDutyFilter2; } export interface AWSGuardDutyFilter2 { Eq?: string[]; Equals?: string[]; GreaterThan?: number; GreaterThanOrEqual?: number; Gt?: number; Gte?: number; LessThan?: number; LessThanOrEqual?: number; Lt?: number; Lte?: number; Neq?: string[]; NotEquals?: string[]; } export interface AWSGuardDutyIPSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Activate: boolean; DetectorId: string; Format: string; Location: string; Name?: string; Tags?: Tag[]; }; Type: 'AWS::GuardDuty::IPSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGuardDutyMaster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DetectorId: string; InvitationId?: string; MasterId: string; }; Type: 'AWS::GuardDuty::Master'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGuardDutyMember { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DetectorId: string; DisableEmailNotification?: boolean; Email: string; MemberId: string; Message?: string; Status?: string; }; Type: 'AWS::GuardDuty::Member'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSGuardDutyThreatIntelSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Activate: boolean; DetectorId: string; Format: string; Location: string; Name?: string; Tags?: Tag[]; }; Type: 'AWS::GuardDuty::ThreatIntelSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSHealthLakeFHIRDatastore { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DatastoreName?: string; DatastoreTypeVersion: string; PreloadDataConfig?: AWSHealthLakeFHIRDatastore1; SseConfiguration?: AWSHealthLakeFHIRDatastore2; Tags?: Tag[]; }; Type: 'AWS::HealthLake::FHIRDatastore'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSHealthLakeFHIRDatastore1 { PreloadDataType: string; } export interface AWSHealthLakeFHIRDatastore2 { KmsEncryptionConfig: AWSHealthLakeFHIRDatastore3; } export interface AWSHealthLakeFHIRDatastore3 { CmkType: string; KmsKeyId?: string; } export interface AWSIAMAccessKey { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Serial?: number; Status?: string; UserName: string; }; Type: 'AWS::IAM::AccessKey'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { GroupName?: string; ManagedPolicyArns?: string[]; Path?: string; Policies?: AWSIAMGroup1[]; }; Type: 'AWS::IAM::Group'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMGroup1 { PolicyDocument: { [k: string]: unknown; }; PolicyName: string; } export interface AWSIAMInstanceProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InstanceProfileName?: string; Path?: string; Roles: string[]; }; Type: 'AWS::IAM::InstanceProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMManagedPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Groups?: string[]; ManagedPolicyName?: string; Path?: string; PolicyDocument: { [k: string]: unknown; }; Roles?: string[]; Users?: string[]; }; Type: 'AWS::IAM::ManagedPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMOIDCProvider { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClientIdList?: string[]; Tags?: Tag[]; ThumbprintList: string[]; Url?: string; }; Type: 'AWS::IAM::OIDCProvider'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Groups?: string[]; PolicyDocument: { [k: string]: unknown; }; PolicyName: string; Roles?: string[]; Users?: string[]; }; Type: 'AWS::IAM::Policy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMRole { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssumeRolePolicyDocument: { [k: string]: unknown; }; Description?: string; ManagedPolicyArns?: string[]; MaxSessionDuration?: number; Path?: string; PermissionsBoundary?: string; Policies?: AWSIAMRole1[]; RoleName?: string; Tags?: Tag[]; }; Type: 'AWS::IAM::Role'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMRole1 { PolicyDocument: { [k: string]: unknown; }; PolicyName: string; } export interface AWSIAMSAMLProvider { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name?: string; SamlMetadataDocument: string; Tags?: Tag[]; }; Type: 'AWS::IAM::SAMLProvider'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMServerCertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CertificateBody?: string; CertificateChain?: string; Path?: string; PrivateKey?: string; ServerCertificateName?: string; Tags?: Tag[]; }; Type: 'AWS::IAM::ServerCertificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMServiceLinkedRole { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AWSServiceName: string; CustomSuffix?: string; Description?: string; }; Type: 'AWS::IAM::ServiceLinkedRole'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMUser { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Groups?: string[]; LoginProfile?: AWSIAMUser1; ManagedPolicyArns?: string[]; Path?: string; PermissionsBoundary?: string; Policies?: AWSIAMUser2[]; Tags?: Tag[]; UserName?: string; }; Type: 'AWS::IAM::User'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMUser1 { Password: string; PasswordResetRequired?: boolean; } export interface AWSIAMUser2 { PolicyDocument: { [k: string]: unknown; }; PolicyName: string; } export interface AWSIAMUserToGroupAddition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GroupName: string; Users: string[]; }; Type: 'AWS::IAM::UserToGroupAddition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIAMVirtualMFADevice { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Path?: string; Tags?: Tag[]; Users: string[]; VirtualMfaDeviceName?: string; }; Type: 'AWS::IAM::VirtualMFADevice'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIVSChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Authorized?: boolean; LatencyMode?: string; Name?: string; RecordingConfigurationArn?: string; Tags?: Tag[]; Type?: string; }; Type: 'AWS::IVS::Channel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIVSPlaybackKeyPair { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Name?: string; PublicKeyMaterial?: string; Tags?: Tag[]; }; Type: 'AWS::IVS::PlaybackKeyPair'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIVSRecordingConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DestinationConfiguration: AWSIVSRecordingConfiguration1; Name?: string; RecordingReconnectWindowSeconds?: number; Tags?: Tag[]; ThumbnailConfiguration?: AWSIVSRecordingConfiguration3; }; Type: 'AWS::IVS::RecordingConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIVSRecordingConfiguration1 { S3: AWSIVSRecordingConfiguration2; } export interface AWSIVSRecordingConfiguration2 { BucketName: string; } export interface AWSIVSRecordingConfiguration3 { RecordingMode: string; TargetIntervalSeconds?: number; } export interface AWSIVSStreamKey { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ChannelArn: string; Tags?: Tag[]; }; Type: 'AWS::IVS::StreamKey'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIdentityStoreGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; DisplayName: string; IdentityStoreId: string; }; Type: 'AWS::IdentityStore::Group'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIdentityStoreGroupMembership { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GroupId: string; IdentityStoreId: string; MemberId: AWSIdentityStoreGroupMembership1; }; Type: 'AWS::IdentityStore::GroupMembership'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIdentityStoreGroupMembership1 { UserId: string; } export interface AWSImageBuilderComponent { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ChangeDescription?: string; Data?: string; Description?: string; KmsKeyId?: string; Name: string; Platform: string; SupportedOsVersions?: string[]; Tags?: { [k: string]: unknown; }; Uri?: string; Version: string; }; Type: 'AWS::ImageBuilder::Component'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSImageBuilderContainerRecipe { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Components: AWSImageBuilderContainerRecipe1[]; ContainerType: string; Description?: string; DockerfileTemplateData?: string; DockerfileTemplateUri?: string; ImageOsVersionOverride?: string; InstanceConfiguration?: AWSImageBuilderContainerRecipe3; KmsKeyId?: string; Name: string; ParentImage: string; PlatformOverride?: string; Tags?: { [k: string]: unknown; }; TargetRepository: AWSImageBuilderContainerRecipe6; Version: string; WorkingDirectory?: string; }; Type: 'AWS::ImageBuilder::ContainerRecipe'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSImageBuilderContainerRecipe1 { ComponentArn?: string; Parameters?: AWSImageBuilderContainerRecipe2[]; } export interface AWSImageBuilderContainerRecipe2 { Name: string; Value: string[]; } export interface AWSImageBuilderContainerRecipe3 { BlockDeviceMappings?: AWSImageBuilderContainerRecipe4[]; Image?: string; } export interface AWSImageBuilderContainerRecipe4 { DeviceName?: string; Ebs?: AWSImageBuilderContainerRecipe5; NoDevice?: string; VirtualName?: string; } export interface AWSImageBuilderContainerRecipe5 { DeleteOnTermination?: boolean; Encrypted?: boolean; Iops?: number; KmsKeyId?: string; SnapshotId?: string; Throughput?: number; VolumeSize?: number; VolumeType?: string; } export interface AWSImageBuilderContainerRecipe6 { RepositoryName?: string; Service?: string; } export interface AWSImageBuilderDistributionConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Distributions: AWSImageBuilderDistributionConfiguration1[]; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::ImageBuilder::DistributionConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSImageBuilderDistributionConfiguration1 { AmiDistributionConfiguration?: AWSImageBuilderDistributionConfiguration2; ContainerDistributionConfiguration?: AWSImageBuilderDistributionConfiguration4; FastLaunchConfigurations?: AWSImageBuilderDistributionConfiguration6[]; LaunchTemplateConfigurations?: AWSImageBuilderDistributionConfiguration9[]; LicenseConfigurationArns?: string[]; Region: string; } export interface AWSImageBuilderDistributionConfiguration2 { AmiTags?: { [k: string]: unknown; }; Description?: string; KmsKeyId?: string; LaunchPermissionConfiguration?: AWSImageBuilderDistributionConfiguration3; Name?: string; TargetAccountIds?: string[]; } export interface AWSImageBuilderDistributionConfiguration3 { OrganizationArns?: string[]; OrganizationalUnitArns?: string[]; UserGroups?: string[]; UserIds?: string[]; } export interface AWSImageBuilderDistributionConfiguration4 { ContainerTags?: string[]; Description?: string; TargetRepository?: AWSImageBuilderDistributionConfiguration5; } export interface AWSImageBuilderDistributionConfiguration5 { RepositoryName?: string; Service?: string; } export interface AWSImageBuilderDistributionConfiguration6 { AccountId?: string; Enabled?: boolean; LaunchTemplate?: AWSImageBuilderDistributionConfiguration7; MaxParallelLaunches?: number; SnapshotConfiguration?: AWSImageBuilderDistributionConfiguration8; } export interface AWSImageBuilderDistributionConfiguration7 { LaunchTemplateId?: string; LaunchTemplateName?: string; LaunchTemplateVersion?: string; } export interface AWSImageBuilderDistributionConfiguration8 { TargetResourceCount?: number; } export interface AWSImageBuilderDistributionConfiguration9 { AccountId?: string; LaunchTemplateId?: string; SetDefaultVersion?: boolean; } export interface AWSImageBuilderImage { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ContainerRecipeArn?: string; DistributionConfigurationArn?: string; EnhancedImageMetadataEnabled?: boolean; ImageRecipeArn?: string; ImageTestsConfiguration?: AWSImageBuilderImage1; InfrastructureConfigurationArn: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::ImageBuilder::Image'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSImageBuilderImage1 { ImageTestsEnabled?: boolean; TimeoutMinutes?: number; } export interface AWSImageBuilderImagePipeline { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ContainerRecipeArn?: string; Description?: string; DistributionConfigurationArn?: string; EnhancedImageMetadataEnabled?: boolean; ImageRecipeArn?: string; ImageTestsConfiguration?: AWSImageBuilderImagePipeline1; InfrastructureConfigurationArn: string; Name: string; Schedule?: AWSImageBuilderImagePipeline2; Status?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::ImageBuilder::ImagePipeline'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSImageBuilderImagePipeline1 { ImageTestsEnabled?: boolean; TimeoutMinutes?: number; } export interface AWSImageBuilderImagePipeline2 { PipelineExecutionStartCondition?: string; ScheduleExpression?: string; } export interface AWSImageBuilderImageRecipe { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdditionalInstanceConfiguration?: AWSImageBuilderImageRecipe1; BlockDeviceMappings?: AWSImageBuilderImageRecipe3[]; Components: AWSImageBuilderImageRecipe5[]; Description?: string; Name: string; ParentImage: string; Tags?: { [k: string]: unknown; }; Version: string; WorkingDirectory?: string; }; Type: 'AWS::ImageBuilder::ImageRecipe'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSImageBuilderImageRecipe1 { SystemsManagerAgent?: AWSImageBuilderImageRecipe2; UserDataOverride?: string; } export interface AWSImageBuilderImageRecipe2 { UninstallAfterBuild?: boolean; } export interface AWSImageBuilderImageRecipe3 { DeviceName?: string; Ebs?: AWSImageBuilderImageRecipe4; NoDevice?: string; VirtualName?: string; } export interface AWSImageBuilderImageRecipe4 { DeleteOnTermination?: boolean; Encrypted?: boolean; Iops?: number; KmsKeyId?: string; SnapshotId?: string; Throughput?: number; VolumeSize?: number; VolumeType?: string; } export interface AWSImageBuilderImageRecipe5 { ComponentArn?: string; Parameters?: AWSImageBuilderImageRecipe6[]; } export interface AWSImageBuilderImageRecipe6 { Name: string; Value: string[]; } export interface AWSImageBuilderInfrastructureConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; InstanceMetadataOptions?: AWSImageBuilderInfrastructureConfiguration1; InstanceProfileName: string; InstanceTypes?: string[]; KeyPair?: string; Logging?: AWSImageBuilderInfrastructureConfiguration2; Name: string; ResourceTags?: { [k: string]: unknown; }; SecurityGroupIds?: string[]; SnsTopicArn?: string; SubnetId?: string; Tags?: { [k: string]: unknown; }; TerminateInstanceOnFailure?: boolean; }; Type: 'AWS::ImageBuilder::InfrastructureConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSImageBuilderInfrastructureConfiguration1 { HttpPutResponseHopLimit?: number; HttpTokens?: string; } export interface AWSImageBuilderInfrastructureConfiguration2 { S3Logs?: AWSImageBuilderInfrastructureConfiguration3; } export interface AWSImageBuilderInfrastructureConfiguration3 { S3BucketName?: string; S3KeyPrefix?: string; } export interface AWSInspectorAssessmentTarget { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AssessmentTargetName?: string; ResourceGroupArn?: string; }; Type: 'AWS::Inspector::AssessmentTarget'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSInspectorAssessmentTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssessmentTargetArn: string; AssessmentTemplateName?: string; DurationInSeconds: number; RulesPackageArns: string[]; UserAttributesForFindings?: Tag[]; }; Type: 'AWS::Inspector::AssessmentTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSInspectorResourceGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResourceGroupTags: Tag[]; }; Type: 'AWS::Inspector::ResourceGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSInspectorV2Filter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; FilterAction: string; FilterCriteria: AWSInspectorV2Filter1; Name: string; }; Type: 'AWS::InspectorV2::Filter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSInspectorV2Filter1 { AwsAccountId?: AWSInspectorV2Filter2[]; ComponentId?: AWSInspectorV2Filter2[]; ComponentType?: AWSInspectorV2Filter2[]; Ec2InstanceImageId?: AWSInspectorV2Filter2[]; Ec2InstanceSubnetId?: AWSInspectorV2Filter2[]; Ec2InstanceVpcId?: AWSInspectorV2Filter2[]; EcrImageArchitecture?: AWSInspectorV2Filter2[]; EcrImageHash?: AWSInspectorV2Filter2[]; EcrImagePushedAt?: AWSInspectorV2Filter3[]; EcrImageRegistry?: AWSInspectorV2Filter2[]; EcrImageRepositoryName?: AWSInspectorV2Filter2[]; EcrImageTags?: AWSInspectorV2Filter2[]; FindingArn?: AWSInspectorV2Filter2[]; FindingStatus?: AWSInspectorV2Filter2[]; FindingType?: AWSInspectorV2Filter2[]; FirstObservedAt?: AWSInspectorV2Filter3[]; InspectorScore?: AWSInspectorV2Filter4[]; LastObservedAt?: AWSInspectorV2Filter3[]; NetworkProtocol?: AWSInspectorV2Filter2[]; PortRange?: AWSInspectorV2Filter5[]; RelatedVulnerabilities?: AWSInspectorV2Filter2[]; ResourceId?: AWSInspectorV2Filter2[]; ResourceTags?: AWSInspectorV2Filter6[]; ResourceType?: AWSInspectorV2Filter2[]; Severity?: AWSInspectorV2Filter2[]; Title?: AWSInspectorV2Filter2[]; UpdatedAt?: AWSInspectorV2Filter3[]; VendorSeverity?: AWSInspectorV2Filter2[]; VulnerabilityId?: AWSInspectorV2Filter2[]; VulnerabilitySource?: AWSInspectorV2Filter2[]; VulnerablePackages?: AWSInspectorV2Filter7[]; } export interface AWSInspectorV2Filter2 { Comparison: string; Value: string; } export interface AWSInspectorV2Filter3 { EndInclusive?: number; StartInclusive?: number; } export interface AWSInspectorV2Filter4 { LowerInclusive?: number; UpperInclusive?: number; } export interface AWSInspectorV2Filter5 { BeginInclusive?: number; EndInclusive?: number; } export interface AWSInspectorV2Filter6 { Comparison: string; Key?: string; Value?: string; } export interface AWSInspectorV2Filter7 { Architecture?: AWSInspectorV2Filter2; Epoch?: AWSInspectorV2Filter4; Name?: AWSInspectorV2Filter2; Release?: AWSInspectorV2Filter2; SourceLayerHash?: AWSInspectorV2Filter2; Version?: AWSInspectorV2Filter2; } export interface AWSIoT1ClickDevice { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeviceId: string; Enabled: boolean; }; Type: 'AWS::IoT1Click::Device'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoT1ClickPlacement { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssociatedDevices?: { [k: string]: unknown; }; Attributes?: { [k: string]: unknown; }; PlacementName?: string; ProjectName: string; }; Type: 'AWS::IoT1Click::Placement'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoT1ClickProject { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; PlacementTemplate: AWSIoT1ClickProject1; ProjectName?: string; }; Type: 'AWS::IoT1Click::Project'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoT1ClickProject1 { DefaultAttributes?: { [k: string]: unknown; }; DeviceTemplates?: { [k: string]: unknown; }; } export interface AWSIoTAccountAuditConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccountId: string; AuditCheckConfigurations: AWSIoTAccountAuditConfiguration1; AuditNotificationTargetConfigurations?: AWSIoTAccountAuditConfiguration3; RoleArn: string; }; Type: 'AWS::IoT::AccountAuditConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTAccountAuditConfiguration1 { AuthenticatedCognitoRoleOverlyPermissiveCheck?: AWSIoTAccountAuditConfiguration2; CaCertificateExpiringCheck?: AWSIoTAccountAuditConfiguration2; CaCertificateKeyQualityCheck?: AWSIoTAccountAuditConfiguration2; ConflictingClientIdsCheck?: AWSIoTAccountAuditConfiguration2; DeviceCertificateExpiringCheck?: AWSIoTAccountAuditConfiguration2; DeviceCertificateKeyQualityCheck?: AWSIoTAccountAuditConfiguration2; DeviceCertificateSharedCheck?: AWSIoTAccountAuditConfiguration2; IntermediateCaRevokedForActiveDeviceCertificatesCheck?: AWSIoTAccountAuditConfiguration2; IoTPolicyPotentialMisConfigurationCheck?: AWSIoTAccountAuditConfiguration2; IotPolicyOverlyPermissiveCheck?: AWSIoTAccountAuditConfiguration2; IotRoleAliasAllowsAccessToUnusedServicesCheck?: AWSIoTAccountAuditConfiguration2; IotRoleAliasOverlyPermissiveCheck?: AWSIoTAccountAuditConfiguration2; LoggingDisabledCheck?: AWSIoTAccountAuditConfiguration2; RevokedCaCertificateStillActiveCheck?: AWSIoTAccountAuditConfiguration2; RevokedDeviceCertificateStillActiveCheck?: AWSIoTAccountAuditConfiguration2; UnauthenticatedCognitoRoleOverlyPermissiveCheck?: AWSIoTAccountAuditConfiguration2; } export interface AWSIoTAccountAuditConfiguration2 { Enabled?: boolean; } export interface AWSIoTAccountAuditConfiguration3 { Sns?: AWSIoTAccountAuditConfiguration4; } export interface AWSIoTAccountAuditConfiguration4 { Enabled?: boolean; RoleArn?: string; TargetArn?: string; } export interface AWSIoTAuthorizer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthorizerFunctionArn: string; AuthorizerName?: string; EnableCachingForHttp?: boolean; SigningDisabled?: boolean; Status?: string; Tags?: Tag[]; TokenKeyName?: string; TokenSigningPublicKeys?: { [k: string]: unknown; }; }; Type: 'AWS::IoT::Authorizer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTCACertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoRegistrationStatus?: string; CACertificatePem: string; CertificateMode?: string; RegistrationConfig?: AWSIoTCACertificate1; RemoveAutoRegistration?: boolean; Status: string; Tags?: Tag[]; VerificationCertificatePem?: string; }; Type: 'AWS::IoT::CACertificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTCACertificate1 { RoleArn?: string; TemplateBody?: string; TemplateName?: string; } export interface AWSIoTCertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CACertificatePem?: string; CertificateMode?: string; CertificatePem?: string; CertificateSigningRequest?: string; Status: string; }; Type: 'AWS::IoT::Certificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTCustomMetric { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DisplayName?: string; MetricName?: string; MetricType: string; Tags?: Tag[]; }; Type: 'AWS::IoT::CustomMetric'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTDimension { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name?: string; StringValues: string[]; Tags?: Tag[]; Type: string; }; Type: 'AWS::IoT::Dimension'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTDomainConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AuthorizerConfig?: AWSIoTDomainConfiguration1; DomainConfigurationName?: string; DomainConfigurationStatus?: string; DomainName?: string; ServerCertificateArns?: string[]; ServiceType?: string; Tags?: Tag[]; ValidationCertificateArn?: string; }; Type: 'AWS::IoT::DomainConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTDomainConfiguration1 { AllowAuthorizerOverride?: boolean; DefaultAuthorizerName?: string; } export interface AWSIoTFleetMetric { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AggregationField?: string; AggregationType?: AWSIoTFleetMetric1; Description?: string; IndexName?: string; MetricName: string; Period?: number; QueryString?: string; QueryVersion?: string; Tags?: Tag[]; Unit?: string; }; Type: 'AWS::IoT::FleetMetric'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTFleetMetric1 { Name: string; Values: string[]; } export interface AWSIoTJobTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AbortConfig?: AWSIoTJobTemplate1; Description: string; Document?: string; DocumentSource?: string; JobArn?: string; JobExecutionsRetryConfig?: AWSIoTJobTemplate3; JobExecutionsRolloutConfig?: AWSIoTJobTemplate5; JobTemplateId: string; PresignedUrlConfig?: AWSIoTJobTemplate8; Tags?: Tag[]; TimeoutConfig?: AWSIoTJobTemplate9; }; Type: 'AWS::IoT::JobTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTJobTemplate1 { CriteriaList: AWSIoTJobTemplate2[]; } export interface AWSIoTJobTemplate2 { Action: string; FailureType: string; MinNumberOfExecutedThings: number; ThresholdPercentage: number; } export interface AWSIoTJobTemplate3 { RetryCriteriaList?: AWSIoTJobTemplate4[]; } export interface AWSIoTJobTemplate4 { FailureType?: string; NumberOfRetries?: number; } export interface AWSIoTJobTemplate5 { ExponentialRolloutRate?: AWSIoTJobTemplate6; MaximumPerMinute?: number; } export interface AWSIoTJobTemplate6 { BaseRatePerMinute: number; IncrementFactor: number; RateIncreaseCriteria: AWSIoTJobTemplate7; } export interface AWSIoTJobTemplate7 { NumberOfNotifiedThings?: number; NumberOfSucceededThings?: number; } export interface AWSIoTJobTemplate8 { ExpiresInSec?: number; RoleArn: string; } export interface AWSIoTJobTemplate9 { InProgressTimeoutInMinutes: number; } export interface AWSIoTLogging { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccountId: string; DefaultLogLevel: string; RoleArn: string; }; Type: 'AWS::IoT::Logging'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTMitigationAction { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ActionName?: string; ActionParams: AWSIoTMitigationAction1; RoleArn: string; Tags?: Tag[]; }; Type: 'AWS::IoT::MitigationAction'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTMitigationAction1 { AddThingsToThingGroupParams?: AWSIoTMitigationAction2; EnableIoTLoggingParams?: AWSIoTMitigationAction3; PublishFindingToSnsParams?: AWSIoTMitigationAction4; ReplaceDefaultPolicyVersionParams?: AWSIoTMitigationAction5; UpdateCACertificateParams?: AWSIoTMitigationAction6; UpdateDeviceCertificateParams?: AWSIoTMitigationAction7; } export interface AWSIoTMitigationAction2 { OverrideDynamicGroups?: boolean; ThingGroupNames: string[]; } export interface AWSIoTMitigationAction3 { LogLevel: string; RoleArnForLogging: string; } export interface AWSIoTMitigationAction4 { TopicArn: string; } export interface AWSIoTMitigationAction5 { TemplateName: string; } export interface AWSIoTMitigationAction6 { Action: string; } export interface AWSIoTMitigationAction7 { Action: string; } export interface AWSIoTPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PolicyDocument: { [k: string]: unknown; }; PolicyName?: string; }; Type: 'AWS::IoT::Policy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTPolicyPrincipalAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PolicyName: string; Principal: string; }; Type: 'AWS::IoT::PolicyPrincipalAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTProvisioningTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Enabled?: boolean; PreProvisioningHook?: AWSIoTProvisioningTemplate1; ProvisioningRoleArn: string; Tags?: Tag[]; TemplateBody: string; TemplateName?: string; TemplateType?: string; }; Type: 'AWS::IoT::ProvisioningTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTProvisioningTemplate1 { PayloadVersion?: string; TargetArn?: string; } export interface AWSIoTResourceSpecificLogging { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LogLevel: string; TargetName: string; TargetType: string; }; Type: 'AWS::IoT::ResourceSpecificLogging'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTRoleAlias { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CredentialDurationSeconds?: number; RoleAlias?: string; RoleArn: string; Tags?: Tag[]; }; Type: 'AWS::IoT::RoleAlias'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTScheduledAudit { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DayOfMonth?: string; DayOfWeek?: string; Frequency: string; ScheduledAuditName?: string; Tags?: Tag[]; TargetCheckNames: string[]; }; Type: 'AWS::IoT::ScheduledAudit'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTSecurityProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AdditionalMetricsToRetainV2?: AWSIoTSecurityProfile1[]; AlertTargets?: { [k: string]: AWSIoTSecurityProfile3; }; Behaviors?: AWSIoTSecurityProfile4[]; SecurityProfileDescription?: string; SecurityProfileName?: string; Tags?: Tag[]; TargetArns?: string[]; }; Type: 'AWS::IoT::SecurityProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTSecurityProfile1 { Metric: string; MetricDimension?: AWSIoTSecurityProfile2; } export interface AWSIoTSecurityProfile2 { DimensionName: string; Operator?: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSIoTSecurityProfile3 { AlertTargetArn: string; RoleArn: string; } export interface AWSIoTSecurityProfile4 { Criteria?: AWSIoTSecurityProfile5; Metric?: string; MetricDimension?: AWSIoTSecurityProfile2; Name: string; SuppressAlerts?: boolean; } export interface AWSIoTSecurityProfile5 { ComparisonOperator?: string; ConsecutiveDatapointsToAlarm?: number; ConsecutiveDatapointsToClear?: number; DurationSeconds?: number; MlDetectionConfig?: AWSIoTSecurityProfile6; StatisticalThreshold?: AWSIoTSecurityProfile7; Value?: AWSIoTSecurityProfile8; } export interface AWSIoTSecurityProfile6 { ConfidenceLevel?: string; } export interface AWSIoTSecurityProfile7 { Statistic?: string; } export interface AWSIoTSecurityProfile8 { Cidrs?: string[]; Count?: string; Number?: number; Numbers?: number[]; Ports?: number[]; Strings?: string[]; } export interface AWSIoTThing { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AttributePayload?: AWSIoTThing1; ThingName?: string; }; Type: 'AWS::IoT::Thing'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTThing1 { Attributes?: { [k: string]: unknown; }; } export interface AWSIoTThingPrincipalAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Principal: string; ThingName: string; }; Type: 'AWS::IoT::ThingPrincipalAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTTopicRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { RuleName?: string; Tags?: Tag[]; TopicRulePayload: AWSIoTTopicRule1; }; Type: 'AWS::IoT::TopicRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTTopicRule1 { Actions: AWSIoTTopicRule2[]; AwsIotSqlVersion?: string; Description?: string; ErrorAction?: AWSIoTTopicRule2; RuleDisabled?: boolean; Sql: string; } export interface AWSIoTTopicRule2 { CloudwatchAlarm?: AWSIoTTopicRule3; CloudwatchLogs?: AWSIoTTopicRule4; CloudwatchMetric?: AWSIoTTopicRule5; DynamoDB?: AWSIoTTopicRule6; DynamoDBv2?: AWSIoTTopicRule7; Elasticsearch?: AWSIoTTopicRule9; Firehose?: AWSIoTTopicRule10; Http?: AWSIoTTopicRule11; IotAnalytics?: AWSIoTTopicRule15; IotEvents?: AWSIoTTopicRule16; IotSiteWise?: AWSIoTTopicRule17; Kafka?: AWSIoTTopicRule22; Kinesis?: AWSIoTTopicRule23; Lambda?: AWSIoTTopicRule24; Location?: AWSIoTTopicRule25; OpenSearch?: AWSIoTTopicRule27; Republish?: AWSIoTTopicRule28; S3?: AWSIoTTopicRule31; Sns?: AWSIoTTopicRule32; Sqs?: AWSIoTTopicRule33; StepFunctions?: AWSIoTTopicRule34; Timestream?: AWSIoTTopicRule35; } export interface AWSIoTTopicRule3 { AlarmName: string; RoleArn: string; StateReason: string; StateValue: string; } export interface AWSIoTTopicRule4 { LogGroupName: string; RoleArn: string; } export interface AWSIoTTopicRule5 { MetricName: string; MetricNamespace: string; MetricTimestamp?: string; MetricUnit: string; MetricValue: string; RoleArn: string; } export interface AWSIoTTopicRule6 { HashKeyField: string; HashKeyType?: string; HashKeyValue: string; PayloadField?: string; RangeKeyField?: string; RangeKeyType?: string; RangeKeyValue?: string; RoleArn: string; TableName: string; } export interface AWSIoTTopicRule7 { PutItem?: AWSIoTTopicRule8; RoleArn?: string; } export interface AWSIoTTopicRule8 { TableName: string; } export interface AWSIoTTopicRule9 { Endpoint: string; Id: string; Index: string; RoleArn: string; Type: string; } export interface AWSIoTTopicRule10 { BatchMode?: boolean; DeliveryStreamName: string; RoleArn: string; Separator?: string; } export interface AWSIoTTopicRule11 { Auth?: AWSIoTTopicRule12; ConfirmationUrl?: string; Headers?: AWSIoTTopicRule14[]; Url: string; } export interface AWSIoTTopicRule12 { Sigv4?: AWSIoTTopicRule13; } export interface AWSIoTTopicRule13 { RoleArn: string; ServiceName: string; SigningRegion: string; } export interface AWSIoTTopicRule14 { Key: string; Value: string; } export interface AWSIoTTopicRule15 { BatchMode?: boolean; ChannelName: string; RoleArn: string; } export interface AWSIoTTopicRule16 { BatchMode?: boolean; InputName: string; MessageId?: string; RoleArn: string; } export interface AWSIoTTopicRule17 { PutAssetPropertyValueEntries: AWSIoTTopicRule18[]; RoleArn: string; } export interface AWSIoTTopicRule18 { AssetId?: string; EntryId?: string; PropertyAlias?: string; PropertyId?: string; PropertyValues: AWSIoTTopicRule19[]; } export interface AWSIoTTopicRule19 { Quality?: string; Timestamp: AWSIoTTopicRule20; Value: AWSIoTTopicRule21; } export interface AWSIoTTopicRule20 { OffsetInNanos?: string; TimeInSeconds: string; } export interface AWSIoTTopicRule21 { BooleanValue?: string; DoubleValue?: string; IntegerValue?: string; StringValue?: string; } export interface AWSIoTTopicRule22 { ClientProperties: { [k: string]: unknown; }; DestinationArn: string; Key?: string; Partition?: string; Topic: string; } export interface AWSIoTTopicRule23 { PartitionKey?: string; RoleArn: string; StreamName: string; } export interface AWSIoTTopicRule24 { FunctionArn?: string; } export interface AWSIoTTopicRule25 { DeviceId: string; Latitude: string; Longitude: string; RoleArn: string; Timestamp?: AWSIoTTopicRule26; TrackerName: string; } export interface AWSIoTTopicRule26 { Unit?: string; Value: string; } export interface AWSIoTTopicRule27 { Endpoint: string; Id: string; Index: string; RoleArn: string; Type: string; } export interface AWSIoTTopicRule28 { Headers?: AWSIoTTopicRule29; Qos?: number; RoleArn: string; Topic: string; } export interface AWSIoTTopicRule29 { ContentType?: string; CorrelationData?: string; MessageExpiry?: string; PayloadFormatIndicator?: string; ResponseTopic?: string; UserProperties?: AWSIoTTopicRule30[]; } export interface AWSIoTTopicRule30 { Key: string; Value: string; } export interface AWSIoTTopicRule31 { BucketName: string; CannedAcl?: string; Key: string; RoleArn: string; } export interface AWSIoTTopicRule32 { MessageFormat?: string; RoleArn: string; TargetArn: string; } export interface AWSIoTTopicRule33 { QueueUrl: string; RoleArn: string; UseBase64?: boolean; } export interface AWSIoTTopicRule34 { ExecutionNamePrefix?: string; RoleArn: string; StateMachineName: string; } export interface AWSIoTTopicRule35 { DatabaseName: string; Dimensions: AWSIoTTopicRule36[]; RoleArn: string; TableName: string; Timestamp?: AWSIoTTopicRule37; } export interface AWSIoTTopicRule36 { Name: string; Value: string; } export interface AWSIoTTopicRule37 { Unit: string; Value: string; } export interface AWSIoTTopicRuleDestination { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { HttpUrlProperties?: AWSIoTTopicRuleDestination1; Status?: string; VpcProperties?: AWSIoTTopicRuleDestination2; }; Type: 'AWS::IoT::TopicRuleDestination'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTTopicRuleDestination1 { ConfirmationUrl?: string; } export interface AWSIoTTopicRuleDestination2 { RoleArn?: string; SecurityGroups?: string[]; SubnetIds?: string[]; VpcId?: string; } export interface AWSIoTAnalyticsChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ChannelName?: string; ChannelStorage?: AWSIoTAnalyticsChannel1; RetentionPeriod?: AWSIoTAnalyticsChannel3; Tags?: Tag[]; }; Type: 'AWS::IoTAnalytics::Channel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTAnalyticsChannel1 { CustomerManagedS3?: AWSIoTAnalyticsChannel2; ServiceManagedS3?: { [k: string]: unknown; }; } export interface AWSIoTAnalyticsChannel2 { Bucket: string; KeyPrefix?: string; RoleArn: string; } export interface AWSIoTAnalyticsChannel3 { NumberOfDays?: number; Unlimited?: boolean; } export interface AWSIoTAnalyticsDataset { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Actions: AWSIoTAnalyticsDataset1[]; ContentDeliveryRules?: AWSIoTAnalyticsDataset10[]; DatasetName?: string; LateDataRules?: AWSIoTAnalyticsDataset15[]; RetentionPeriod?: AWSIoTAnalyticsDataset18; Tags?: Tag[]; Triggers?: AWSIoTAnalyticsDataset19[]; VersioningConfiguration?: AWSIoTAnalyticsDataset22; }; Type: 'AWS::IoTAnalytics::Dataset'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTAnalyticsDataset1 { ActionName: string; ContainerAction?: AWSIoTAnalyticsDataset2; QueryAction?: AWSIoTAnalyticsDataset7; } export interface AWSIoTAnalyticsDataset2 { ExecutionRoleArn: string; Image: string; ResourceConfiguration: AWSIoTAnalyticsDataset3; Variables?: AWSIoTAnalyticsDataset4[]; } export interface AWSIoTAnalyticsDataset3 { ComputeType: string; VolumeSizeInGB: number; } export interface AWSIoTAnalyticsDataset4 { DatasetContentVersionValue?: AWSIoTAnalyticsDataset5; DoubleValue?: number; OutputFileUriValue?: AWSIoTAnalyticsDataset6; StringValue?: string; VariableName: string; } export interface AWSIoTAnalyticsDataset5 { DatasetName: string; } export interface AWSIoTAnalyticsDataset6 { FileName: string; } export interface AWSIoTAnalyticsDataset7 { Filters?: AWSIoTAnalyticsDataset8[]; SqlQuery: string; } export interface AWSIoTAnalyticsDataset8 { DeltaTime?: AWSIoTAnalyticsDataset9; } export interface AWSIoTAnalyticsDataset9 { OffsetSeconds: number; TimeExpression: string; } export interface AWSIoTAnalyticsDataset10 { Destination: AWSIoTAnalyticsDataset11; EntryName?: string; } export interface AWSIoTAnalyticsDataset11 { IotEventsDestinationConfiguration?: AWSIoTAnalyticsDataset12; S3DestinationConfiguration?: AWSIoTAnalyticsDataset13; } export interface AWSIoTAnalyticsDataset12 { InputName: string; RoleArn: string; } export interface AWSIoTAnalyticsDataset13 { Bucket: string; GlueConfiguration?: AWSIoTAnalyticsDataset14; Key: string; RoleArn: string; } export interface AWSIoTAnalyticsDataset14 { DatabaseName: string; TableName: string; } export interface AWSIoTAnalyticsDataset15 { RuleConfiguration: AWSIoTAnalyticsDataset16; RuleName?: string; } export interface AWSIoTAnalyticsDataset16 { DeltaTimeSessionWindowConfiguration?: AWSIoTAnalyticsDataset17; } export interface AWSIoTAnalyticsDataset17 { TimeoutInMinutes: number; } export interface AWSIoTAnalyticsDataset18 { NumberOfDays?: number; Unlimited?: boolean; } export interface AWSIoTAnalyticsDataset19 { Schedule?: AWSIoTAnalyticsDataset20; TriggeringDataset?: AWSIoTAnalyticsDataset21; } export interface AWSIoTAnalyticsDataset20 { ScheduleExpression: string; } export interface AWSIoTAnalyticsDataset21 { DatasetName: string; } export interface AWSIoTAnalyticsDataset22 { MaxVersions?: number; Unlimited?: boolean; } export interface AWSIoTAnalyticsDatastore { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DatastoreName?: string; DatastorePartitions?: AWSIoTAnalyticsDatastore1; DatastoreStorage?: AWSIoTAnalyticsDatastore5; FileFormatConfiguration?: AWSIoTAnalyticsDatastore9; RetentionPeriod?: AWSIoTAnalyticsDatastore13; Tags?: Tag[]; }; Type: 'AWS::IoTAnalytics::Datastore'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTAnalyticsDatastore1 { Partitions?: AWSIoTAnalyticsDatastore2[]; } export interface AWSIoTAnalyticsDatastore2 { Partition?: AWSIoTAnalyticsDatastore3; TimestampPartition?: AWSIoTAnalyticsDatastore4; } export interface AWSIoTAnalyticsDatastore3 { AttributeName: string; } export interface AWSIoTAnalyticsDatastore4 { AttributeName: string; TimestampFormat?: string; } export interface AWSIoTAnalyticsDatastore5 { CustomerManagedS3?: AWSIoTAnalyticsDatastore6; IotSiteWiseMultiLayerStorage?: AWSIoTAnalyticsDatastore7; ServiceManagedS3?: { [k: string]: unknown; }; } export interface AWSIoTAnalyticsDatastore6 { Bucket: string; KeyPrefix?: string; RoleArn: string; } export interface AWSIoTAnalyticsDatastore7 { CustomerManagedS3Storage?: AWSIoTAnalyticsDatastore8; } export interface AWSIoTAnalyticsDatastore8 { Bucket: string; KeyPrefix?: string; } export interface AWSIoTAnalyticsDatastore9 { JsonConfiguration?: { [k: string]: unknown; }; ParquetConfiguration?: AWSIoTAnalyticsDatastore10; } export interface AWSIoTAnalyticsDatastore10 { SchemaDefinition?: AWSIoTAnalyticsDatastore11; } export interface AWSIoTAnalyticsDatastore11 { Columns?: AWSIoTAnalyticsDatastore12[]; } export interface AWSIoTAnalyticsDatastore12 { Name: string; Type: string; } export interface AWSIoTAnalyticsDatastore13 { NumberOfDays?: number; Unlimited?: boolean; } export interface AWSIoTAnalyticsPipeline { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PipelineActivities: AWSIoTAnalyticsPipeline1[]; PipelineName?: string; Tags?: Tag[]; }; Type: 'AWS::IoTAnalytics::Pipeline'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTAnalyticsPipeline1 { AddAttributes?: AWSIoTAnalyticsPipeline2; Channel?: AWSIoTAnalyticsPipeline3; Datastore?: AWSIoTAnalyticsPipeline4; DeviceRegistryEnrich?: AWSIoTAnalyticsPipeline5; DeviceShadowEnrich?: AWSIoTAnalyticsPipeline6; Filter?: AWSIoTAnalyticsPipeline7; Lambda?: AWSIoTAnalyticsPipeline8; Math?: AWSIoTAnalyticsPipeline9; RemoveAttributes?: AWSIoTAnalyticsPipeline10; SelectAttributes?: AWSIoTAnalyticsPipeline11; } export interface AWSIoTAnalyticsPipeline2 { Attributes: { [k: string]: unknown; }; Name: string; Next?: string; } export interface AWSIoTAnalyticsPipeline3 { ChannelName: string; Name: string; Next?: string; } export interface AWSIoTAnalyticsPipeline4 { DatastoreName: string; Name: string; } export interface AWSIoTAnalyticsPipeline5 { Attribute: string; Name: string; Next?: string; RoleArn: string; ThingName: string; } export interface AWSIoTAnalyticsPipeline6 { Attribute: string; Name: string; Next?: string; RoleArn: string; ThingName: string; } export interface AWSIoTAnalyticsPipeline7 { Filter: string; Name: string; Next?: string; } export interface AWSIoTAnalyticsPipeline8 { BatchSize: number; LambdaName: string; Name: string; Next?: string; } export interface AWSIoTAnalyticsPipeline9 { Attribute: string; Math: string; Name: string; Next?: string; } export interface AWSIoTAnalyticsPipeline10 { Attributes: string[]; Name: string; Next?: string; } export interface AWSIoTAnalyticsPipeline11 { Attributes: string[]; Name: string; Next?: string; } export interface AWSIoTCoreDeviceAdvisorSuiteDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { SuiteDefinitionConfiguration: AWSIoTCoreDeviceAdvisorSuiteDefinition1; Tags?: Tag[]; }; Type: 'AWS::IoTCoreDeviceAdvisor::SuiteDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTCoreDeviceAdvisorSuiteDefinition1 { DevicePermissionRoleArn: string; Devices?: AWSIoTCoreDeviceAdvisorSuiteDefinition2[]; IntendedForQualification?: boolean; RootGroup: string; SuiteDefinitionName?: string; } export interface AWSIoTCoreDeviceAdvisorSuiteDefinition2 { CertificateArn?: string; ThingArn?: string; } export interface AWSIoTEventsAlarmModel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AlarmCapabilities?: AWSIoTEventsAlarmModel1; AlarmEventActions?: AWSIoTEventsAlarmModel4; AlarmModelDescription?: string; AlarmModelName?: string; AlarmRule: AWSIoTEventsAlarmModel19; Key?: string; RoleArn: string; Severity?: number; Tags?: Tag[]; }; Type: 'AWS::IoTEvents::AlarmModel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTEventsAlarmModel1 { AcknowledgeFlow?: AWSIoTEventsAlarmModel2; InitializationConfiguration?: AWSIoTEventsAlarmModel3; } export interface AWSIoTEventsAlarmModel2 { Enabled?: boolean; } export interface AWSIoTEventsAlarmModel3 { DisabledOnInitialization: boolean; } export interface AWSIoTEventsAlarmModel4 { AlarmActions?: AWSIoTEventsAlarmModel5[]; } export interface AWSIoTEventsAlarmModel5 { DynamoDB?: AWSIoTEventsAlarmModel6; DynamoDBv2?: AWSIoTEventsAlarmModel8; Firehose?: AWSIoTEventsAlarmModel9; IotEvents?: AWSIoTEventsAlarmModel10; IotSiteWise?: AWSIoTEventsAlarmModel11; IotTopicPublish?: AWSIoTEventsAlarmModel15; Lambda?: AWSIoTEventsAlarmModel16; Sns?: AWSIoTEventsAlarmModel17; Sqs?: AWSIoTEventsAlarmModel18; } export interface AWSIoTEventsAlarmModel6 { HashKeyField: string; HashKeyType?: string; HashKeyValue: string; Operation?: string; Payload?: AWSIoTEventsAlarmModel7; PayloadField?: string; RangeKeyField?: string; RangeKeyType?: string; RangeKeyValue?: string; TableName: string; } export interface AWSIoTEventsAlarmModel7 { ContentExpression: string; Type: string; } export interface AWSIoTEventsAlarmModel8 { Payload?: AWSIoTEventsAlarmModel7; TableName: string; } export interface AWSIoTEventsAlarmModel9 { DeliveryStreamName: string; Payload?: AWSIoTEventsAlarmModel7; Separator?: string; } export interface AWSIoTEventsAlarmModel10 { InputName: string; Payload?: AWSIoTEventsAlarmModel7; } export interface AWSIoTEventsAlarmModel11 { AssetId?: string; EntryId?: string; PropertyAlias?: string; PropertyId?: string; PropertyValue?: AWSIoTEventsAlarmModel12; } export interface AWSIoTEventsAlarmModel12 { Quality?: string; Timestamp?: AWSIoTEventsAlarmModel13; Value: AWSIoTEventsAlarmModel14; } export interface AWSIoTEventsAlarmModel13 { OffsetInNanos?: string; TimeInSeconds: string; } export interface AWSIoTEventsAlarmModel14 { BooleanValue?: string; DoubleValue?: string; IntegerValue?: string; StringValue?: string; } export interface AWSIoTEventsAlarmModel15 { MqttTopic: string; Payload?: AWSIoTEventsAlarmModel7; } export interface AWSIoTEventsAlarmModel16 { FunctionArn: string; Payload?: AWSIoTEventsAlarmModel7; } export interface AWSIoTEventsAlarmModel17 { Payload?: AWSIoTEventsAlarmModel7; TargetArn: string; } export interface AWSIoTEventsAlarmModel18 { Payload?: AWSIoTEventsAlarmModel7; QueueUrl: string; UseBase64?: boolean; } export interface AWSIoTEventsAlarmModel19 { SimpleRule?: AWSIoTEventsAlarmModel20; } export interface AWSIoTEventsAlarmModel20 { ComparisonOperator: string; InputProperty: string; Threshold: string; } export interface AWSIoTEventsDetectorModel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DetectorModelDefinition: AWSIoTEventsDetectorModel1; DetectorModelDescription?: string; DetectorModelName?: string; EvaluationMethod?: string; Key?: string; RoleArn: string; Tags?: Tag[]; }; Type: 'AWS::IoTEvents::DetectorModel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTEventsDetectorModel1 { InitialStateName: string; States: AWSIoTEventsDetectorModel2[]; } export interface AWSIoTEventsDetectorModel2 { OnEnter?: AWSIoTEventsDetectorModel3; OnExit?: AWSIoTEventsDetectorModel23; OnInput?: AWSIoTEventsDetectorModel24; StateName: string; } export interface AWSIoTEventsDetectorModel3 { Events?: AWSIoTEventsDetectorModel4[]; } export interface AWSIoTEventsDetectorModel4 { Actions?: AWSIoTEventsDetectorModel5[]; Condition?: string; EventName: string; } export interface AWSIoTEventsDetectorModel5 { ClearTimer?: AWSIoTEventsDetectorModel6; DynamoDB?: AWSIoTEventsDetectorModel7; DynamoDBv2?: AWSIoTEventsDetectorModel9; Firehose?: AWSIoTEventsDetectorModel10; IotEvents?: AWSIoTEventsDetectorModel11; IotSiteWise?: AWSIoTEventsDetectorModel12; IotTopicPublish?: AWSIoTEventsDetectorModel16; Lambda?: AWSIoTEventsDetectorModel17; ResetTimer?: AWSIoTEventsDetectorModel18; SetTimer?: AWSIoTEventsDetectorModel19; SetVariable?: AWSIoTEventsDetectorModel20; Sns?: AWSIoTEventsDetectorModel21; Sqs?: AWSIoTEventsDetectorModel22; } export interface AWSIoTEventsDetectorModel6 { TimerName: string; } export interface AWSIoTEventsDetectorModel7 { HashKeyField: string; HashKeyType?: string; HashKeyValue: string; Operation?: string; Payload?: AWSIoTEventsDetectorModel8; PayloadField?: string; RangeKeyField?: string; RangeKeyType?: string; RangeKeyValue?: string; TableName: string; } export interface AWSIoTEventsDetectorModel8 { ContentExpression: string; Type: string; } export interface AWSIoTEventsDetectorModel9 { Payload?: AWSIoTEventsDetectorModel8; TableName: string; } export interface AWSIoTEventsDetectorModel10 { DeliveryStreamName: string; Payload?: AWSIoTEventsDetectorModel8; Separator?: string; } export interface AWSIoTEventsDetectorModel11 { InputName: string; Payload?: AWSIoTEventsDetectorModel8; } export interface AWSIoTEventsDetectorModel12 { AssetId?: string; EntryId?: string; PropertyAlias?: string; PropertyId?: string; PropertyValue: AWSIoTEventsDetectorModel13; } export interface AWSIoTEventsDetectorModel13 { Quality?: string; Timestamp?: AWSIoTEventsDetectorModel14; Value: AWSIoTEventsDetectorModel15; } export interface AWSIoTEventsDetectorModel14 { OffsetInNanos?: string; TimeInSeconds: string; } export interface AWSIoTEventsDetectorModel15 { BooleanValue?: string; DoubleValue?: string; IntegerValue?: string; StringValue?: string; } export interface AWSIoTEventsDetectorModel16 { MqttTopic: string; Payload?: AWSIoTEventsDetectorModel8; } export interface AWSIoTEventsDetectorModel17 { FunctionArn: string; Payload?: AWSIoTEventsDetectorModel8; } export interface AWSIoTEventsDetectorModel18 { TimerName: string; } export interface AWSIoTEventsDetectorModel19 { DurationExpression?: string; Seconds?: number; TimerName: string; } export interface AWSIoTEventsDetectorModel20 { Value: string; VariableName: string; } export interface AWSIoTEventsDetectorModel21 { Payload?: AWSIoTEventsDetectorModel8; TargetArn: string; } export interface AWSIoTEventsDetectorModel22 { Payload?: AWSIoTEventsDetectorModel8; QueueUrl: string; UseBase64?: boolean; } export interface AWSIoTEventsDetectorModel23 { Events?: AWSIoTEventsDetectorModel4[]; } export interface AWSIoTEventsDetectorModel24 { Events?: AWSIoTEventsDetectorModel4[]; TransitionEvents?: AWSIoTEventsDetectorModel25[]; } export interface AWSIoTEventsDetectorModel25 { Actions?: AWSIoTEventsDetectorModel5[]; Condition: string; EventName: string; NextState: string; } export interface AWSIoTEventsInput { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InputDefinition: AWSIoTEventsInput1; InputDescription?: string; InputName?: string; Tags?: Tag[]; }; Type: 'AWS::IoTEvents::Input'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTEventsInput1 { Attributes: AWSIoTEventsInput2[]; } export interface AWSIoTEventsInput2 { JsonPath: string; } export interface AWSIoTFleetHubApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationDescription?: string; ApplicationName: string; RoleArn: string; Tags?: Tag[]; }; Type: 'AWS::IoTFleetHub::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTFleetWiseCampaign { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Action: string; CollectionScheme: AWSIoTFleetWiseCampaign1; Compression?: string; DataExtraDimensions?: string[]; Description?: string; DiagnosticsMode?: string; ExpiryTime?: string; Name: string; PostTriggerCollectionDuration?: number; Priority?: number; SignalCatalogArn: string; SignalsToCollect?: AWSIoTFleetWiseCampaign4[]; SpoolingMode?: string; StartTime?: string; Tags?: Tag[]; TargetArn: string; }; Type: 'AWS::IoTFleetWise::Campaign'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTFleetWiseCampaign1 { ConditionBasedCollectionScheme?: AWSIoTFleetWiseCampaign2; TimeBasedCollectionScheme?: AWSIoTFleetWiseCampaign3; } export interface AWSIoTFleetWiseCampaign2 { ConditionLanguageVersion?: number; Expression: string; MinimumTriggerIntervalMs?: number; TriggerMode?: string; } export interface AWSIoTFleetWiseCampaign3 { PeriodMs: number; } export interface AWSIoTFleetWiseCampaign4 { MaxSampleCount?: number; MinimumSamplingIntervalMs?: number; Name: string; } export interface AWSIoTFleetWiseDecoderManifest { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; ModelManifestArn: string; Name: string; NetworkInterfaces?: AWSIoTFleetWiseDecoderManifest1[]; SignalDecoders?: AWSIoTFleetWiseDecoderManifest4[]; Status?: string; Tags?: Tag[]; }; Type: 'AWS::IoTFleetWise::DecoderManifest'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTFleetWiseDecoderManifest1 { CanInterface?: AWSIoTFleetWiseDecoderManifest2; InterfaceId: string; ObdInterface?: AWSIoTFleetWiseDecoderManifest3; Type: string; } export interface AWSIoTFleetWiseDecoderManifest2 { Name: string; ProtocolName?: string; ProtocolVersion?: string; } export interface AWSIoTFleetWiseDecoderManifest3 { DtcRequestIntervalSeconds?: string; HasTransmissionEcu?: string; Name: string; ObdStandard?: string; PidRequestIntervalSeconds?: string; RequestMessageId: string; UseExtendedIds?: string; } export interface AWSIoTFleetWiseDecoderManifest4 { CanSignal?: AWSIoTFleetWiseDecoderManifest5; FullyQualifiedName: string; InterfaceId: string; ObdSignal?: AWSIoTFleetWiseDecoderManifest6; Type: string; } export interface AWSIoTFleetWiseDecoderManifest5 { Factor: string; IsBigEndian: string; IsSigned: string; Length: string; MessageId: string; Name?: string; Offset: string; StartBit: string; } export interface AWSIoTFleetWiseDecoderManifest6 { BitMaskLength?: string; BitRightShift?: string; ByteLength: string; Offset: string; Pid: string; PidResponseLength: string; Scaling: string; ServiceMode: string; StartByte: string; } export interface AWSIoTFleetWiseFleet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Id: string; SignalCatalogArn: string; Tags?: Tag[]; }; Type: 'AWS::IoTFleetWise::Fleet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTFleetWiseModelManifest { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Nodes?: string[]; SignalCatalogArn: string; Status?: string; Tags?: Tag[]; }; Type: 'AWS::IoTFleetWise::ModelManifest'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTFleetWiseSignalCatalog { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; Name?: string; NodeCounts?: AWSIoTFleetWiseSignalCatalog1; Nodes?: AWSIoTFleetWiseSignalCatalog2[]; Tags?: Tag[]; }; Type: 'AWS::IoTFleetWise::SignalCatalog'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTFleetWiseSignalCatalog1 { TotalActuators?: number; TotalAttributes?: number; TotalBranches?: number; TotalNodes?: number; TotalSensors?: number; } export interface AWSIoTFleetWiseSignalCatalog2 { Actuator?: AWSIoTFleetWiseSignalCatalog3; Attribute?: AWSIoTFleetWiseSignalCatalog4; Branch?: AWSIoTFleetWiseSignalCatalog5; Sensor?: AWSIoTFleetWiseSignalCatalog6; } export interface AWSIoTFleetWiseSignalCatalog3 { AllowedValues?: string[]; AssignedValue?: string; DataType: string; Description?: string; FullyQualifiedName: string; Max?: number; Min?: number; Unit?: string; } export interface AWSIoTFleetWiseSignalCatalog4 { AllowedValues?: string[]; AssignedValue?: string; DataType: string; DefaultValue?: string; Description?: string; FullyQualifiedName: string; Max?: number; Min?: number; Unit?: string; } export interface AWSIoTFleetWiseSignalCatalog5 { Description?: string; FullyQualifiedName: string; } export interface AWSIoTFleetWiseSignalCatalog6 { AllowedValues?: string[]; DataType: string; Description?: string; FullyQualifiedName: string; Max?: number; Min?: number; Unit?: string; } export interface AWSIoTFleetWiseVehicle { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssociationBehavior?: string; Attributes?: { [k: string]: unknown; }; DecoderManifestArn: string; ModelManifestArn: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::IoTFleetWise::Vehicle'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTSiteWiseAccessPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessPolicyIdentity: AWSIoTSiteWiseAccessPolicy1; AccessPolicyPermission: string; AccessPolicyResource: AWSIoTSiteWiseAccessPolicy5; }; Type: 'AWS::IoTSiteWise::AccessPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTSiteWiseAccessPolicy1 { IamRole?: AWSIoTSiteWiseAccessPolicy2; IamUser?: AWSIoTSiteWiseAccessPolicy3; User?: AWSIoTSiteWiseAccessPolicy4; } export interface AWSIoTSiteWiseAccessPolicy2 { arn?: string; } export interface AWSIoTSiteWiseAccessPolicy3 { arn?: string; } export interface AWSIoTSiteWiseAccessPolicy4 { id?: string; } export interface AWSIoTSiteWiseAccessPolicy5 { Portal?: AWSIoTSiteWiseAccessPolicy6; Project?: AWSIoTSiteWiseAccessPolicy7; } export interface AWSIoTSiteWiseAccessPolicy6 { id?: string; } export interface AWSIoTSiteWiseAccessPolicy7 { id?: string; } export interface AWSIoTSiteWiseAsset { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssetDescription?: string; AssetHierarchies?: AWSIoTSiteWiseAsset1[]; AssetModelId: string; AssetName: string; AssetProperties?: AWSIoTSiteWiseAsset2[]; Tags?: Tag[]; }; Type: 'AWS::IoTSiteWise::Asset'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTSiteWiseAsset1 { ChildAssetId: string; LogicalId: string; } export interface AWSIoTSiteWiseAsset2 { Alias?: string; LogicalId: string; NotificationState?: string; Unit?: string; } export interface AWSIoTSiteWiseAssetModel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssetModelCompositeModels?: AWSIoTSiteWiseAssetModel1[]; AssetModelDescription?: string; AssetModelHierarchies?: AWSIoTSiteWiseAssetModel11[]; AssetModelName: string; AssetModelProperties?: AWSIoTSiteWiseAssetModel2[]; Tags?: Tag[]; }; Type: 'AWS::IoTSiteWise::AssetModel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTSiteWiseAssetModel1 { CompositeModelProperties?: AWSIoTSiteWiseAssetModel2[]; Description?: string; Name: string; Type: string; } export interface AWSIoTSiteWiseAssetModel2 { DataType: string; DataTypeSpec?: string; LogicalId: string; Name: string; Type: AWSIoTSiteWiseAssetModel3; Unit?: string; } export interface AWSIoTSiteWiseAssetModel3 { Attribute?: AWSIoTSiteWiseAssetModel4; Metric?: AWSIoTSiteWiseAssetModel5; Transform?: AWSIoTSiteWiseAssetModel10; TypeName: string; } export interface AWSIoTSiteWiseAssetModel4 { DefaultValue?: string; } export interface AWSIoTSiteWiseAssetModel5 { Expression: string; Variables: AWSIoTSiteWiseAssetModel6[]; Window: AWSIoTSiteWiseAssetModel8; } export interface AWSIoTSiteWiseAssetModel6 { Name: string; Value: AWSIoTSiteWiseAssetModel7; } export interface AWSIoTSiteWiseAssetModel7 { HierarchyLogicalId?: string; PropertyLogicalId: string; } export interface AWSIoTSiteWiseAssetModel8 { Tumbling?: AWSIoTSiteWiseAssetModel9; } export interface AWSIoTSiteWiseAssetModel9 { Interval: string; Offset?: string; } export interface AWSIoTSiteWiseAssetModel10 { Expression: string; Variables: AWSIoTSiteWiseAssetModel6[]; } export interface AWSIoTSiteWiseAssetModel11 { ChildAssetModelId: string; LogicalId: string; Name: string; } export interface AWSIoTSiteWiseDashboard { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DashboardDefinition: string; DashboardDescription: string; DashboardName: string; ProjectId?: string; Tags?: Tag[]; }; Type: 'AWS::IoTSiteWise::Dashboard'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTSiteWiseGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GatewayCapabilitySummaries?: AWSIoTSiteWiseGateway1[]; GatewayName: string; GatewayPlatform: AWSIoTSiteWiseGateway2; Tags?: Tag[]; }; Type: 'AWS::IoTSiteWise::Gateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTSiteWiseGateway1 { CapabilityConfiguration?: string; CapabilityNamespace: string; } export interface AWSIoTSiteWiseGateway2 { Greengrass?: AWSIoTSiteWiseGateway3; GreengrassV2?: AWSIoTSiteWiseGateway4; } export interface AWSIoTSiteWiseGateway3 { GroupArn: string; } export interface AWSIoTSiteWiseGateway4 { CoreDeviceThingName: string; } export interface AWSIoTSiteWisePortal { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Alarms?: AWSIoTSiteWisePortal1; NotificationSenderEmail?: string; PortalAuthMode?: string; PortalContactEmail: string; PortalDescription?: string; PortalName: string; RoleArn: string; Tags?: Tag[]; }; Type: 'AWS::IoTSiteWise::Portal'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTSiteWisePortal1 { AlarmRoleArn?: string; NotificationLambdaArn?: string; } export interface AWSIoTSiteWiseProject { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssetIds?: string[]; PortalId: string; ProjectDescription?: string; ProjectName: string; Tags?: Tag[]; }; Type: 'AWS::IoTSiteWise::Project'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTThingsGraphFlowTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CompatibleNamespaceVersion?: number; Definition: AWSIoTThingsGraphFlowTemplate1; }; Type: 'AWS::IoTThingsGraph::FlowTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTThingsGraphFlowTemplate1 { Language: string; Text: string; } export interface AWSIoTTwinMakerComponentType { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ComponentTypeId: string; Description?: string; ExtendsFrom?: string[]; Functions?: { [k: string]: AWSIoTTwinMakerComponentType1; }; IsSingleton?: boolean; PropertyDefinitions?: { [k: string]: AWSIoTTwinMakerComponentType4; }; PropertyGroups?: { [k: string]: AWSIoTTwinMakerComponentType9; }; Tags?: { [k: string]: unknown; }; WorkspaceId: string; }; Type: 'AWS::IoTTwinMaker::ComponentType'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSIoTTwinMakerComponentType1 { ImplementedBy?: AWSIoTTwinMakerComponentType2; RequiredProperties?: string[]; Scope?: string; } export interface AWSIoTTwinMakerComponentType2 { IsNative?: boolean; Lambda?: AWSIoTTwinMakerComponentType3; } export interface AWSIoTTwinMakerComponentType3 { Arn: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSIoTTwinMakerComponentType4 { Configurations?: { [k: string]: unknown; }; DataType?: AWSIoTTwinMakerComponentType5; DefaultValue?: AWSIoTTwinMakerComponentType6; IsExternalId?: boolean; IsRequiredInEntity?: boolean; IsStoredExternally?: boolean; IsTimeSeries?: boolean; } export interface AWSIoTTwinMakerComponentType5 { AllowedValues?: AWSIoTTwinMakerComponentType6[]; NestedType?: AWSIoTTwinMakerComponentType5; Relationship?: AWSIoTTwinMakerComponentType8; Type: string; UnitOfMeasure?: string; } export interface AWSIoTTwinMakerComponentType6 { BooleanValue?: boolean; DoubleValue?: number; Expression?: string; IntegerValue?: number; ListValue?: AWSIoTTwinMakerComponentType6[]; LongValue?: number; MapValue?: { [k: string]: AWSIoTTwinMakerComponentType6; }; RelationshipValue?: AWSIoTTwinMakerComponentType7; StringValue?: string; } export interface AWSIoTTwinMakerComponentType7 { TargetComponentName?: string; TargetEntityId?: string; } export interface AWSIoTTwinMakerComponentType8 { RelationshipType?: string; TargetComponentTypeId?: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSIoTTwinMakerComponentType9 { GroupType?: string; PropertyNames?: string[]; } export interface AWSIoTTwinMakerEntity { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Components?: { [k: string]: AWSIoTTwinMakerEntity1; }; Description?: string; EntityId?: string; EntityName: string; ParentEntityId?: string; Tags?: { [k: string]: unknown; }; WorkspaceId: string; }; Type: 'AWS::IoTTwinMaker::Entity'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSIoTTwinMakerEntity1 { ComponentName?: string; ComponentTypeId?: string; DefinedIn?: string; Description?: string; Properties?: { [k: string]: AWSIoTTwinMakerEntity2; }; PropertyGroups?: { [k: string]: AWSIoTTwinMakerEntity8; }; Status?: AWSIoTTwinMakerEntity9; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSIoTTwinMakerEntity2 { Definition?: AWSIoTTwinMakerEntity3; Value?: AWSIoTTwinMakerEntity5; } export interface AWSIoTTwinMakerEntity3 { Configuration?: { [k: string]: unknown; }; DataType?: AWSIoTTwinMakerEntity4; DefaultValue?: AWSIoTTwinMakerEntity5; IsExternalId?: boolean; IsFinal?: boolean; IsImported?: boolean; IsInherited?: boolean; IsRequiredInEntity?: boolean; IsStoredExternally?: boolean; IsTimeSeries?: boolean; } export interface AWSIoTTwinMakerEntity4 { AllowedValues?: AWSIoTTwinMakerEntity5[]; NestedType?: AWSIoTTwinMakerEntity4; Relationship?: AWSIoTTwinMakerEntity7; Type?: string; UnitOfMeasure?: string; } export interface AWSIoTTwinMakerEntity5 { BooleanValue?: boolean; DoubleValue?: number; Expression?: string; IntegerValue?: number; ListValue?: AWSIoTTwinMakerEntity5[]; LongValue?: number; MapValue?: { [k: string]: AWSIoTTwinMakerEntity5; }; RelationshipValue?: AWSIoTTwinMakerEntity6; StringValue?: string; } export interface AWSIoTTwinMakerEntity6 { TargetComponentName?: string; TargetEntityId?: string; } export interface AWSIoTTwinMakerEntity7 { RelationshipType?: string; TargetComponentTypeId?: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSIoTTwinMakerEntity8 { GroupType?: string; PropertyNames?: string[]; } export interface AWSIoTTwinMakerEntity9 { Error?: AWSIoTTwinMakerEntity10; State?: string; } export interface AWSIoTTwinMakerEntity10 { Code?: string; Message?: string; } export interface AWSIoTTwinMakerScene { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Capabilities?: string[]; ContentLocation: string; Description?: string; SceneId: string; Tags?: { [k: string]: unknown; }; WorkspaceId: string; }; Type: 'AWS::IoTTwinMaker::Scene'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTTwinMakerSyncJob { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { SyncRole: string; SyncSource: string; Tags?: { [k: string]: unknown; }; WorkspaceId: string; }; Type: 'AWS::IoTTwinMaker::SyncJob'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTTwinMakerWorkspace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Role: string; S3Location: string; Tags?: { [k: string]: unknown; }; WorkspaceId: string; }; Type: 'AWS::IoTTwinMaker::Workspace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessDestination { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Expression: string; ExpressionType: string; Name: string; RoleArn: string; Tags?: Tag[]; }; Type: 'AWS::IoTWireless::Destination'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessDeviceProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { LoRaWAN?: AWSIoTWirelessDeviceProfile1; Name?: string; Tags?: Tag[]; }; Type: 'AWS::IoTWireless::DeviceProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessDeviceProfile1 { ClassBTimeout?: number; ClassCTimeout?: number; FactoryPresetFreqsList?: number[]; MacVersion?: string; MaxDutyCycle?: number; MaxEirp?: number; PingSlotDr?: number; PingSlotFreq?: number; PingSlotPeriod?: number; RegParamsRevision?: string; RfRegion?: string; RxDataRate2?: number; RxDelay1?: number; RxDrOffset1?: number; RxFreq2?: number; Supports32BitFCnt?: boolean; SupportsClassB?: boolean; SupportsClassC?: boolean; SupportsJoin?: boolean; } export interface AWSIoTWirelessFuotaTask { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssociateMulticastGroup?: string; AssociateWirelessDevice?: string; Description?: string; DisassociateMulticastGroup?: string; DisassociateWirelessDevice?: string; FirmwareUpdateImage: string; FirmwareUpdateRole: string; LoRaWAN: AWSIoTWirelessFuotaTask1; Name?: string; Tags?: Tag[]; }; Type: 'AWS::IoTWireless::FuotaTask'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessFuotaTask1 { RfRegion: string; StartTime?: string; } export interface AWSIoTWirelessMulticastGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssociateWirelessDevice?: string; Description?: string; DisassociateWirelessDevice?: string; LoRaWAN: AWSIoTWirelessMulticastGroup1; Name?: string; Tags?: Tag[]; }; Type: 'AWS::IoTWireless::MulticastGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessMulticastGroup1 { DlClass: string; NumberOfDevicesInGroup?: number; NumberOfDevicesRequested?: number; RfRegion: string; } export interface AWSIoTWirelessNetworkAnalyzerConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: Tag[]; TraceContent?: AWSIoTWirelessNetworkAnalyzerConfiguration1; WirelessDevices?: string[]; WirelessGateways?: string[]; }; Type: 'AWS::IoTWireless::NetworkAnalyzerConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessNetworkAnalyzerConfiguration1 { LogLevel?: string; WirelessDeviceFrameInfo?: string; } export interface AWSIoTWirelessPartnerAccount { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AccountLinked?: boolean; PartnerAccountId?: string; PartnerType?: string; Sidewalk?: AWSIoTWirelessPartnerAccount1; SidewalkResponse?: AWSIoTWirelessPartnerAccount2; SidewalkUpdate?: AWSIoTWirelessPartnerAccount3; Tags?: Tag[]; }; Type: 'AWS::IoTWireless::PartnerAccount'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessPartnerAccount1 { AppServerPrivateKey: string; } export interface AWSIoTWirelessPartnerAccount2 { AmazonId?: string; Arn?: string; Fingerprint?: string; } export interface AWSIoTWirelessPartnerAccount3 { AppServerPrivateKey?: string; } export interface AWSIoTWirelessServiceProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { LoRaWAN?: AWSIoTWirelessServiceProfile1; Name?: string; Tags?: Tag[]; }; Type: 'AWS::IoTWireless::ServiceProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessServiceProfile1 { AddGwMetadata?: boolean; ChannelMask?: string; DevStatusReqFreq?: number; DlBucketSize?: number; DlRate?: number; DlRatePolicy?: string; DrMax?: number; DrMin?: number; HrAllowed?: boolean; MinGwDiversity?: number; NwkGeoLoc?: boolean; PrAllowed?: boolean; RaAllowed?: boolean; ReportDevStatusBattery?: boolean; ReportDevStatusMargin?: boolean; TargetPer?: number; UlBucketSize?: number; UlRate?: number; UlRatePolicy?: string; } export interface AWSIoTWirelessTaskDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoCreateTasks: boolean; LoRaWANUpdateGatewayTaskEntry?: AWSIoTWirelessTaskDefinition1; Name?: string; Tags?: Tag[]; TaskDefinitionType?: string; Update?: AWSIoTWirelessTaskDefinition3; }; Type: 'AWS::IoTWireless::TaskDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessTaskDefinition1 { CurrentVersion?: AWSIoTWirelessTaskDefinition2; UpdateVersion?: AWSIoTWirelessTaskDefinition2; } export interface AWSIoTWirelessTaskDefinition2 { Model?: string; PackageVersion?: string; Station?: string; } export interface AWSIoTWirelessTaskDefinition3 { LoRaWAN?: AWSIoTWirelessTaskDefinition4; UpdateDataRole?: string; UpdateDataSource?: string; } export interface AWSIoTWirelessTaskDefinition4 { CurrentVersion?: AWSIoTWirelessTaskDefinition2; SigKeyCrc?: number; UpdateSignature?: string; UpdateVersion?: AWSIoTWirelessTaskDefinition2; } export interface AWSIoTWirelessWirelessDevice { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; DestinationName: string; LastUplinkReceivedAt?: string; LoRaWAN?: AWSIoTWirelessWirelessDevice1; Name?: string; Tags?: Tag[]; ThingArn?: string; Type: string; }; Type: 'AWS::IoTWireless::WirelessDevice'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessWirelessDevice1 { AbpV10x?: AWSIoTWirelessWirelessDevice2; AbpV11?: AWSIoTWirelessWirelessDevice4; DevEui?: string; DeviceProfileId?: string; OtaaV10x?: AWSIoTWirelessWirelessDevice6; OtaaV11?: AWSIoTWirelessWirelessDevice7; ServiceProfileId?: string; } export interface AWSIoTWirelessWirelessDevice2 { DevAddr: string; SessionKeys: AWSIoTWirelessWirelessDevice3; } export interface AWSIoTWirelessWirelessDevice3 { AppSKey: string; NwkSKey: string; } export interface AWSIoTWirelessWirelessDevice4 { DevAddr: string; SessionKeys: AWSIoTWirelessWirelessDevice5; } export interface AWSIoTWirelessWirelessDevice5 { AppSKey: string; FNwkSIntKey: string; NwkSEncKey: string; SNwkSIntKey: string; } export interface AWSIoTWirelessWirelessDevice6 { AppEui: string; AppKey: string; } export interface AWSIoTWirelessWirelessDevice7 { AppKey: string; JoinEui: string; NwkKey: string; } export interface AWSIoTWirelessWirelessGateway { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; LastUplinkReceivedAt?: string; LoRaWAN: AWSIoTWirelessWirelessGateway1; Name?: string; Tags?: Tag[]; ThingArn?: string; ThingName?: string; }; Type: 'AWS::IoTWireless::WirelessGateway'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSIoTWirelessWirelessGateway1 { GatewayEui: string; RfRegion: string; } export interface AWSKMSAlias { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AliasName: string; TargetKeyId: string; }; Type: 'AWS::KMS::Alias'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKMSKey { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; EnableKeyRotation?: boolean; Enabled?: boolean; KeyPolicy: { [k: string]: unknown; }; KeySpec?: string; KeyUsage?: string; MultiRegion?: boolean; PendingWindowInDays?: number; Tags?: Tag[]; }; Type: 'AWS::KMS::Key'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKMSReplicaKey { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Enabled?: boolean; KeyPolicy: { [k: string]: unknown; }; PendingWindowInDays?: number; PrimaryKeyArn: string; Tags?: Tag[]; }; Type: 'AWS::KMS::ReplicaKey'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKafkaConnectConnector { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Capacity: AWSKafkaConnectConnector1; ConnectorConfiguration: { [k: string]: unknown; }; ConnectorDescription?: string; ConnectorName: string; KafkaCluster: AWSKafkaConnectConnector6; KafkaClusterClientAuthentication: AWSKafkaConnectConnector9; KafkaClusterEncryptionInTransit: AWSKafkaConnectConnector10; KafkaConnectVersion: string; LogDelivery?: AWSKafkaConnectConnector11; Plugins: AWSKafkaConnectConnector16[]; ServiceExecutionRoleArn: string; WorkerConfiguration?: AWSKafkaConnectConnector18; }; Type: 'AWS::KafkaConnect::Connector'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKafkaConnectConnector1 { AutoScaling?: AWSKafkaConnectConnector2; ProvisionedCapacity?: AWSKafkaConnectConnector5; } export interface AWSKafkaConnectConnector2 { MaxWorkerCount: number; McuCount: number; MinWorkerCount: number; ScaleInPolicy: AWSKafkaConnectConnector3; ScaleOutPolicy: AWSKafkaConnectConnector4; } export interface AWSKafkaConnectConnector3 { CpuUtilizationPercentage: number; } export interface AWSKafkaConnectConnector4 { CpuUtilizationPercentage: number; } export interface AWSKafkaConnectConnector5 { McuCount?: number; WorkerCount: number; } export interface AWSKafkaConnectConnector6 { ApacheKafkaCluster: AWSKafkaConnectConnector7; } export interface AWSKafkaConnectConnector7 { BootstrapServers: string; Vpc: AWSKafkaConnectConnector8; } export interface AWSKafkaConnectConnector8 { SecurityGroups: string[]; Subnets: string[]; } export interface AWSKafkaConnectConnector9 { AuthenticationType: string; } export interface AWSKafkaConnectConnector10 { EncryptionType: string; } export interface AWSKafkaConnectConnector11 { WorkerLogDelivery: AWSKafkaConnectConnector12; } export interface AWSKafkaConnectConnector12 { CloudWatchLogs?: AWSKafkaConnectConnector13; Firehose?: AWSKafkaConnectConnector14; S3?: AWSKafkaConnectConnector15; } export interface AWSKafkaConnectConnector13 { Enabled: boolean; LogGroup?: string; } export interface AWSKafkaConnectConnector14 { DeliveryStream?: string; Enabled: boolean; } export interface AWSKafkaConnectConnector15 { Bucket?: string; Enabled: boolean; Prefix?: string; } export interface AWSKafkaConnectConnector16 { CustomPlugin: AWSKafkaConnectConnector17; } export interface AWSKafkaConnectConnector17 { CustomPluginArn: string; Revision: number; } export interface AWSKafkaConnectConnector18 { Revision: number; WorkerConfigurationArn: string; } export interface AWSKendraDataSource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CustomDocumentEnrichmentConfiguration?: AWSKendraDataSource1; DataSourceConfiguration?: AWSKendraDataSource7; Description?: string; IndexId: string; Name: string; RoleArn?: string; Schedule?: string; Tags?: Tag[]; Type: string; }; Type: 'AWS::Kendra::DataSource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKendraDataSource1 { InlineConfigurations?: AWSKendraDataSource2[]; PostExtractionHookConfiguration?: AWSKendraDataSource6; PreExtractionHookConfiguration?: AWSKendraDataSource6; RoleArn?: string; } export interface AWSKendraDataSource2 { Condition?: AWSKendraDataSource3; DocumentContentDeletion?: boolean; Target?: AWSKendraDataSource5; } export interface AWSKendraDataSource3 { ConditionDocumentAttributeKey: string; ConditionOnValue?: AWSKendraDataSource4; Operator: string; } export interface AWSKendraDataSource4 { DateValue?: string; LongValue?: number; StringListValue?: string[]; StringValue?: string; } export interface AWSKendraDataSource5 { TargetDocumentAttributeKey: string; TargetDocumentAttributeValue?: AWSKendraDataSource4; TargetDocumentAttributeValueDeletion?: boolean; } export interface AWSKendraDataSource6 { InvocationCondition?: AWSKendraDataSource3; LambdaArn: string; S3Bucket: string; } export interface AWSKendraDataSource7 { ConfluenceConfiguration?: AWSKendraDataSource8; DatabaseConfiguration?: AWSKendraDataSource18; GoogleDriveConfiguration?: AWSKendraDataSource24; OneDriveConfiguration?: AWSKendraDataSource25; S3Configuration?: AWSKendraDataSource28; SalesforceConfiguration?: AWSKendraDataSource31; ServiceNowConfiguration?: AWSKendraDataSource38; SharePointConfiguration?: AWSKendraDataSource41; WebCrawlerConfiguration?: AWSKendraDataSource42; WorkDocsConfiguration?: AWSKendraDataSource49; } export interface AWSKendraDataSource8 { AttachmentConfiguration?: AWSKendraDataSource9; BlogConfiguration?: AWSKendraDataSource11; ExclusionPatterns?: string[]; InclusionPatterns?: string[]; PageConfiguration?: AWSKendraDataSource13; SecretArn: string; ServerUrl: string; SpaceConfiguration?: AWSKendraDataSource15; Version: string; VpcConfiguration?: AWSKendraDataSource17; } export interface AWSKendraDataSource9 { AttachmentFieldMappings?: AWSKendraDataSource10[]; CrawlAttachments?: boolean; } export interface AWSKendraDataSource10 { DataSourceFieldName: string; DateFieldFormat?: string; IndexFieldName: string; } export interface AWSKendraDataSource11 { BlogFieldMappings?: AWSKendraDataSource12[]; } export interface AWSKendraDataSource12 { DataSourceFieldName: string; DateFieldFormat?: string; IndexFieldName: string; } export interface AWSKendraDataSource13 { PageFieldMappings?: AWSKendraDataSource14[]; } export interface AWSKendraDataSource14 { DataSourceFieldName: string; DateFieldFormat?: string; IndexFieldName: string; } export interface AWSKendraDataSource15 { CrawlArchivedSpaces?: boolean; CrawlPersonalSpaces?: boolean; ExcludeSpaces?: string[]; IncludeSpaces?: string[]; SpaceFieldMappings?: AWSKendraDataSource16[]; } export interface AWSKendraDataSource16 { DataSourceFieldName: string; DateFieldFormat?: string; IndexFieldName: string; } export interface AWSKendraDataSource17 { SecurityGroupIds: string[]; SubnetIds: string[]; } export interface AWSKendraDataSource18 { AclConfiguration?: AWSKendraDataSource19; ColumnConfiguration: AWSKendraDataSource20; ConnectionConfiguration: AWSKendraDataSource22; DatabaseEngineType: string; SqlConfiguration?: AWSKendraDataSource23; VpcConfiguration?: AWSKendraDataSource17; } export interface AWSKendraDataSource19 { AllowedGroupsColumnName: string; } export interface AWSKendraDataSource20 { ChangeDetectingColumns: string[]; DocumentDataColumnName: string; DocumentIdColumnName: string; DocumentTitleColumnName?: string; FieldMappings?: AWSKendraDataSource21[]; } export interface AWSKendraDataSource21 { DataSourceFieldName: string; DateFieldFormat?: string; IndexFieldName: string; } export interface AWSKendraDataSource22 { DatabaseHost: string; DatabaseName: string; DatabasePort: number; SecretArn: string; TableName: string; } export interface AWSKendraDataSource23 { QueryIdentifiersEnclosingOption?: string; } export interface AWSKendraDataSource24 { ExcludeMimeTypes?: string[]; ExcludeSharedDrives?: string[]; ExcludeUserAccounts?: string[]; ExclusionPatterns?: string[]; FieldMappings?: AWSKendraDataSource21[]; InclusionPatterns?: string[]; SecretArn: string; } export interface AWSKendraDataSource25 { DisableLocalGroups?: boolean; ExclusionPatterns?: string[]; FieldMappings?: AWSKendraDataSource21[]; InclusionPatterns?: string[]; OneDriveUsers: AWSKendraDataSource26; SecretArn: string; TenantDomain: string; } export interface AWSKendraDataSource26 { OneDriveUserList?: string[]; OneDriveUserS3Path?: AWSKendraDataSource27; } export interface AWSKendraDataSource27 { Bucket: string; Key: string; } export interface AWSKendraDataSource28 { AccessControlListConfiguration?: AWSKendraDataSource29; BucketName: string; DocumentsMetadataConfiguration?: AWSKendraDataSource30; ExclusionPatterns?: string[]; InclusionPatterns?: string[]; InclusionPrefixes?: string[]; } export interface AWSKendraDataSource29 { KeyPath?: string; } export interface AWSKendraDataSource30 { S3Prefix?: string; } export interface AWSKendraDataSource31 { ChatterFeedConfiguration?: AWSKendraDataSource32; CrawlAttachments?: boolean; ExcludeAttachmentFilePatterns?: string[]; IncludeAttachmentFilePatterns?: string[]; KnowledgeArticleConfiguration?: AWSKendraDataSource33; SecretArn: string; ServerUrl: string; StandardObjectAttachmentConfiguration?: AWSKendraDataSource36; StandardObjectConfigurations?: AWSKendraDataSource37[]; } export interface AWSKendraDataSource32 { DocumentDataFieldName: string; DocumentTitleFieldName?: string; FieldMappings?: AWSKendraDataSource21[]; IncludeFilterTypes?: string[]; } export interface AWSKendraDataSource33 { CustomKnowledgeArticleTypeConfigurations?: AWSKendraDataSource34[]; IncludedStates: string[]; StandardKnowledgeArticleTypeConfiguration?: AWSKendraDataSource35; } export interface AWSKendraDataSource34 { DocumentDataFieldName: string; DocumentTitleFieldName?: string; FieldMappings?: AWSKendraDataSource21[]; Name: string; } export interface AWSKendraDataSource35 { DocumentDataFieldName: string; DocumentTitleFieldName?: string; FieldMappings?: AWSKendraDataSource21[]; } export interface AWSKendraDataSource36 { DocumentTitleFieldName?: string; FieldMappings?: AWSKendraDataSource21[]; } export interface AWSKendraDataSource37 { DocumentDataFieldName: string; DocumentTitleFieldName?: string; FieldMappings?: AWSKendraDataSource21[]; Name: string; } export interface AWSKendraDataSource38 { AuthenticationType?: string; HostUrl: string; KnowledgeArticleConfiguration?: AWSKendraDataSource39; SecretArn: string; ServiceCatalogConfiguration?: AWSKendraDataSource40; ServiceNowBuildVersion: string; } export interface AWSKendraDataSource39 { CrawlAttachments?: boolean; DocumentDataFieldName: string; DocumentTitleFieldName?: string; ExcludeAttachmentFilePatterns?: string[]; FieldMappings?: AWSKendraDataSource21[]; FilterQuery?: string; IncludeAttachmentFilePatterns?: string[]; } export interface AWSKendraDataSource40 { CrawlAttachments?: boolean; DocumentDataFieldName: string; DocumentTitleFieldName?: string; ExcludeAttachmentFilePatterns?: string[]; FieldMappings?: AWSKendraDataSource21[]; IncludeAttachmentFilePatterns?: string[]; } export interface AWSKendraDataSource41 { CrawlAttachments?: boolean; DisableLocalGroups?: boolean; DocumentTitleFieldName?: string; ExclusionPatterns?: string[]; FieldMappings?: AWSKendraDataSource21[]; InclusionPatterns?: string[]; SecretArn: string; SharePointVersion: string; SslCertificateS3Path?: AWSKendraDataSource27; Urls: string[]; UseChangeLog?: boolean; VpcConfiguration?: AWSKendraDataSource17; } export interface AWSKendraDataSource42 { AuthenticationConfiguration?: AWSKendraDataSource43; CrawlDepth?: number; MaxContentSizePerPageInMegaBytes?: number; MaxLinksPerPage?: number; MaxUrlsPerMinuteCrawlRate?: number; ProxyConfiguration?: AWSKendraDataSource45; UrlExclusionPatterns?: string[]; UrlInclusionPatterns?: string[]; Urls: AWSKendraDataSource46; } export interface AWSKendraDataSource43 { BasicAuthentication?: AWSKendraDataSource44[]; } export interface AWSKendraDataSource44 { Credentials: string; Host: string; Port: number; } export interface AWSKendraDataSource45 { Credentials?: string; Host: string; Port: number; } export interface AWSKendraDataSource46 { SeedUrlConfiguration?: AWSKendraDataSource47; SiteMapsConfiguration?: AWSKendraDataSource48; } export interface AWSKendraDataSource47 { SeedUrls: string[]; WebCrawlerMode?: string; } export interface AWSKendraDataSource48 { SiteMaps: string[]; } export interface AWSKendraDataSource49 { CrawlComments?: boolean; ExclusionPatterns?: string[]; FieldMappings?: AWSKendraDataSource21[]; InclusionPatterns?: string[]; OrganizationId: string; UseChangeLog?: boolean; } export interface AWSKendraFaq { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; FileFormat?: string; IndexId: string; Name: string; RoleArn: string; S3Path: AWSKendraFaq1; Tags?: Tag[]; }; Type: 'AWS::Kendra::Faq'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKendraFaq1 { Bucket: string; Key: string; } export interface AWSKendraIndex { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CapacityUnits?: AWSKendraIndex1; Description?: string; DocumentMetadataConfigurations?: AWSKendraIndex2[]; Edition: string; Name: string; RoleArn: string; ServerSideEncryptionConfiguration?: AWSKendraIndex6; Tags?: Tag[]; UserContextPolicy?: string; UserTokenConfigurations?: AWSKendraIndex7[]; }; Type: 'AWS::Kendra::Index'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKendraIndex1 { QueryCapacityUnits: number; StorageCapacityUnits: number; } export interface AWSKendraIndex2 { Name: string; Relevance?: AWSKendraIndex3; Search?: AWSKendraIndex5; Type: string; } export interface AWSKendraIndex3 { Duration?: string; Freshness?: boolean; Importance?: number; RankOrder?: string; ValueImportanceItems?: AWSKendraIndex4[]; } export interface AWSKendraIndex4 { Key?: string; Value?: number; } export interface AWSKendraIndex5 { Displayable?: boolean; Facetable?: boolean; Searchable?: boolean; Sortable?: boolean; } export interface AWSKendraIndex6 { KmsKeyId?: string; } export interface AWSKendraIndex7 { JsonTokenTypeConfiguration?: AWSKendraIndex8; JwtTokenTypeConfiguration?: AWSKendraIndex9; } export interface AWSKendraIndex8 { GroupAttributeField: string; UserNameAttributeField: string; } export interface AWSKendraIndex9 { ClaimRegex?: string; GroupAttributeField?: string; Issuer?: string; KeyLocation: string; SecretManagerArn?: string; URL?: string; UserNameAttributeField?: string; } export interface AWSKinesisStream { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Name?: string; RetentionPeriodHours?: number; ShardCount?: number; StreamEncryption?: AWSKinesisStream1; StreamModeDetails?: AWSKinesisStream2; Tags?: Tag[]; }; Type: 'AWS::Kinesis::Stream'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisStream1 { EncryptionType: string; KeyId: string; } export interface AWSKinesisStream2 { StreamMode: string; } export interface AWSKinesisStreamConsumer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConsumerName: string; StreamARN: string; }; Type: 'AWS::Kinesis::StreamConsumer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisAnalyticsApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationCode?: string; ApplicationDescription?: string; ApplicationName?: string; Inputs: AWSKinesisAnalyticsApplication1[]; }; Type: 'AWS::KinesisAnalytics::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisAnalyticsApplication1 { InputParallelism?: AWSKinesisAnalyticsApplication2; InputProcessingConfiguration?: AWSKinesisAnalyticsApplication3; InputSchema: AWSKinesisAnalyticsApplication5; KinesisFirehoseInput?: AWSKinesisAnalyticsApplication11; KinesisStreamsInput?: AWSKinesisAnalyticsApplication12; NamePrefix: string; } export interface AWSKinesisAnalyticsApplication2 { Count?: number; } export interface AWSKinesisAnalyticsApplication3 { InputLambdaProcessor?: AWSKinesisAnalyticsApplication4; } export interface AWSKinesisAnalyticsApplication4 { ResourceARN: string; RoleARN: string; } export interface AWSKinesisAnalyticsApplication5 { RecordColumns: AWSKinesisAnalyticsApplication6[]; RecordEncoding?: string; RecordFormat: AWSKinesisAnalyticsApplication7; } export interface AWSKinesisAnalyticsApplication6 { Mapping?: string; Name: string; SqlType: string; } export interface AWSKinesisAnalyticsApplication7 { MappingParameters?: AWSKinesisAnalyticsApplication8; RecordFormatType: string; } export interface AWSKinesisAnalyticsApplication8 { CSVMappingParameters?: AWSKinesisAnalyticsApplication9; JSONMappingParameters?: AWSKinesisAnalyticsApplication10; } export interface AWSKinesisAnalyticsApplication9 { RecordColumnDelimiter: string; RecordRowDelimiter: string; } export interface AWSKinesisAnalyticsApplication10 { RecordRowPath: string; } export interface AWSKinesisAnalyticsApplication11 { ResourceARN: string; RoleARN: string; } export interface AWSKinesisAnalyticsApplication12 { ResourceARN: string; RoleARN: string; } export interface AWSKinesisAnalyticsApplicationOutput { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationName: string; Output: AWSKinesisAnalyticsApplicationOutput1; }; Type: 'AWS::KinesisAnalytics::ApplicationOutput'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisAnalyticsApplicationOutput1 { DestinationSchema: AWSKinesisAnalyticsApplicationOutput2; KinesisFirehoseOutput?: AWSKinesisAnalyticsApplicationOutput3; KinesisStreamsOutput?: AWSKinesisAnalyticsApplicationOutput4; LambdaOutput?: AWSKinesisAnalyticsApplicationOutput5; Name?: string; } export interface AWSKinesisAnalyticsApplicationOutput2 { RecordFormatType?: string; } export interface AWSKinesisAnalyticsApplicationOutput3 { ResourceARN: string; RoleARN: string; } export interface AWSKinesisAnalyticsApplicationOutput4 { ResourceARN: string; RoleARN: string; } export interface AWSKinesisAnalyticsApplicationOutput5 { ResourceARN: string; RoleARN: string; } export interface AWSKinesisAnalyticsApplicationReferenceDataSource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationName: string; ReferenceDataSource: AWSKinesisAnalyticsApplicationReferenceDataSource1; }; Type: 'AWS::KinesisAnalytics::ApplicationReferenceDataSource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisAnalyticsApplicationReferenceDataSource1 { ReferenceSchema: AWSKinesisAnalyticsApplicationReferenceDataSource2; S3ReferenceDataSource?: AWSKinesisAnalyticsApplicationReferenceDataSource8; TableName?: string; } export interface AWSKinesisAnalyticsApplicationReferenceDataSource2 { RecordColumns: AWSKinesisAnalyticsApplicationReferenceDataSource3[]; RecordEncoding?: string; RecordFormat: AWSKinesisAnalyticsApplicationReferenceDataSource4; } export interface AWSKinesisAnalyticsApplicationReferenceDataSource3 { Mapping?: string; Name: string; SqlType: string; } export interface AWSKinesisAnalyticsApplicationReferenceDataSource4 { MappingParameters?: AWSKinesisAnalyticsApplicationReferenceDataSource5; RecordFormatType: string; } export interface AWSKinesisAnalyticsApplicationReferenceDataSource5 { CSVMappingParameters?: AWSKinesisAnalyticsApplicationReferenceDataSource6; JSONMappingParameters?: AWSKinesisAnalyticsApplicationReferenceDataSource7; } export interface AWSKinesisAnalyticsApplicationReferenceDataSource6 { RecordColumnDelimiter: string; RecordRowDelimiter: string; } export interface AWSKinesisAnalyticsApplicationReferenceDataSource7 { RecordRowPath: string; } export interface AWSKinesisAnalyticsApplicationReferenceDataSource8 { BucketARN: string; FileKey: string; ReferenceRoleARN: string; } export interface AWSKinesisAnalyticsV2Application { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationConfiguration?: AWSKinesisAnalyticsV2Application1; ApplicationDescription?: string; ApplicationMaintenanceConfiguration?: AWSKinesisAnalyticsV2Application34; ApplicationMode?: string; ApplicationName?: string; RunConfiguration?: AWSKinesisAnalyticsV2Application35; RuntimeEnvironment: string; ServiceExecutionRole: string; Tags?: Tag[]; }; Type: 'AWS::KinesisAnalyticsV2::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisAnalyticsV2Application1 { ApplicationCodeConfiguration?: AWSKinesisAnalyticsV2Application2; ApplicationSnapshotConfiguration?: AWSKinesisAnalyticsV2Application5; EnvironmentProperties?: AWSKinesisAnalyticsV2Application6; FlinkApplicationConfiguration?: AWSKinesisAnalyticsV2Application8; SqlApplicationConfiguration?: AWSKinesisAnalyticsV2Application12; VpcConfigurations?: AWSKinesisAnalyticsV2Application25[]; ZeppelinApplicationConfiguration?: AWSKinesisAnalyticsV2Application26; } export interface AWSKinesisAnalyticsV2Application2 { CodeContent: AWSKinesisAnalyticsV2Application3; CodeContentType: string; } export interface AWSKinesisAnalyticsV2Application3 { S3ContentLocation?: AWSKinesisAnalyticsV2Application4; TextContent?: string; ZipFileContent?: string; } export interface AWSKinesisAnalyticsV2Application4 { BucketARN: string; FileKey: string; ObjectVersion?: string; } export interface AWSKinesisAnalyticsV2Application5 { SnapshotsEnabled: boolean; } export interface AWSKinesisAnalyticsV2Application6 { PropertyGroups?: AWSKinesisAnalyticsV2Application7[]; } export interface AWSKinesisAnalyticsV2Application7 { PropertyGroupId?: string; PropertyMap?: { [k: string]: unknown; }; } export interface AWSKinesisAnalyticsV2Application8 { CheckpointConfiguration?: AWSKinesisAnalyticsV2Application9; MonitoringConfiguration?: AWSKinesisAnalyticsV2Application10; ParallelismConfiguration?: AWSKinesisAnalyticsV2Application11; } export interface AWSKinesisAnalyticsV2Application9 { CheckpointInterval?: number; CheckpointingEnabled?: boolean; ConfigurationType: string; MinPauseBetweenCheckpoints?: number; } export interface AWSKinesisAnalyticsV2Application10 { ConfigurationType: string; LogLevel?: string; MetricsLevel?: string; } export interface AWSKinesisAnalyticsV2Application11 { AutoScalingEnabled?: boolean; ConfigurationType: string; Parallelism?: number; ParallelismPerKPU?: number; } export interface AWSKinesisAnalyticsV2Application12 { Inputs?: AWSKinesisAnalyticsV2Application13[]; } export interface AWSKinesisAnalyticsV2Application13 { InputParallelism?: AWSKinesisAnalyticsV2Application14; InputProcessingConfiguration?: AWSKinesisAnalyticsV2Application15; InputSchema: AWSKinesisAnalyticsV2Application17; KinesisFirehoseInput?: AWSKinesisAnalyticsV2Application23; KinesisStreamsInput?: AWSKinesisAnalyticsV2Application24; NamePrefix: string; } export interface AWSKinesisAnalyticsV2Application14 { Count?: number; } export interface AWSKinesisAnalyticsV2Application15 { InputLambdaProcessor?: AWSKinesisAnalyticsV2Application16; } export interface AWSKinesisAnalyticsV2Application16 { ResourceARN: string; } export interface AWSKinesisAnalyticsV2Application17 { RecordColumns: AWSKinesisAnalyticsV2Application18[]; RecordEncoding?: string; RecordFormat: AWSKinesisAnalyticsV2Application19; } export interface AWSKinesisAnalyticsV2Application18 { Mapping?: string; Name: string; SqlType: string; } export interface AWSKinesisAnalyticsV2Application19 { MappingParameters?: AWSKinesisAnalyticsV2Application20; RecordFormatType: string; } export interface AWSKinesisAnalyticsV2Application20 { CSVMappingParameters?: AWSKinesisAnalyticsV2Application21; JSONMappingParameters?: AWSKinesisAnalyticsV2Application22; } export interface AWSKinesisAnalyticsV2Application21 { RecordColumnDelimiter: string; RecordRowDelimiter: string; } export interface AWSKinesisAnalyticsV2Application22 { RecordRowPath: string; } export interface AWSKinesisAnalyticsV2Application23 { ResourceARN: string; } export interface AWSKinesisAnalyticsV2Application24 { ResourceARN: string; } export interface AWSKinesisAnalyticsV2Application25 { SecurityGroupIds: string[]; SubnetIds: string[]; } export interface AWSKinesisAnalyticsV2Application26 { CatalogConfiguration?: AWSKinesisAnalyticsV2Application27; CustomArtifactsConfiguration?: AWSKinesisAnalyticsV2Application29[]; DeployAsApplicationConfiguration?: AWSKinesisAnalyticsV2Application31; MonitoringConfiguration?: AWSKinesisAnalyticsV2Application33; } export interface AWSKinesisAnalyticsV2Application27 { GlueDataCatalogConfiguration?: AWSKinesisAnalyticsV2Application28; } export interface AWSKinesisAnalyticsV2Application28 { DatabaseARN?: string; } export interface AWSKinesisAnalyticsV2Application29 { ArtifactType: string; MavenReference?: AWSKinesisAnalyticsV2Application30; S3ContentLocation?: AWSKinesisAnalyticsV2Application4; } export interface AWSKinesisAnalyticsV2Application30 { ArtifactId: string; GroupId: string; Version: string; } export interface AWSKinesisAnalyticsV2Application31 { S3ContentLocation: AWSKinesisAnalyticsV2Application32; } export interface AWSKinesisAnalyticsV2Application32 { BasePath?: string; BucketARN: string; } export interface AWSKinesisAnalyticsV2Application33 { LogLevel?: string; } export interface AWSKinesisAnalyticsV2Application34 { ApplicationMaintenanceWindowStartTime: string; } export interface AWSKinesisAnalyticsV2Application35 { ApplicationRestoreConfiguration?: AWSKinesisAnalyticsV2Application36; FlinkRunConfiguration?: AWSKinesisAnalyticsV2Application37; } export interface AWSKinesisAnalyticsV2Application36 { ApplicationRestoreType: string; SnapshotName?: string; } export interface AWSKinesisAnalyticsV2Application37 { AllowNonRestoredState?: boolean; } export interface AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationName: string; CloudWatchLoggingOption: AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption1; }; Type: 'AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption1 { LogStreamARN: string; } export interface AWSKinesisAnalyticsV2ApplicationOutput { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationName: string; Output: AWSKinesisAnalyticsV2ApplicationOutput1; }; Type: 'AWS::KinesisAnalyticsV2::ApplicationOutput'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisAnalyticsV2ApplicationOutput1 { DestinationSchema: AWSKinesisAnalyticsV2ApplicationOutput2; KinesisFirehoseOutput?: AWSKinesisAnalyticsV2ApplicationOutput3; KinesisStreamsOutput?: AWSKinesisAnalyticsV2ApplicationOutput4; LambdaOutput?: AWSKinesisAnalyticsV2ApplicationOutput5; Name?: string; } export interface AWSKinesisAnalyticsV2ApplicationOutput2 { RecordFormatType?: string; } export interface AWSKinesisAnalyticsV2ApplicationOutput3 { ResourceARN: string; } export interface AWSKinesisAnalyticsV2ApplicationOutput4 { ResourceARN: string; } export interface AWSKinesisAnalyticsV2ApplicationOutput5 { ResourceARN: string; } export interface AWSKinesisAnalyticsV2ApplicationReferenceDataSource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationName: string; ReferenceDataSource: AWSKinesisAnalyticsV2ApplicationReferenceDataSource1; }; Type: 'AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisAnalyticsV2ApplicationReferenceDataSource1 { ReferenceSchema: AWSKinesisAnalyticsV2ApplicationReferenceDataSource2; S3ReferenceDataSource?: AWSKinesisAnalyticsV2ApplicationReferenceDataSource8; TableName?: string; } export interface AWSKinesisAnalyticsV2ApplicationReferenceDataSource2 { RecordColumns: AWSKinesisAnalyticsV2ApplicationReferenceDataSource3[]; RecordEncoding?: string; RecordFormat: AWSKinesisAnalyticsV2ApplicationReferenceDataSource4; } export interface AWSKinesisAnalyticsV2ApplicationReferenceDataSource3 { Mapping?: string; Name: string; SqlType: string; } export interface AWSKinesisAnalyticsV2ApplicationReferenceDataSource4 { MappingParameters?: AWSKinesisAnalyticsV2ApplicationReferenceDataSource5; RecordFormatType: string; } export interface AWSKinesisAnalyticsV2ApplicationReferenceDataSource5 { CSVMappingParameters?: AWSKinesisAnalyticsV2ApplicationReferenceDataSource6; JSONMappingParameters?: AWSKinesisAnalyticsV2ApplicationReferenceDataSource7; } export interface AWSKinesisAnalyticsV2ApplicationReferenceDataSource6 { RecordColumnDelimiter: string; RecordRowDelimiter: string; } export interface AWSKinesisAnalyticsV2ApplicationReferenceDataSource7 { RecordRowPath: string; } export interface AWSKinesisAnalyticsV2ApplicationReferenceDataSource8 { BucketARN: string; FileKey: string; } export interface AWSKinesisFirehoseDeliveryStream { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AmazonOpenSearchServerlessDestinationConfiguration?: AWSKinesisFirehoseDeliveryStream1; AmazonopensearchserviceDestinationConfiguration?: AWSKinesisFirehoseDeliveryStream13; DeliveryStreamEncryptionConfigurationInput?: AWSKinesisFirehoseDeliveryStream16; DeliveryStreamName?: string; DeliveryStreamType?: string; ElasticsearchDestinationConfiguration?: AWSKinesisFirehoseDeliveryStream17; ExtendedS3DestinationConfiguration?: AWSKinesisFirehoseDeliveryStream20; HttpEndpointDestinationConfiguration?: AWSKinesisFirehoseDeliveryStream33; KinesisStreamSourceConfiguration?: AWSKinesisFirehoseDeliveryStream37; RedshiftDestinationConfiguration?: AWSKinesisFirehoseDeliveryStream38; S3DestinationConfiguration?: AWSKinesisFirehoseDeliveryStream8; SplunkDestinationConfiguration?: AWSKinesisFirehoseDeliveryStream41; Tags?: Tag[]; }; Type: 'AWS::KinesisFirehose::DeliveryStream'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisFirehoseDeliveryStream1 { BufferingHints?: AWSKinesisFirehoseDeliveryStream2; CloudWatchLoggingOptions?: AWSKinesisFirehoseDeliveryStream3; CollectionEndpoint?: string; IndexName: string; ProcessingConfiguration?: AWSKinesisFirehoseDeliveryStream4; RetryOptions?: AWSKinesisFirehoseDeliveryStream7; RoleARN: string; S3BackupMode?: string; S3Configuration: AWSKinesisFirehoseDeliveryStream8; VpcConfiguration?: AWSKinesisFirehoseDeliveryStream12; } export interface AWSKinesisFirehoseDeliveryStream2 { IntervalInSeconds?: number; SizeInMBs?: number; } export interface AWSKinesisFirehoseDeliveryStream3 { Enabled?: boolean; LogGroupName?: string; LogStreamName?: string; } export interface AWSKinesisFirehoseDeliveryStream4 { Enabled?: boolean; Processors?: AWSKinesisFirehoseDeliveryStream5[]; } export interface AWSKinesisFirehoseDeliveryStream5 { Parameters?: AWSKinesisFirehoseDeliveryStream6[]; Type: string; } export interface AWSKinesisFirehoseDeliveryStream6 { ParameterName: string; ParameterValue: string; } export interface AWSKinesisFirehoseDeliveryStream7 { DurationInSeconds?: number; } export interface AWSKinesisFirehoseDeliveryStream8 { BucketARN: string; BufferingHints?: AWSKinesisFirehoseDeliveryStream9; CloudWatchLoggingOptions?: AWSKinesisFirehoseDeliveryStream3; CompressionFormat?: string; EncryptionConfiguration?: AWSKinesisFirehoseDeliveryStream10; ErrorOutputPrefix?: string; Prefix?: string; RoleARN: string; } export interface AWSKinesisFirehoseDeliveryStream9 { IntervalInSeconds?: number; SizeInMBs?: number; } export interface AWSKinesisFirehoseDeliveryStream10 { KMSEncryptionConfig?: AWSKinesisFirehoseDeliveryStream11; NoEncryptionConfig?: string; } export interface AWSKinesisFirehoseDeliveryStream11 { AWSKMSKeyARN: string; } export interface AWSKinesisFirehoseDeliveryStream12 { RoleARN: string; SecurityGroupIds: string[]; SubnetIds: string[]; } export interface AWSKinesisFirehoseDeliveryStream13 { BufferingHints?: AWSKinesisFirehoseDeliveryStream14; CloudWatchLoggingOptions?: AWSKinesisFirehoseDeliveryStream3; ClusterEndpoint?: string; DomainARN?: string; IndexName: string; IndexRotationPeriod?: string; ProcessingConfiguration?: AWSKinesisFirehoseDeliveryStream4; RetryOptions?: AWSKinesisFirehoseDeliveryStream15; RoleARN: string; S3BackupMode?: string; S3Configuration: AWSKinesisFirehoseDeliveryStream8; TypeName?: string; VpcConfiguration?: AWSKinesisFirehoseDeliveryStream12; } export interface AWSKinesisFirehoseDeliveryStream14 { IntervalInSeconds?: number; SizeInMBs?: number; } export interface AWSKinesisFirehoseDeliveryStream15 { DurationInSeconds?: number; } export interface AWSKinesisFirehoseDeliveryStream16 { KeyARN?: string; KeyType: string; } export interface AWSKinesisFirehoseDeliveryStream17 { BufferingHints?: AWSKinesisFirehoseDeliveryStream18; CloudWatchLoggingOptions?: AWSKinesisFirehoseDeliveryStream3; ClusterEndpoint?: string; DomainARN?: string; IndexName: string; IndexRotationPeriod?: string; ProcessingConfiguration?: AWSKinesisFirehoseDeliveryStream4; RetryOptions?: AWSKinesisFirehoseDeliveryStream19; RoleARN: string; S3BackupMode?: string; S3Configuration: AWSKinesisFirehoseDeliveryStream8; TypeName?: string; VpcConfiguration?: AWSKinesisFirehoseDeliveryStream12; } export interface AWSKinesisFirehoseDeliveryStream18 { IntervalInSeconds?: number; SizeInMBs?: number; } export interface AWSKinesisFirehoseDeliveryStream19 { DurationInSeconds?: number; } export interface AWSKinesisFirehoseDeliveryStream20 { BucketARN: string; BufferingHints?: AWSKinesisFirehoseDeliveryStream9; CloudWatchLoggingOptions?: AWSKinesisFirehoseDeliveryStream3; CompressionFormat?: string; DataFormatConversionConfiguration?: AWSKinesisFirehoseDeliveryStream21; DynamicPartitioningConfiguration?: AWSKinesisFirehoseDeliveryStream31; EncryptionConfiguration?: AWSKinesisFirehoseDeliveryStream10; ErrorOutputPrefix?: string; Prefix?: string; ProcessingConfiguration?: AWSKinesisFirehoseDeliveryStream4; RoleARN: string; S3BackupConfiguration?: AWSKinesisFirehoseDeliveryStream8; S3BackupMode?: string; } export interface AWSKinesisFirehoseDeliveryStream21 { Enabled?: boolean; InputFormatConfiguration?: AWSKinesisFirehoseDeliveryStream22; OutputFormatConfiguration?: AWSKinesisFirehoseDeliveryStream26; SchemaConfiguration?: AWSKinesisFirehoseDeliveryStream30; } export interface AWSKinesisFirehoseDeliveryStream22 { Deserializer?: AWSKinesisFirehoseDeliveryStream23; } export interface AWSKinesisFirehoseDeliveryStream23 { HiveJsonSerDe?: AWSKinesisFirehoseDeliveryStream24; OpenXJsonSerDe?: AWSKinesisFirehoseDeliveryStream25; } export interface AWSKinesisFirehoseDeliveryStream24 { TimestampFormats?: string[]; } export interface AWSKinesisFirehoseDeliveryStream25 { CaseInsensitive?: boolean; ColumnToJsonKeyMappings?: { [k: string]: unknown; }; ConvertDotsInJsonKeysToUnderscores?: boolean; } export interface AWSKinesisFirehoseDeliveryStream26 { Serializer?: AWSKinesisFirehoseDeliveryStream27; } export interface AWSKinesisFirehoseDeliveryStream27 { OrcSerDe?: AWSKinesisFirehoseDeliveryStream28; ParquetSerDe?: AWSKinesisFirehoseDeliveryStream29; } export interface AWSKinesisFirehoseDeliveryStream28 { BlockSizeBytes?: number; BloomFilterColumns?: string[]; BloomFilterFalsePositiveProbability?: number; Compression?: string; DictionaryKeyThreshold?: number; EnablePadding?: boolean; FormatVersion?: string; PaddingTolerance?: number; RowIndexStride?: number; StripeSizeBytes?: number; } export interface AWSKinesisFirehoseDeliveryStream29 { BlockSizeBytes?: number; Compression?: string; EnableDictionaryCompression?: boolean; MaxPaddingBytes?: number; PageSizeBytes?: number; WriterVersion?: string; } export interface AWSKinesisFirehoseDeliveryStream30 { CatalogId?: string; DatabaseName?: string; Region?: string; RoleARN?: string; TableName?: string; VersionId?: string; } export interface AWSKinesisFirehoseDeliveryStream31 { Enabled?: boolean; RetryOptions?: AWSKinesisFirehoseDeliveryStream32; } export interface AWSKinesisFirehoseDeliveryStream32 { DurationInSeconds?: number; } export interface AWSKinesisFirehoseDeliveryStream33 { BufferingHints?: AWSKinesisFirehoseDeliveryStream9; CloudWatchLoggingOptions?: AWSKinesisFirehoseDeliveryStream3; EndpointConfiguration: AWSKinesisFirehoseDeliveryStream34; ProcessingConfiguration?: AWSKinesisFirehoseDeliveryStream4; RequestConfiguration?: AWSKinesisFirehoseDeliveryStream35; RetryOptions?: AWSKinesisFirehoseDeliveryStream32; RoleARN?: string; S3BackupMode?: string; S3Configuration: AWSKinesisFirehoseDeliveryStream8; } export interface AWSKinesisFirehoseDeliveryStream34 { AccessKey?: string; Name?: string; Url: string; } export interface AWSKinesisFirehoseDeliveryStream35 { CommonAttributes?: AWSKinesisFirehoseDeliveryStream36[]; ContentEncoding?: string; } export interface AWSKinesisFirehoseDeliveryStream36 { AttributeName: string; AttributeValue: string; } export interface AWSKinesisFirehoseDeliveryStream37 { KinesisStreamARN: string; RoleARN: string; } export interface AWSKinesisFirehoseDeliveryStream38 { CloudWatchLoggingOptions?: AWSKinesisFirehoseDeliveryStream3; ClusterJDBCURL: string; CopyCommand: AWSKinesisFirehoseDeliveryStream39; Password: string; ProcessingConfiguration?: AWSKinesisFirehoseDeliveryStream4; RetryOptions?: AWSKinesisFirehoseDeliveryStream40; RoleARN: string; S3BackupConfiguration?: AWSKinesisFirehoseDeliveryStream8; S3BackupMode?: string; S3Configuration: AWSKinesisFirehoseDeliveryStream8; Username: string; } export interface AWSKinesisFirehoseDeliveryStream39 { CopyOptions?: string; DataTableColumns?: string; DataTableName: string; } export interface AWSKinesisFirehoseDeliveryStream40 { DurationInSeconds?: number; } export interface AWSKinesisFirehoseDeliveryStream41 { CloudWatchLoggingOptions?: AWSKinesisFirehoseDeliveryStream3; HECAcknowledgmentTimeoutInSeconds?: number; HECEndpoint: string; HECEndpointType: string; HECToken: string; ProcessingConfiguration?: AWSKinesisFirehoseDeliveryStream4; RetryOptions?: AWSKinesisFirehoseDeliveryStream42; S3BackupMode?: string; S3Configuration: AWSKinesisFirehoseDeliveryStream8; } export interface AWSKinesisFirehoseDeliveryStream42 { DurationInSeconds?: number; } export interface AWSKinesisVideoSignalingChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { MessageTtlSeconds?: number; Name?: string; Tags?: Tag[]; Type?: string; }; Type: 'AWS::KinesisVideo::SignalingChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSKinesisVideoStream { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DataRetentionInHours?: number; DeviceName?: string; KmsKeyId?: string; MediaType?: string; Name?: string; Tags?: Tag[]; }; Type: 'AWS::KinesisVideo::Stream'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLakeFormationDataCellsFilter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ColumnNames?: string[]; ColumnWildcard?: AWSLakeFormationDataCellsFilter1; DatabaseName: string; Name: string; RowFilter?: AWSLakeFormationDataCellsFilter2; TableCatalogId: string; TableName: string; }; Type: 'AWS::LakeFormation::DataCellsFilter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLakeFormationDataCellsFilter1 { ExcludedColumnNames?: string[]; } export interface AWSLakeFormationDataCellsFilter2 { AllRowsWildcard?: { [k: string]: unknown; }; FilterExpression?: string; } export interface AWSLakeFormationDataLakeSettings { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Admins?: AWSLakeFormationDataLakeSettings1; TrustedResourceOwners?: string[]; }; Type: 'AWS::LakeFormation::DataLakeSettings'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLakeFormationDataLakeSettings1 {} export interface AWSLakeFormationPermissions { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataLakePrincipal: AWSLakeFormationPermissions1; Permissions?: string[]; PermissionsWithGrantOption?: string[]; Resource: AWSLakeFormationPermissions2; }; Type: 'AWS::LakeFormation::Permissions'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLakeFormationPermissions1 { DataLakePrincipalIdentifier?: string; } export interface AWSLakeFormationPermissions2 { DataLocationResource?: AWSLakeFormationPermissions3; DatabaseResource?: AWSLakeFormationPermissions4; TableResource?: AWSLakeFormationPermissions5; TableWithColumnsResource?: AWSLakeFormationPermissions7; } export interface AWSLakeFormationPermissions3 { CatalogId?: string; S3Resource?: string; } export interface AWSLakeFormationPermissions4 { CatalogId?: string; Name?: string; } export interface AWSLakeFormationPermissions5 { CatalogId?: string; DatabaseName?: string; Name?: string; TableWildcard?: AWSLakeFormationPermissions6; } export interface AWSLakeFormationPermissions6 {} export interface AWSLakeFormationPermissions7 { CatalogId?: string; ColumnNames?: string[]; ColumnWildcard?: AWSLakeFormationPermissions8; DatabaseName?: string; Name?: string; } export interface AWSLakeFormationPermissions8 { ExcludedColumnNames?: string[]; } export interface AWSLakeFormationPrincipalPermissions { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Catalog?: string; Permissions: string[]; PermissionsWithGrantOption: string[]; Principal: AWSLakeFormationPrincipalPermissions1; Resource: AWSLakeFormationPrincipalPermissions2; }; Type: 'AWS::LakeFormation::PrincipalPermissions'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLakeFormationPrincipalPermissions1 { DataLakePrincipalIdentifier?: string; } export interface AWSLakeFormationPrincipalPermissions2 { Catalog?: { [k: string]: unknown; }; DataCellsFilter?: AWSLakeFormationPrincipalPermissions3; DataLocation?: AWSLakeFormationPrincipalPermissions4; Database?: AWSLakeFormationPrincipalPermissions5; LFTag?: AWSLakeFormationPrincipalPermissions6; LFTagPolicy?: AWSLakeFormationPrincipalPermissions7; Table?: AWSLakeFormationPrincipalPermissions9; TableWithColumns?: AWSLakeFormationPrincipalPermissions10; } export interface AWSLakeFormationPrincipalPermissions3 { DatabaseName: string; Name: string; TableCatalogId: string; TableName: string; } export interface AWSLakeFormationPrincipalPermissions4 { CatalogId: string; ResourceArn: string; } export interface AWSLakeFormationPrincipalPermissions5 { CatalogId: string; Name: string; } export interface AWSLakeFormationPrincipalPermissions6 { CatalogId: string; TagKey: string; TagValues: string[]; } export interface AWSLakeFormationPrincipalPermissions7 { CatalogId: string; Expression: AWSLakeFormationPrincipalPermissions8[]; ResourceType: string; } export interface AWSLakeFormationPrincipalPermissions8 { TagKey?: string; TagValues?: string[]; } export interface AWSLakeFormationPrincipalPermissions9 { CatalogId: string; DatabaseName: string; Name?: string; TableWildcard?: { [k: string]: unknown; }; } export interface AWSLakeFormationPrincipalPermissions10 { CatalogId: string; ColumnNames?: string[]; ColumnWildcard?: AWSLakeFormationPrincipalPermissions11; DatabaseName: string; Name: string; } export interface AWSLakeFormationPrincipalPermissions11 { ExcludedColumnNames?: string[]; } export interface AWSLakeFormationResource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResourceArn: string; RoleArn?: string; UseServiceLinkedRole: boolean; }; Type: 'AWS::LakeFormation::Resource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLakeFormationTag { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CatalogId?: string; TagKey: string; TagValues: string[]; }; Type: 'AWS::LakeFormation::Tag'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLakeFormationTagAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LFTags: AWSLakeFormationTagAssociation1[]; Resource: AWSLakeFormationTagAssociation2; }; Type: 'AWS::LakeFormation::TagAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLakeFormationTagAssociation1 { CatalogId: string; TagKey: string; TagValues: string[]; } export interface AWSLakeFormationTagAssociation2 { Catalog?: { [k: string]: unknown; }; Database?: AWSLakeFormationTagAssociation3; Table?: AWSLakeFormationTagAssociation4; TableWithColumns?: AWSLakeFormationTagAssociation5; } export interface AWSLakeFormationTagAssociation3 { CatalogId: string; Name: string; } export interface AWSLakeFormationTagAssociation4 { CatalogId: string; DatabaseName: string; Name?: string; TableWildcard?: { [k: string]: unknown; }; } export interface AWSLakeFormationTagAssociation5 { CatalogId: string; ColumnNames: string[]; DatabaseName: string; Name: string; } export interface AWSLambdaAlias { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; FunctionName: string; FunctionVersion: string; Name: string; ProvisionedConcurrencyConfig?: AWSLambdaAlias1; RoutingConfig?: AWSLambdaAlias2; }; Type: 'AWS::Lambda::Alias'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaAlias1 { ProvisionedConcurrentExecutions: number; } export interface AWSLambdaAlias2 { AdditionalVersionWeights: AWSLambdaAlias3[]; } export interface AWSLambdaAlias3 { FunctionVersion: string; FunctionWeight: number; } export interface AWSLambdaCodeSigningConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowedPublishers: AWSLambdaCodeSigningConfig1; CodeSigningPolicies?: AWSLambdaCodeSigningConfig2; Description?: string; }; Type: 'AWS::Lambda::CodeSigningConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaCodeSigningConfig1 { SigningProfileVersionArns: string[]; } export interface AWSLambdaCodeSigningConfig2 { UntrustedArtifactOnDeployment: string; } export interface AWSLambdaEventInvokeConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DestinationConfig?: AWSLambdaEventInvokeConfig1; FunctionName: string; MaximumEventAgeInSeconds?: number; MaximumRetryAttempts?: number; Qualifier: string; }; Type: 'AWS::Lambda::EventInvokeConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaEventInvokeConfig1 { OnFailure?: AWSLambdaEventInvokeConfig2; OnSuccess?: AWSLambdaEventInvokeConfig3; } export interface AWSLambdaEventInvokeConfig2 { Destination: string; } export interface AWSLambdaEventInvokeConfig3 { Destination: string; } export interface AWSLambdaEventSourceMapping { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AmazonManagedKafkaEventSourceConfig?: AWSLambdaEventSourceMapping1; BatchSize?: number; BisectBatchOnFunctionError?: boolean; DestinationConfig?: AWSLambdaEventSourceMapping2; Enabled?: boolean; EventSourceArn?: string; FilterCriteria?: AWSLambdaEventSourceMapping4; FunctionName: string; FunctionResponseTypes?: string[]; MaximumBatchingWindowInSeconds?: number; MaximumRecordAgeInSeconds?: number; MaximumRetryAttempts?: number; ParallelizationFactor?: number; Queues?: string[]; ScalingConfig?: AWSLambdaEventSourceMapping6; SelfManagedEventSource?: AWSLambdaEventSourceMapping7; SelfManagedKafkaEventSourceConfig?: AWSLambdaEventSourceMapping9; SourceAccessConfigurations?: AWSLambdaEventSourceMapping10[]; StartingPosition?: string; StartingPositionTimestamp?: number; Topics?: string[]; TumblingWindowInSeconds?: number; }; Type: 'AWS::Lambda::EventSourceMapping'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaEventSourceMapping1 { ConsumerGroupId?: string; } export interface AWSLambdaEventSourceMapping2 { OnFailure?: AWSLambdaEventSourceMapping3; } export interface AWSLambdaEventSourceMapping3 { Destination?: string; } export interface AWSLambdaEventSourceMapping4 { Filters?: AWSLambdaEventSourceMapping5[]; } export interface AWSLambdaEventSourceMapping5 { Pattern?: string; } export interface AWSLambdaEventSourceMapping6 { MaximumConcurrency?: number; } export interface AWSLambdaEventSourceMapping7 { Endpoints?: AWSLambdaEventSourceMapping8; } export interface AWSLambdaEventSourceMapping8 { KafkaBootstrapServers?: string[]; } export interface AWSLambdaEventSourceMapping9 { ConsumerGroupId?: string; } export interface AWSLambdaEventSourceMapping10 { Type?: string; URI?: string; } export interface AWSLambdaFunction { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Architectures?: string[]; Code: AWSLambdaFunction1; CodeSigningConfigArn?: string; DeadLetterConfig?: AWSLambdaFunction2; Description?: string; Environment?: AWSLambdaFunction3; EphemeralStorage?: AWSLambdaFunction4; FileSystemConfigs?: AWSLambdaFunction5[]; FunctionName?: string; Handler?: string; ImageConfig?: AWSLambdaFunction6; KmsKeyArn?: string; Layers?: string[]; MemorySize?: number; PackageType?: string; ReservedConcurrentExecutions?: number; Role: string; Runtime?: string; SnapStart?: AWSLambdaFunction7; Tags?: Tag[]; Timeout?: number; TracingConfig?: AWSLambdaFunction8; VpcConfig?: AWSLambdaFunction9; }; Type: 'AWS::Lambda::Function'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaFunction1 { ImageUri?: string; S3Bucket?: string; S3Key?: string; S3ObjectVersion?: string; ZipFile?: string; } export interface AWSLambdaFunction2 { TargetArn?: string; } export interface AWSLambdaFunction3 { Variables?: { [k: string]: unknown; }; } export interface AWSLambdaFunction4 { Size: number; } export interface AWSLambdaFunction5 { Arn: string; LocalMountPath: string; } export interface AWSLambdaFunction6 { Command?: string[]; EntryPoint?: string[]; WorkingDirectory?: string; } export interface AWSLambdaFunction7 { ApplyOn: string; } export interface AWSLambdaFunction8 { Mode?: string; } export interface AWSLambdaFunction9 { SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSLambdaLayerVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CompatibleArchitectures?: string[]; CompatibleRuntimes?: string[]; Content: AWSLambdaLayerVersion1; Description?: string; LayerName?: string; LicenseInfo?: string; }; Type: 'AWS::Lambda::LayerVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaLayerVersion1 { S3Bucket: string; S3Key: string; S3ObjectVersion?: string; } export interface AWSLambdaLayerVersionPermission { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Action: string; LayerVersionArn: string; OrganizationId?: string; Principal: string; }; Type: 'AWS::Lambda::LayerVersionPermission'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaPermission { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Action: string; EventSourceToken?: string; FunctionName: string; FunctionUrlAuthType?: string; Principal: string; PrincipalOrgID?: string; SourceAccount?: string; SourceArn?: string; }; Type: 'AWS::Lambda::Permission'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaUrl { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthType: string; Cors?: AWSLambdaUrl1; InvokeMode?: string; Qualifier?: string; TargetFunctionArn: string; }; Type: 'AWS::Lambda::Url'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaUrl1 { AllowCredentials?: boolean; AllowHeaders?: string[]; AllowMethods?: string[]; AllowOrigins?: string[]; ExposeHeaders?: string[]; MaxAge?: number; } export interface AWSLambdaVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CodeSha256?: string; Description?: string; FunctionName: string; ProvisionedConcurrencyConfig?: AWSLambdaVersion1; }; Type: 'AWS::Lambda::Version'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLambdaVersion1 { ProvisionedConcurrentExecutions: number; } export interface AWSLexBot { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutoBuildBotLocales?: boolean; BotFileS3Location?: AWSLexBot1; BotLocales?: AWSLexBot2[]; BotTags?: Tag[]; DataPrivacy: AWSLexBot52; Description?: string; IdleSessionTTLInSeconds: number; Name: string; RoleArn: string; TestBotAliasSettings?: AWSLexBot53; TestBotAliasTags?: Tag[]; }; Type: 'AWS::Lex::Bot'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLexBot1 { S3Bucket: string; S3ObjectKey: string; S3ObjectVersion?: string; } export interface AWSLexBot2 { CustomVocabulary?: AWSLexBot3; Description?: string; Intents?: AWSLexBot5[]; LocaleId: string; NluConfidenceThreshold: number; SlotTypes?: AWSLexBot42[]; VoiceSettings?: AWSLexBot51; } export interface AWSLexBot3 { CustomVocabularyItems: AWSLexBot4[]; } export interface AWSLexBot4 { Phrase: string; Weight?: number; } export interface AWSLexBot5 { Description?: string; DialogCodeHook?: AWSLexBot6; FulfillmentCodeHook?: AWSLexBot7; InputContexts?: AWSLexBot20[]; IntentClosingSetting?: AWSLexBot21; IntentConfirmationSetting?: AWSLexBot22; KendraConfiguration?: AWSLexBot30; Name: string; OutputContexts?: AWSLexBot31[]; ParentIntentSignature?: string; SampleUtterances?: AWSLexBot32[]; SlotPriorities?: AWSLexBot33[]; Slots?: AWSLexBot34[]; } export interface AWSLexBot6 { Enabled: boolean; } export interface AWSLexBot7 { Enabled: boolean; FulfillmentUpdatesSpecification?: AWSLexBot8; PostFulfillmentStatusSpecification?: AWSLexBot18; } export interface AWSLexBot8 { Active: boolean; StartResponse?: AWSLexBot9; TimeoutInSeconds?: number; UpdateResponse?: AWSLexBot17; } export interface AWSLexBot9 { AllowInterrupt?: boolean; DelayInSeconds: number; MessageGroups: AWSLexBot10[]; } export interface AWSLexBot10 { Message: AWSLexBot11; Variations?: AWSLexBot11[]; } export interface AWSLexBot11 { CustomPayload?: AWSLexBot12; ImageResponseCard?: AWSLexBot13; PlainTextMessage?: AWSLexBot15; SSMLMessage?: AWSLexBot16; } export interface AWSLexBot12 { Value: string; } export interface AWSLexBot13 { Buttons?: AWSLexBot14[]; ImageUrl?: string; Subtitle?: string; Title: string; } export interface AWSLexBot14 { Text: string; Value: string; } export interface AWSLexBot15 { Value: string; } export interface AWSLexBot16 { Value: string; } export interface AWSLexBot17 { AllowInterrupt?: boolean; FrequencyInSeconds: number; MessageGroups: AWSLexBot10[]; } export interface AWSLexBot18 { FailureResponse?: AWSLexBot19; SuccessResponse?: AWSLexBot19; TimeoutResponse?: AWSLexBot19; } export interface AWSLexBot19 { AllowInterrupt?: boolean; MessageGroupsList: AWSLexBot10[]; } export interface AWSLexBot20 { Name: string; } export interface AWSLexBot21 { ClosingResponse: AWSLexBot19; IsActive?: boolean; } export interface AWSLexBot22 { DeclinationResponse: AWSLexBot19; IsActive?: boolean; PromptSpecification: AWSLexBot23; } export interface AWSLexBot23 { AllowInterrupt?: boolean; MaxRetries: number; MessageGroupsList: AWSLexBot10[]; MessageSelectionStrategy?: string; PromptAttemptsSpecification?: { [k: string]: AWSLexBot24; }; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSLexBot24 { AllowInterrupt?: boolean; AllowedInputTypes: AWSLexBot25; AudioAndDTMFInputSpecification?: AWSLexBot26; TextInputSpecification?: AWSLexBot29; } export interface AWSLexBot25 { AllowAudioInput: boolean; AllowDTMFInput: boolean; } export interface AWSLexBot26 { AudioSpecification?: AWSLexBot27; DTMFSpecification?: AWSLexBot28; StartTimeoutMs: number; } export interface AWSLexBot27 { EndTimeoutMs: number; MaxLengthMs: number; } export interface AWSLexBot28 { DeletionCharacter: string; EndCharacter: string; EndTimeoutMs: number; MaxLength: number; } export interface AWSLexBot29 { StartTimeoutMs: number; } export interface AWSLexBot30 { KendraIndex: string; QueryFilterString?: string; QueryFilterStringEnabled?: boolean; } export interface AWSLexBot31 { Name: string; TimeToLiveInSeconds: number; TurnsToLive: number; } export interface AWSLexBot32 { Utterance: string; } export interface AWSLexBot33 { Priority: number; SlotName: string; } export interface AWSLexBot34 { Description?: string; MultipleValuesSetting?: AWSLexBot35; Name: string; ObfuscationSetting?: AWSLexBot36; SlotTypeName: string; ValueElicitationSetting: AWSLexBot37; } export interface AWSLexBot35 { AllowMultipleValues?: boolean; } export interface AWSLexBot36 { ObfuscationSettingType: string; } export interface AWSLexBot37 { DefaultValueSpecification?: AWSLexBot38; PromptSpecification?: AWSLexBot23; SampleUtterances?: AWSLexBot32[]; SlotConstraint: string; WaitAndContinueSpecification?: AWSLexBot40; } export interface AWSLexBot38 { DefaultValueList: AWSLexBot39[]; } export interface AWSLexBot39 { DefaultValue: string; } export interface AWSLexBot40 { ContinueResponse: AWSLexBot19; IsActive?: boolean; StillWaitingResponse?: AWSLexBot41; WaitingResponse: AWSLexBot19; } export interface AWSLexBot41 { AllowInterrupt?: boolean; FrequencyInSeconds: number; MessageGroupsList: AWSLexBot10[]; TimeoutInSeconds: number; } export interface AWSLexBot42 { Description?: string; ExternalSourceSetting?: AWSLexBot43; Name: string; ParentSlotTypeSignature?: string; SlotTypeValues?: AWSLexBot46[]; ValueSelectionSetting?: AWSLexBot48; } export interface AWSLexBot43 { GrammarSlotTypeSetting?: AWSLexBot44; } export interface AWSLexBot44 { Source?: AWSLexBot45; } export interface AWSLexBot45 { KmsKeyArn?: string; S3BucketName: string; S3ObjectKey: string; } export interface AWSLexBot46 { SampleValue: AWSLexBot47; Synonyms?: AWSLexBot47[]; } export interface AWSLexBot47 { Value: string; } export interface AWSLexBot48 { AdvancedRecognitionSetting?: AWSLexBot49; RegexFilter?: AWSLexBot50; ResolutionStrategy: string; } export interface AWSLexBot49 { AudioRecognitionStrategy?: string; } export interface AWSLexBot50 { Pattern: string; } export interface AWSLexBot51 { Engine?: string; VoiceId: string; } export interface AWSLexBot52 { ChildDirected: boolean; } export interface AWSLexBot53 { BotAliasLocaleSettings?: AWSLexBot54[]; ConversationLogSettings?: AWSLexBot58; Description?: string; SentimentAnalysisSettings?: AWSLexBot65; } export interface AWSLexBot54 { BotAliasLocaleSetting: AWSLexBot55; LocaleId: string; } export interface AWSLexBot55 { CodeHookSpecification?: AWSLexBot56; Enabled: boolean; } export interface AWSLexBot56 { LambdaCodeHook: AWSLexBot57; } export interface AWSLexBot57 { CodeHookInterfaceVersion: string; LambdaArn: string; } export interface AWSLexBot58 { AudioLogSettings?: AWSLexBot59[]; TextLogSettings?: AWSLexBot62[]; } export interface AWSLexBot59 { Destination: AWSLexBot60; Enabled: boolean; } export interface AWSLexBot60 { S3Bucket: AWSLexBot61; } export interface AWSLexBot61 { KmsKeyArn?: string; LogPrefix: string; S3BucketArn: string; } export interface AWSLexBot62 { Destination: AWSLexBot63; Enabled: boolean; } export interface AWSLexBot63 { CloudWatch: AWSLexBot64; } export interface AWSLexBot64 { CloudWatchLogGroupArn: string; LogPrefix: string; } export interface AWSLexBot65 { DetectSentiment: boolean; } export interface AWSLexBotAlias { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BotAliasLocaleSettings?: AWSLexBotAlias1[]; BotAliasName: string; BotAliasTags?: Tag[]; BotId: string; BotVersion?: string; ConversationLogSettings?: AWSLexBotAlias5; Description?: string; SentimentAnalysisSettings?: AWSLexBotAlias12; }; Type: 'AWS::Lex::BotAlias'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLexBotAlias1 { BotAliasLocaleSetting: AWSLexBotAlias2; LocaleId: string; } export interface AWSLexBotAlias2 { CodeHookSpecification?: AWSLexBotAlias3; Enabled: boolean; } export interface AWSLexBotAlias3 { LambdaCodeHook: AWSLexBotAlias4; } export interface AWSLexBotAlias4 { CodeHookInterfaceVersion: string; LambdaArn: string; } export interface AWSLexBotAlias5 { AudioLogSettings?: AWSLexBotAlias6[]; TextLogSettings?: AWSLexBotAlias9[]; } export interface AWSLexBotAlias6 { Destination: AWSLexBotAlias7; Enabled: boolean; } export interface AWSLexBotAlias7 { S3Bucket: AWSLexBotAlias8; } export interface AWSLexBotAlias8 { KmsKeyArn?: string; LogPrefix: string; S3BucketArn: string; } export interface AWSLexBotAlias9 { Destination: AWSLexBotAlias10; Enabled: boolean; } export interface AWSLexBotAlias10 { CloudWatch: AWSLexBotAlias11; } export interface AWSLexBotAlias11 { CloudWatchLogGroupArn: string; LogPrefix: string; } export interface AWSLexBotAlias12 { DetectSentiment: boolean; } export interface AWSLexBotVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BotId: string; BotVersionLocaleSpecification: AWSLexBotVersion1[]; Description?: string; }; Type: 'AWS::Lex::BotVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLexBotVersion1 { BotVersionLocaleDetails: AWSLexBotVersion2; LocaleId: string; } export interface AWSLexBotVersion2 { SourceBotVersion: string; } export interface AWSLexResourcePolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Policy: { [k: string]: unknown; }; ResourceArn: string; }; Type: 'AWS::Lex::ResourcePolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLicenseManagerGrant { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AllowedOperations?: string[]; GrantName?: string; HomeRegion?: string; LicenseArn?: string; Principals?: string[]; Status?: string; }; Type: 'AWS::LicenseManager::Grant'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLicenseManagerLicense { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Beneficiary?: string; ConsumptionConfiguration: AWSLicenseManagerLicense1; Entitlements: AWSLicenseManagerLicense4[]; HomeRegion: string; Issuer: AWSLicenseManagerLicense5; LicenseMetadata?: AWSLicenseManagerLicense6[]; LicenseName: string; ProductName: string; ProductSKU?: string; Status?: string; Validity: AWSLicenseManagerLicense7; }; Type: 'AWS::LicenseManager::License'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLicenseManagerLicense1 { BorrowConfiguration?: AWSLicenseManagerLicense2; ProvisionalConfiguration?: AWSLicenseManagerLicense3; RenewType?: string; } export interface AWSLicenseManagerLicense2 { AllowEarlyCheckIn: boolean; MaxTimeToLiveInMinutes: number; } export interface AWSLicenseManagerLicense3 { MaxTimeToLiveInMinutes: number; } export interface AWSLicenseManagerLicense4 { AllowCheckIn?: boolean; MaxCount?: number; Name: string; Overage?: boolean; Unit: string; Value?: string; } export interface AWSLicenseManagerLicense5 { Name: string; SignKey?: string; } export interface AWSLicenseManagerLicense6 { Name: string; Value: string; } export interface AWSLicenseManagerLicense7 { Begin: string; End: string; } export interface AWSLightsailAlarm { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AlarmName: string; ComparisonOperator: string; ContactProtocols?: string[]; DatapointsToAlarm?: number; EvaluationPeriods: number; MetricName: string; MonitoredResourceName: string; NotificationEnabled?: boolean; NotificationTriggers?: string[]; Threshold: number; TreatMissingData?: string; }; Type: 'AWS::Lightsail::Alarm'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailBucket { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessRules?: AWSLightsailBucket1; BucketName: string; BundleId: string; ObjectVersioning?: boolean; ReadOnlyAccessAccounts?: string[]; ResourcesReceivingAccess?: string[]; Tags?: Tag[]; }; Type: 'AWS::Lightsail::Bucket'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailBucket1 { AllowPublicOverrides?: boolean; GetObject?: string; } export interface AWSLightsailCertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CertificateName: string; DomainName: string; SubjectAlternativeNames?: string[]; Tags?: Tag[]; }; Type: 'AWS::Lightsail::Certificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailContainer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ContainerServiceDeployment?: AWSLightsailContainer1; IsDisabled?: boolean; Power: string; PublicDomainNames?: AWSLightsailContainer7[]; Scale: number; ServiceName: string; Tags?: Tag[]; }; Type: 'AWS::Lightsail::Container'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailContainer1 { Containers?: AWSLightsailContainer2[]; PublicEndpoint?: AWSLightsailContainer5; } export interface AWSLightsailContainer2 { Command?: string[]; ContainerName?: string; Environment?: AWSLightsailContainer3[]; Image?: string; Ports?: AWSLightsailContainer4[]; } export interface AWSLightsailContainer3 { Value?: string; Variable?: string; } export interface AWSLightsailContainer4 { Port?: string; Protocol?: string; } export interface AWSLightsailContainer5 { ContainerName?: string; ContainerPort?: number; HealthCheckConfig?: AWSLightsailContainer6; } export interface AWSLightsailContainer6 { HealthyThreshold?: number; IntervalSeconds?: number; Path?: string; SuccessCodes?: string; TimeoutSeconds?: number; UnhealthyThreshold?: number; } export interface AWSLightsailContainer7 { CertificateName?: string; DomainNames?: string[]; } export interface AWSLightsailDatabase { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AvailabilityZone?: string; BackupRetention?: boolean; CaCertificateIdentifier?: string; MasterDatabaseName: string; MasterUserPassword?: string; MasterUsername: string; PreferredBackupWindow?: string; PreferredMaintenanceWindow?: string; PubliclyAccessible?: boolean; RelationalDatabaseBlueprintId: string; RelationalDatabaseBundleId: string; RelationalDatabaseName: string; RelationalDatabaseParameters?: AWSLightsailDatabase1[]; RotateMasterUserPassword?: boolean; Tags?: Tag[]; }; Type: 'AWS::Lightsail::Database'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailDatabase1 { AllowedValues?: string; ApplyMethod?: string; ApplyType?: string; DataType?: string; Description?: string; IsModifiable?: boolean; ParameterName?: string; ParameterValue?: string; } export interface AWSLightsailDisk { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AddOns?: AWSLightsailDisk1[]; AvailabilityZone?: string; DiskName: string; SizeInGb: number; Tags?: Tag[]; }; Type: 'AWS::Lightsail::Disk'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailDisk1 { AddOnType: string; AutoSnapshotAddOnRequest?: AWSLightsailDisk2; Status?: string; } export interface AWSLightsailDisk2 { SnapshotTimeOfDay?: string; } export interface AWSLightsailDistribution { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BundleId: string; CacheBehaviorSettings?: AWSLightsailDistribution1; CacheBehaviors?: AWSLightsailDistribution5[]; CertificateName?: string; DefaultCacheBehavior: AWSLightsailDistribution6; DistributionName: string; IpAddressType?: string; IsEnabled?: boolean; Origin: AWSLightsailDistribution7; Tags?: Tag[]; }; Type: 'AWS::Lightsail::Distribution'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailDistribution1 { AllowedHTTPMethods?: string; CachedHTTPMethods?: string; DefaultTTL?: number; ForwardedCookies?: AWSLightsailDistribution2; ForwardedHeaders?: AWSLightsailDistribution3; ForwardedQueryStrings?: AWSLightsailDistribution4; MaximumTTL?: number; MinimumTTL?: number; } export interface AWSLightsailDistribution2 { CookiesAllowList?: string[]; Option?: string; } export interface AWSLightsailDistribution3 { HeadersAllowList?: string[]; Option?: string; } export interface AWSLightsailDistribution4 { Option?: boolean; QueryStringsAllowList?: string[]; } export interface AWSLightsailDistribution5 { Behavior?: string; Path?: string; } export interface AWSLightsailDistribution6 { Behavior?: string; } export interface AWSLightsailDistribution7 { Name?: string; ProtocolPolicy?: string; RegionName?: string; } export interface AWSLightsailInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AddOns?: AWSLightsailInstance1[]; AvailabilityZone?: string; BlueprintId: string; BundleId: string; Hardware?: AWSLightsailInstance3; InstanceName: string; KeyPairName?: string; Location?: AWSLightsailInstance5; Networking?: AWSLightsailInstance6; State?: AWSLightsailInstance9; Tags?: Tag[]; UserData?: string; }; Type: 'AWS::Lightsail::Instance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailInstance1 { AddOnType: string; AutoSnapshotAddOnRequest?: AWSLightsailInstance2; Status?: string; } export interface AWSLightsailInstance2 { SnapshotTimeOfDay?: string; } export interface AWSLightsailInstance3 { CpuCount?: number; Disks?: AWSLightsailInstance4[]; RamSizeInGb?: number; } export interface AWSLightsailInstance4 { AttachedTo?: string; AttachmentState?: string; DiskName: string; IOPS?: number; IsSystemDisk?: boolean; Path: string; SizeInGb?: string; } export interface AWSLightsailInstance5 { AvailabilityZone?: string; RegionName?: string; } export interface AWSLightsailInstance6 { MonthlyTransfer?: AWSLightsailInstance7; Ports: AWSLightsailInstance8[]; } export interface AWSLightsailInstance7 { GbPerMonthAllocated?: string; } export interface AWSLightsailInstance8 { AccessDirection?: string; AccessFrom?: string; AccessType?: string; CidrListAliases?: string[]; Cidrs?: string[]; CommonName?: string; FromPort?: number; Ipv6Cidrs?: string[]; Protocol?: string; ToPort?: number; } export interface AWSLightsailInstance9 { Code?: number; Name?: string; } export interface AWSLightsailLoadBalancer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AttachedInstances?: string[]; HealthCheckPath?: string; InstancePort: number; IpAddressType?: string; LoadBalancerName: string; SessionStickinessEnabled?: boolean; SessionStickinessLBCookieDurationSeconds?: string; Tags?: Tag[]; TlsPolicyName?: string; }; Type: 'AWS::Lightsail::LoadBalancer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailLoadBalancerTlsCertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CertificateAlternativeNames?: string[]; CertificateDomainName: string; CertificateName: string; HttpsRedirectionEnabled?: boolean; IsAttached?: boolean; LoadBalancerName: string; }; Type: 'AWS::Lightsail::LoadBalancerTlsCertificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLightsailStaticIp { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AttachedTo?: string; StaticIpName: string; }; Type: 'AWS::Lightsail::StaticIp'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLocationGeofenceCollection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CollectionName: string; Description?: string; KmsKeyId?: string; PricingPlan?: string; PricingPlanDataSource?: string; }; Type: 'AWS::Location::GeofenceCollection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLocationMap { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Configuration: AWSLocationMap1; Description?: string; MapName: string; PricingPlan?: string; }; Type: 'AWS::Location::Map'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLocationMap1 { Style: string; } export interface AWSLocationPlaceIndex { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataSource: string; DataSourceConfiguration?: AWSLocationPlaceIndex1; Description?: string; IndexName: string; PricingPlan?: string; }; Type: 'AWS::Location::PlaceIndex'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLocationPlaceIndex1 { IntendedUse?: string; } export interface AWSLocationRouteCalculator { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CalculatorName: string; DataSource: string; Description?: string; PricingPlan?: string; }; Type: 'AWS::Location::RouteCalculator'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLocationTracker { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; KmsKeyId?: string; PositionFiltering?: string; PricingPlan?: string; PricingPlanDataSource?: string; TrackerName: string; }; Type: 'AWS::Location::Tracker'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLocationTrackerConsumer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConsumerArn: string; TrackerName: string; }; Type: 'AWS::Location::TrackerConsumer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLogsDestination { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DestinationName: string; DestinationPolicy?: string; RoleArn: string; TargetArn: string; }; Type: 'AWS::Logs::Destination'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLogsLogGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DataProtectionPolicy?: { [k: string]: unknown; }; KmsKeyId?: string; LogGroupName?: string; RetentionInDays?: number; Tags?: Tag[]; }; Type: 'AWS::Logs::LogGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLogsLogStream { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LogGroupName: string; LogStreamName?: string; }; Type: 'AWS::Logs::LogStream'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLogsMetricFilter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { FilterName?: string; FilterPattern: string; LogGroupName: string; MetricTransformations: AWSLogsMetricFilter1[]; }; Type: 'AWS::Logs::MetricFilter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLogsMetricFilter1 { DefaultValue?: number; Dimensions?: AWSLogsMetricFilter2[]; MetricName: string; MetricNamespace: string; MetricValue: string; Unit?: string; } export interface AWSLogsMetricFilter2 { Key: string; Value: string; } export interface AWSLogsQueryDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LogGroupNames?: string[]; Name: string; QueryString: string; }; Type: 'AWS::Logs::QueryDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLogsResourcePolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PolicyDocument: string; PolicyName: string; }; Type: 'AWS::Logs::ResourcePolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLogsSubscriptionFilter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DestinationArn: string; Distribution?: string; FilterName?: string; FilterPattern: string; LogGroupName: string; RoleArn?: string; }; Type: 'AWS::Logs::SubscriptionFilter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLookoutEquipmentInferenceScheduler { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataDelayOffsetInMinutes?: number; DataInputConfiguration: AWSLookoutEquipmentInferenceScheduler1; DataOutputConfiguration: AWSLookoutEquipmentInferenceScheduler4; DataUploadFrequency: string; InferenceSchedulerName?: string; ModelName: string; RoleArn: string; ServerSideKmsKeyId?: string; Tags?: Tag[]; }; Type: 'AWS::LookoutEquipment::InferenceScheduler'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLookoutEquipmentInferenceScheduler1 { InferenceInputNameConfiguration?: AWSLookoutEquipmentInferenceScheduler2; InputTimeZoneOffset?: string; S3InputConfiguration: AWSLookoutEquipmentInferenceScheduler3; } export interface AWSLookoutEquipmentInferenceScheduler2 { ComponentTimestampDelimiter?: string; TimestampFormat?: string; } export interface AWSLookoutEquipmentInferenceScheduler3 { Bucket: string; Prefix?: string; } export interface AWSLookoutEquipmentInferenceScheduler4 { KmsKeyId?: string; S3OutputConfiguration: AWSLookoutEquipmentInferenceScheduler5; } export interface AWSLookoutEquipmentInferenceScheduler5 { Bucket: string; Prefix?: string; } export interface AWSLookoutMetricsAlert { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Action: AWSLookoutMetricsAlert1; AlertDescription?: string; AlertName?: string; AlertSensitivityThreshold: number; AnomalyDetectorArn: string; }; Type: 'AWS::LookoutMetrics::Alert'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLookoutMetricsAlert1 { LambdaConfiguration?: AWSLookoutMetricsAlert2; SNSConfiguration?: AWSLookoutMetricsAlert3; } export interface AWSLookoutMetricsAlert2 { LambdaArn: string; RoleArn: string; } export interface AWSLookoutMetricsAlert3 { RoleArn: string; SnsTopicArn: string; } export interface AWSLookoutMetricsAnomalyDetector { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AnomalyDetectorConfig: AWSLookoutMetricsAnomalyDetector1; AnomalyDetectorDescription?: string; AnomalyDetectorName?: string; KmsKeyArn?: string; MetricSetList: AWSLookoutMetricsAnomalyDetector2[]; }; Type: 'AWS::LookoutMetrics::AnomalyDetector'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSLookoutMetricsAnomalyDetector1 { AnomalyDetectorFrequency: string; } export interface AWSLookoutMetricsAnomalyDetector2 { DimensionList?: string[]; MetricList: AWSLookoutMetricsAnomalyDetector3[]; MetricSetDescription?: string; MetricSetFrequency?: string; MetricSetName: string; MetricSource: AWSLookoutMetricsAnomalyDetector4; Offset?: number; TimestampColumn?: AWSLookoutMetricsAnomalyDetector14; Timezone?: string; } export interface AWSLookoutMetricsAnomalyDetector3 { AggregationFunction: string; MetricName: string; Namespace?: string; } export interface AWSLookoutMetricsAnomalyDetector4 { AppFlowConfig?: AWSLookoutMetricsAnomalyDetector5; CloudwatchConfig?: AWSLookoutMetricsAnomalyDetector6; RDSSourceConfig?: AWSLookoutMetricsAnomalyDetector7; RedshiftSourceConfig?: AWSLookoutMetricsAnomalyDetector9; S3SourceConfig?: AWSLookoutMetricsAnomalyDetector10; } export interface AWSLookoutMetricsAnomalyDetector5 { FlowName: string; RoleArn: string; } export interface AWSLookoutMetricsAnomalyDetector6 { RoleArn: string; } export interface AWSLookoutMetricsAnomalyDetector7 { DBInstanceIdentifier: string; DatabaseHost: string; DatabaseName: string; DatabasePort: number; RoleArn: string; SecretManagerArn: string; TableName: string; VpcConfiguration: AWSLookoutMetricsAnomalyDetector8; } export interface AWSLookoutMetricsAnomalyDetector8 { SecurityGroupIdList: string[]; SubnetIdList: string[]; } export interface AWSLookoutMetricsAnomalyDetector9 { ClusterIdentifier: string; DatabaseHost: string; DatabaseName: string; DatabasePort: number; RoleArn: string; SecretManagerArn: string; TableName: string; VpcConfiguration: AWSLookoutMetricsAnomalyDetector8; } export interface AWSLookoutMetricsAnomalyDetector10 { FileFormatDescriptor: AWSLookoutMetricsAnomalyDetector11; HistoricalDataPathList?: string[]; RoleArn: string; TemplatedPathList?: string[]; } export interface AWSLookoutMetricsAnomalyDetector11 { CsvFormatDescriptor?: AWSLookoutMetricsAnomalyDetector12; JsonFormatDescriptor?: AWSLookoutMetricsAnomalyDetector13; } export interface AWSLookoutMetricsAnomalyDetector12 { Charset?: string; ContainsHeader?: boolean; Delimiter?: string; FileCompression?: string; HeaderList?: string[]; QuoteSymbol?: string; } export interface AWSLookoutMetricsAnomalyDetector13 { Charset?: string; FileCompression?: string; } export interface AWSLookoutMetricsAnomalyDetector14 { ColumnFormat?: string; ColumnName?: string; } export interface AWSLookoutVisionProject { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ProjectName: string; }; Type: 'AWS::LookoutVision::Project'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSM2Application { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Definition: AWSM2Application1; Description?: string; EngineType: string; KmsKeyId?: string; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::M2::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSM2Application1 { Content?: string; S3Location?: string; } export interface AWSM2Environment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; EngineType: string; EngineVersion?: string; HighAvailabilityConfig?: AWSM2Environment1; InstanceType: string; KmsKeyId?: string; Name: string; PreferredMaintenanceWindow?: string; PubliclyAccessible?: boolean; SecurityGroupIds?: string[]; StorageConfigurations?: AWSM2Environment2[]; SubnetIds?: string[]; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::M2::Environment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSM2Environment1 { DesiredCapacity: number; } export interface AWSM2Environment2 { Efs?: AWSM2Environment3; Fsx?: AWSM2Environment4; } export interface AWSM2Environment3 { FileSystemId: string; MountPoint: string; } export interface AWSM2Environment4 { FileSystemId: string; MountPoint: string; } export interface AWSMSKBatchScramSecret { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClusterArn: string; SecretArnList?: string[]; }; Type: 'AWS::MSK::BatchScramSecret'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMSKCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BrokerNodeGroupInfo: AWSMSKCluster1; ClientAuthentication?: AWSMSKCluster13; ClusterName: string; ConfigurationInfo?: AWSMSKCluster19; CurrentVersion?: string; EncryptionInfo?: AWSMSKCluster20; EnhancedMonitoring?: string; KafkaVersion: string; LoggingInfo?: AWSMSKCluster23; NumberOfBrokerNodes: number; OpenMonitoring?: AWSMSKCluster28; StorageMode?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::MSK::Cluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMSKCluster1 { BrokerAZDistribution?: string; ClientSubnets: string[]; ConnectivityInfo?: AWSMSKCluster2; InstanceType: string; SecurityGroups?: string[]; StorageInfo?: AWSMSKCluster10; } export interface AWSMSKCluster2 { PublicAccess?: AWSMSKCluster3; VpcConnectivity?: AWSMSKCluster4; } export interface AWSMSKCluster3 { Type?: string; } export interface AWSMSKCluster4 { ClientAuthentication?: AWSMSKCluster5; } export interface AWSMSKCluster5 { Sasl?: AWSMSKCluster6; Tls?: AWSMSKCluster9; } export interface AWSMSKCluster6 { Iam?: AWSMSKCluster7; Scram?: AWSMSKCluster8; } export interface AWSMSKCluster7 { Enabled: boolean; } export interface AWSMSKCluster8 { Enabled: boolean; } export interface AWSMSKCluster9 { Enabled: boolean; } export interface AWSMSKCluster10 { EBSStorageInfo?: AWSMSKCluster11; } export interface AWSMSKCluster11 { ProvisionedThroughput?: AWSMSKCluster12; VolumeSize?: number; } export interface AWSMSKCluster12 { Enabled?: boolean; VolumeThroughput?: number; } export interface AWSMSKCluster13 { Sasl?: AWSMSKCluster14; Tls?: AWSMSKCluster17; Unauthenticated?: AWSMSKCluster18; } export interface AWSMSKCluster14 { Iam?: AWSMSKCluster15; Scram?: AWSMSKCluster16; } export interface AWSMSKCluster15 { Enabled: boolean; } export interface AWSMSKCluster16 { Enabled: boolean; } export interface AWSMSKCluster17 { CertificateAuthorityArnList?: string[]; Enabled?: boolean; } export interface AWSMSKCluster18 { Enabled: boolean; } export interface AWSMSKCluster19 { Arn: string; Revision: number; } export interface AWSMSKCluster20 { EncryptionAtRest?: AWSMSKCluster21; EncryptionInTransit?: AWSMSKCluster22; } export interface AWSMSKCluster21 { DataVolumeKMSKeyId: string; } export interface AWSMSKCluster22 { ClientBroker?: string; InCluster?: boolean; } export interface AWSMSKCluster23 { BrokerLogs: AWSMSKCluster24; } export interface AWSMSKCluster24 { CloudWatchLogs?: AWSMSKCluster25; Firehose?: AWSMSKCluster26; S3?: AWSMSKCluster27; } export interface AWSMSKCluster25 { Enabled: boolean; LogGroup?: string; } export interface AWSMSKCluster26 { DeliveryStream?: string; Enabled: boolean; } export interface AWSMSKCluster27 { Bucket?: string; Enabled: boolean; Prefix?: string; } export interface AWSMSKCluster28 { Prometheus: AWSMSKCluster29; } export interface AWSMSKCluster29 { JmxExporter?: AWSMSKCluster30; NodeExporter?: AWSMSKCluster31; } export interface AWSMSKCluster30 { EnabledInBroker: boolean; } export interface AWSMSKCluster31 { EnabledInBroker: boolean; } export interface AWSMSKConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; KafkaVersionsList?: string[]; Name: string; ServerProperties: string; }; Type: 'AWS::MSK::Configuration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMSKServerlessCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClientAuthentication: AWSMSKServerlessCluster1; ClusterName: string; Tags?: { [k: string]: unknown; }; VpcConfigs: AWSMSKServerlessCluster4[]; }; Type: 'AWS::MSK::ServerlessCluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMSKServerlessCluster1 { Sasl: AWSMSKServerlessCluster2; } export interface AWSMSKServerlessCluster2 { Iam: AWSMSKServerlessCluster3; } export interface AWSMSKServerlessCluster3 { Enabled: boolean; } export interface AWSMSKServerlessCluster4 { SecurityGroups?: string[]; SubnetIds: string[]; } export interface AWSMWAAEnvironment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AirflowConfigurationOptions?: { [k: string]: unknown; }; AirflowVersion?: string; DagS3Path?: string; EnvironmentClass?: string; ExecutionRoleArn?: string; KmsKey?: string; LoggingConfiguration?: AWSMWAAEnvironment1; MaxWorkers?: number; MinWorkers?: number; Name: string; NetworkConfiguration?: AWSMWAAEnvironment3; PluginsS3ObjectVersion?: string; PluginsS3Path?: string; RequirementsS3ObjectVersion?: string; RequirementsS3Path?: string; Schedulers?: number; SourceBucketArn?: string; Tags?: { [k: string]: unknown; }; WebserverAccessMode?: string; WeeklyMaintenanceWindowStart?: string; }; Type: 'AWS::MWAA::Environment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMWAAEnvironment1 { DagProcessingLogs?: AWSMWAAEnvironment2; SchedulerLogs?: AWSMWAAEnvironment2; TaskLogs?: AWSMWAAEnvironment2; WebserverLogs?: AWSMWAAEnvironment2; WorkerLogs?: AWSMWAAEnvironment2; } export interface AWSMWAAEnvironment2 { CloudWatchLogGroupArn?: string; Enabled?: boolean; LogLevel?: string; } export interface AWSMWAAEnvironment3 { SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSMacieAllowList { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Criteria: AWSMacieAllowList1; Description?: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::Macie::AllowList'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMacieAllowList1 { Regex?: string; S3WordsList?: AWSMacieAllowList2; } export interface AWSMacieAllowList2 { BucketName: string; ObjectKey: string; } export interface AWSMacieCustomDataIdentifier { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; IgnoreWords?: string[]; Keywords?: string[]; MaximumMatchDistance?: number; Name: string; Regex: string; }; Type: 'AWS::Macie::CustomDataIdentifier'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMacieFindingsFilter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Action?: string; Description?: string; FindingCriteria: AWSMacieFindingsFilter1; Name: string; Position?: number; }; Type: 'AWS::Macie::FindingsFilter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMacieFindingsFilter1 { Criterion?: { [k: string]: AWSMacieFindingsFilter2; }; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSMacieFindingsFilter2 { eq?: string[]; gt?: number; gte?: number; lt?: number; lte?: number; neq?: string[]; } export interface AWSMacieSession { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { FindingPublishingFrequency?: string; Status?: string; }; Type: 'AWS::Macie::Session'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSManagedBlockchainMember { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InvitationId?: string; MemberConfiguration: AWSManagedBlockchainMember1; NetworkConfiguration?: AWSManagedBlockchainMember4; NetworkId?: string; }; Type: 'AWS::ManagedBlockchain::Member'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSManagedBlockchainMember1 { Description?: string; MemberFrameworkConfiguration?: AWSManagedBlockchainMember2; Name: string; } export interface AWSManagedBlockchainMember2 { MemberFabricConfiguration?: AWSManagedBlockchainMember3; } export interface AWSManagedBlockchainMember3 { AdminPassword: string; AdminUsername: string; } export interface AWSManagedBlockchainMember4 { Description?: string; Framework: string; FrameworkVersion: string; Name: string; NetworkFrameworkConfiguration?: AWSManagedBlockchainMember5; VotingPolicy: AWSManagedBlockchainMember7; } export interface AWSManagedBlockchainMember5 { NetworkFabricConfiguration?: AWSManagedBlockchainMember6; } export interface AWSManagedBlockchainMember6 { Edition: string; } export interface AWSManagedBlockchainMember7 { ApprovalThresholdPolicy?: AWSManagedBlockchainMember8; } export interface AWSManagedBlockchainMember8 { ProposalDurationInHours?: number; ThresholdComparator?: string; ThresholdPercentage?: number; } export interface AWSManagedBlockchainNode { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MemberId?: string; NetworkId: string; NodeConfiguration: AWSManagedBlockchainNode1; }; Type: 'AWS::ManagedBlockchain::Node'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSManagedBlockchainNode1 { AvailabilityZone: string; InstanceType: string; } export interface AWSMediaConnectFlow { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AvailabilityZone?: string; Name: string; Source: AWSMediaConnectFlow1; SourceFailoverConfig?: AWSMediaConnectFlow3; }; Type: 'AWS::MediaConnect::Flow'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaConnectFlow1 { Decryption?: AWSMediaConnectFlow2; Description?: string; EntitlementArn?: string; IngestIp?: string; IngestPort?: number; MaxBitrate?: number; MaxLatency?: number; MinLatency?: number; Name?: string; Protocol?: string; SenderControlPort?: number; SenderIpAddress?: string; SourceArn?: string; SourceIngestPort?: string; SourceListenerAddress?: string; SourceListenerPort?: number; StreamId?: string; VpcInterfaceName?: string; WhitelistCidr?: string; } export interface AWSMediaConnectFlow2 { Algorithm?: string; ConstantInitializationVector?: string; DeviceId?: string; KeyType?: string; Region?: string; ResourceId?: string; RoleArn: string; SecretArn?: string; Url?: string; } export interface AWSMediaConnectFlow3 { FailoverMode?: string; RecoveryWindow?: number; SourcePriority?: AWSMediaConnectFlow4; State?: string; } export interface AWSMediaConnectFlow4 { PrimarySource: string; } export interface AWSMediaConnectFlowEntitlement { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataTransferSubscriberFeePercent?: number; Description: string; Encryption?: AWSMediaConnectFlowEntitlement1; EntitlementStatus?: string; FlowArn: string; Name: string; Subscribers: string[]; }; Type: 'AWS::MediaConnect::FlowEntitlement'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaConnectFlowEntitlement1 { Algorithm: string; ConstantInitializationVector?: string; DeviceId?: string; KeyType?: string; Region?: string; ResourceId?: string; RoleArn: string; SecretArn?: string; Url?: string; } export interface AWSMediaConnectFlowOutput { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CidrAllowList?: string[]; Description?: string; Destination?: string; Encryption?: AWSMediaConnectFlowOutput1; FlowArn: string; MaxLatency?: number; MinLatency?: number; Name?: string; Port?: number; Protocol: string; RemoteId?: string; SmoothingLatency?: number; StreamId?: string; VpcInterfaceAttachment?: AWSMediaConnectFlowOutput2; }; Type: 'AWS::MediaConnect::FlowOutput'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaConnectFlowOutput1 { Algorithm?: string; KeyType?: string; RoleArn: string; SecretArn: string; } export interface AWSMediaConnectFlowOutput2 { VpcInterfaceName?: string; } export interface AWSMediaConnectFlowSource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Decryption?: AWSMediaConnectFlowSource1; Description: string; EntitlementArn?: string; FlowArn?: string; IngestPort?: number; MaxBitrate?: number; MaxLatency?: number; Name: string; Protocol?: string; StreamId?: string; VpcInterfaceName?: string; WhitelistCidr?: string; }; Type: 'AWS::MediaConnect::FlowSource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaConnectFlowSource1 { Algorithm: string; ConstantInitializationVector?: string; DeviceId?: string; KeyType?: string; Region?: string; ResourceId?: string; RoleArn: string; SecretArn?: string; Url?: string; } export interface AWSMediaConnectFlowVpcInterface { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { FlowArn: string; Name: string; RoleArn: string; SecurityGroupIds: string[]; SubnetId: string; }; Type: 'AWS::MediaConnect::FlowVpcInterface'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaConvertJobTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccelerationSettings?: AWSMediaConvertJobTemplate1; Category?: string; Description?: string; HopDestinations?: AWSMediaConvertJobTemplate2[]; Name?: string; Priority?: number; Queue?: string; SettingsJson: { [k: string]: unknown; }; StatusUpdateInterval?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::MediaConvert::JobTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaConvertJobTemplate1 { Mode: string; } export interface AWSMediaConvertJobTemplate2 { Priority?: number; Queue?: string; WaitMinutes?: number; } export interface AWSMediaConvertPreset { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Category?: string; Description?: string; Name?: string; SettingsJson: { [k: string]: unknown; }; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::MediaConvert::Preset'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaConvertQueue { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; Name?: string; PricingPlan?: string; Status?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::MediaConvert::Queue'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaLiveChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CdiInputSpecification?: AWSMediaLiveChannel1; ChannelClass?: string; Destinations?: AWSMediaLiveChannel2[]; EncoderSettings?: AWSMediaLiveChannel6; InputAttachments?: AWSMediaLiveChannel117[]; InputSpecification?: AWSMediaLiveChannel149; LogLevel?: string; Name?: string; RoleArn?: string; Tags?: { [k: string]: unknown; }; Vpc?: AWSMediaLiveChannel150; }; Type: 'AWS::MediaLive::Channel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaLiveChannel1 { Resolution?: string; } export interface AWSMediaLiveChannel2 { Id?: string; MediaPackageSettings?: AWSMediaLiveChannel3[]; MultiplexSettings?: AWSMediaLiveChannel4; Settings?: AWSMediaLiveChannel5[]; } export interface AWSMediaLiveChannel3 { ChannelId?: string; } export interface AWSMediaLiveChannel4 { MultiplexId?: string; ProgramName?: string; } export interface AWSMediaLiveChannel5 { PasswordParam?: string; StreamName?: string; Url?: string; Username?: string; } export interface AWSMediaLiveChannel6 { AudioDescriptions?: AWSMediaLiveChannel7[]; AvailBlanking?: AWSMediaLiveChannel23; AvailConfiguration?: AWSMediaLiveChannel25; BlackoutSlate?: AWSMediaLiveChannel29; CaptionDescriptions?: AWSMediaLiveChannel30[]; FeatureActivations?: AWSMediaLiveChannel45; GlobalConfiguration?: AWSMediaLiveChannel46; MotionGraphicsConfiguration?: AWSMediaLiveChannel48; NielsenConfiguration?: AWSMediaLiveChannel51; OutputGroups?: AWSMediaLiveChannel52[]; TimecodeConfig?: AWSMediaLiveChannel100; VideoDescriptions?: AWSMediaLiveChannel101[]; } export interface AWSMediaLiveChannel7 { AudioNormalizationSettings?: AWSMediaLiveChannel8; AudioSelectorName?: string; AudioType?: string; AudioTypeControl?: string; AudioWatermarkingSettings?: AWSMediaLiveChannel9; CodecSettings?: AWSMediaLiveChannel13; LanguageCode?: string; LanguageCodeControl?: string; Name?: string; RemixSettings?: AWSMediaLiveChannel20; StreamName?: string; } export interface AWSMediaLiveChannel8 { Algorithm?: string; AlgorithmControl?: string; TargetLkfs?: number; } export interface AWSMediaLiveChannel9 { NielsenWatermarksSettings?: AWSMediaLiveChannel10; } export interface AWSMediaLiveChannel10 { NielsenCbetSettings?: AWSMediaLiveChannel11; NielsenDistributionType?: string; NielsenNaesIiNwSettings?: AWSMediaLiveChannel12; } export interface AWSMediaLiveChannel11 { CbetCheckDigitString?: string; CbetStepaside?: string; Csid?: string; } export interface AWSMediaLiveChannel12 { CheckDigitString?: string; Sid?: number; } export interface AWSMediaLiveChannel13 { AacSettings?: AWSMediaLiveChannel14; Ac3Settings?: AWSMediaLiveChannel15; Eac3Settings?: AWSMediaLiveChannel16; Mp2Settings?: AWSMediaLiveChannel17; PassThroughSettings?: AWSMediaLiveChannel18; WavSettings?: AWSMediaLiveChannel19; } export interface AWSMediaLiveChannel14 { Bitrate?: number; CodingMode?: string; InputType?: string; Profile?: string; RateControlMode?: string; RawFormat?: string; SampleRate?: number; Spec?: string; VbrQuality?: string; } export interface AWSMediaLiveChannel15 { Bitrate?: number; BitstreamMode?: string; CodingMode?: string; Dialnorm?: number; DrcProfile?: string; LfeFilter?: string; MetadataControl?: string; } export interface AWSMediaLiveChannel16 { AttenuationControl?: string; Bitrate?: number; BitstreamMode?: string; CodingMode?: string; DcFilter?: string; Dialnorm?: number; DrcLine?: string; DrcRf?: string; LfeControl?: string; LfeFilter?: string; LoRoCenterMixLevel?: number; LoRoSurroundMixLevel?: number; LtRtCenterMixLevel?: number; LtRtSurroundMixLevel?: number; MetadataControl?: string; PassthroughControl?: string; PhaseControl?: string; StereoDownmix?: string; SurroundExMode?: string; SurroundMode?: string; } export interface AWSMediaLiveChannel17 { Bitrate?: number; CodingMode?: string; SampleRate?: number; } export interface AWSMediaLiveChannel18 {} export interface AWSMediaLiveChannel19 { BitDepth?: number; CodingMode?: string; SampleRate?: number; } export interface AWSMediaLiveChannel20 { ChannelMappings?: AWSMediaLiveChannel21[]; ChannelsIn?: number; ChannelsOut?: number; } export interface AWSMediaLiveChannel21 { InputChannelLevels?: AWSMediaLiveChannel22[]; OutputChannel?: number; } export interface AWSMediaLiveChannel22 { Gain?: number; InputChannel?: number; } export interface AWSMediaLiveChannel23 { AvailBlankingImage?: AWSMediaLiveChannel24; State?: string; } export interface AWSMediaLiveChannel24 { PasswordParam?: string; Uri?: string; Username?: string; } export interface AWSMediaLiveChannel25 { AvailSettings?: AWSMediaLiveChannel26; } export interface AWSMediaLiveChannel26 { Scte35SpliceInsert?: AWSMediaLiveChannel27; Scte35TimeSignalApos?: AWSMediaLiveChannel28; } export interface AWSMediaLiveChannel27 { AdAvailOffset?: number; NoRegionalBlackoutFlag?: string; WebDeliveryAllowedFlag?: string; } export interface AWSMediaLiveChannel28 { AdAvailOffset?: number; NoRegionalBlackoutFlag?: string; WebDeliveryAllowedFlag?: string; } export interface AWSMediaLiveChannel29 { BlackoutSlateImage?: AWSMediaLiveChannel24; NetworkEndBlackout?: string; NetworkEndBlackoutImage?: AWSMediaLiveChannel24; NetworkId?: string; State?: string; } export interface AWSMediaLiveChannel30 { CaptionSelectorName?: string; DestinationSettings?: AWSMediaLiveChannel31; LanguageCode?: string; LanguageDescription?: string; Name?: string; } export interface AWSMediaLiveChannel31 { AribDestinationSettings?: AWSMediaLiveChannel32; BurnInDestinationSettings?: AWSMediaLiveChannel33; DvbSubDestinationSettings?: AWSMediaLiveChannel34; EbuTtDDestinationSettings?: AWSMediaLiveChannel35; EmbeddedDestinationSettings?: AWSMediaLiveChannel36; EmbeddedPlusScte20DestinationSettings?: AWSMediaLiveChannel37; RtmpCaptionInfoDestinationSettings?: AWSMediaLiveChannel38; Scte20PlusEmbeddedDestinationSettings?: AWSMediaLiveChannel39; Scte27DestinationSettings?: AWSMediaLiveChannel40; SmpteTtDestinationSettings?: AWSMediaLiveChannel41; TeletextDestinationSettings?: AWSMediaLiveChannel42; TtmlDestinationSettings?: AWSMediaLiveChannel43; WebvttDestinationSettings?: AWSMediaLiveChannel44; } export interface AWSMediaLiveChannel32 {} export interface AWSMediaLiveChannel33 { Alignment?: string; BackgroundColor?: string; BackgroundOpacity?: number; Font?: AWSMediaLiveChannel24; FontColor?: string; FontOpacity?: number; FontResolution?: number; FontSize?: string; OutlineColor?: string; OutlineSize?: number; ShadowColor?: string; ShadowOpacity?: number; ShadowXOffset?: number; ShadowYOffset?: number; TeletextGridControl?: string; XPosition?: number; YPosition?: number; } export interface AWSMediaLiveChannel34 { Alignment?: string; BackgroundColor?: string; BackgroundOpacity?: number; Font?: AWSMediaLiveChannel24; FontColor?: string; FontOpacity?: number; FontResolution?: number; FontSize?: string; OutlineColor?: string; OutlineSize?: number; ShadowColor?: string; ShadowOpacity?: number; ShadowXOffset?: number; ShadowYOffset?: number; TeletextGridControl?: string; XPosition?: number; YPosition?: number; } export interface AWSMediaLiveChannel35 { CopyrightHolder?: string; FillLineGap?: string; FontFamily?: string; StyleControl?: string; } export interface AWSMediaLiveChannel36 {} export interface AWSMediaLiveChannel37 {} export interface AWSMediaLiveChannel38 {} export interface AWSMediaLiveChannel39 {} export interface AWSMediaLiveChannel40 {} export interface AWSMediaLiveChannel41 {} export interface AWSMediaLiveChannel42 {} export interface AWSMediaLiveChannel43 { StyleControl?: string; } export interface AWSMediaLiveChannel44 { StyleControl?: string; } export interface AWSMediaLiveChannel45 { InputPrepareScheduleActions?: string; } export interface AWSMediaLiveChannel46 { InitialAudioGain?: number; InputEndAction?: string; InputLossBehavior?: AWSMediaLiveChannel47; OutputLockingMode?: string; OutputTimingSource?: string; SupportLowFramerateInputs?: string; } export interface AWSMediaLiveChannel47 { BlackFrameMsec?: number; InputLossImageColor?: string; InputLossImageSlate?: AWSMediaLiveChannel24; InputLossImageType?: string; RepeatFrameMsec?: number; } export interface AWSMediaLiveChannel48 { MotionGraphicsInsertion?: string; MotionGraphicsSettings?: AWSMediaLiveChannel49; } export interface AWSMediaLiveChannel49 { HtmlMotionGraphicsSettings?: AWSMediaLiveChannel50; } export interface AWSMediaLiveChannel50 {} export interface AWSMediaLiveChannel51 { DistributorId?: string; NielsenPcmToId3Tagging?: string; } export interface AWSMediaLiveChannel52 { Name?: string; OutputGroupSettings?: AWSMediaLiveChannel53; Outputs?: AWSMediaLiveChannel76[]; } export interface AWSMediaLiveChannel53 { ArchiveGroupSettings?: AWSMediaLiveChannel54; FrameCaptureGroupSettings?: AWSMediaLiveChannel58; HlsGroupSettings?: AWSMediaLiveChannel61; MediaPackageGroupSettings?: AWSMediaLiveChannel71; MsSmoothGroupSettings?: AWSMediaLiveChannel72; MultiplexGroupSettings?: AWSMediaLiveChannel73; RtmpGroupSettings?: AWSMediaLiveChannel74; UdpGroupSettings?: AWSMediaLiveChannel75; } export interface AWSMediaLiveChannel54 { ArchiveCdnSettings?: AWSMediaLiveChannel55; Destination?: AWSMediaLiveChannel57; RolloverInterval?: number; } export interface AWSMediaLiveChannel55 { ArchiveS3Settings?: AWSMediaLiveChannel56; } export interface AWSMediaLiveChannel56 { CannedAcl?: string; } export interface AWSMediaLiveChannel57 { DestinationRefId?: string; } export interface AWSMediaLiveChannel58 { Destination?: AWSMediaLiveChannel57; FrameCaptureCdnSettings?: AWSMediaLiveChannel59; } export interface AWSMediaLiveChannel59 { FrameCaptureS3Settings?: AWSMediaLiveChannel60; } export interface AWSMediaLiveChannel60 { CannedAcl?: string; } export interface AWSMediaLiveChannel61 { AdMarkers?: string[]; BaseUrlContent?: string; BaseUrlContent1?: string; BaseUrlManifest?: string; BaseUrlManifest1?: string; CaptionLanguageMappings?: AWSMediaLiveChannel62[]; CaptionLanguageSetting?: string; ClientCache?: string; CodecSpecification?: string; ConstantIv?: string; Destination?: AWSMediaLiveChannel57; DirectoryStructure?: string; DiscontinuityTags?: string; EncryptionType?: string; HlsCdnSettings?: AWSMediaLiveChannel63; HlsId3SegmentTagging?: string; IFrameOnlyPlaylists?: string; IncompleteSegmentBehavior?: string; IndexNSegments?: number; InputLossAction?: string; IvInManifest?: string; IvSource?: string; KeepSegments?: number; KeyFormat?: string; KeyFormatVersions?: string; KeyProviderSettings?: AWSMediaLiveChannel69; ManifestCompression?: string; ManifestDurationFormat?: string; MinSegmentLength?: number; Mode?: string; OutputSelection?: string; ProgramDateTime?: string; ProgramDateTimeClock?: string; ProgramDateTimePeriod?: number; RedundantManifest?: string; SegmentLength?: number; SegmentationMode?: string; SegmentsPerSubdirectory?: number; StreamInfResolution?: string; TimedMetadataId3Frame?: string; TimedMetadataId3Period?: number; TimestampDeltaMilliseconds?: number; TsFileMode?: string; } export interface AWSMediaLiveChannel62 { CaptionChannel?: number; LanguageCode?: string; LanguageDescription?: string; } export interface AWSMediaLiveChannel63 { HlsAkamaiSettings?: AWSMediaLiveChannel64; HlsBasicPutSettings?: AWSMediaLiveChannel65; HlsMediaStoreSettings?: AWSMediaLiveChannel66; HlsS3Settings?: AWSMediaLiveChannel67; HlsWebdavSettings?: AWSMediaLiveChannel68; } export interface AWSMediaLiveChannel64 { ConnectionRetryInterval?: number; FilecacheDuration?: number; HttpTransferMode?: string; NumRetries?: number; RestartDelay?: number; Salt?: string; Token?: string; } export interface AWSMediaLiveChannel65 { ConnectionRetryInterval?: number; FilecacheDuration?: number; NumRetries?: number; RestartDelay?: number; } export interface AWSMediaLiveChannel66 { ConnectionRetryInterval?: number; FilecacheDuration?: number; MediaStoreStorageClass?: string; NumRetries?: number; RestartDelay?: number; } export interface AWSMediaLiveChannel67 { CannedAcl?: string; } export interface AWSMediaLiveChannel68 { ConnectionRetryInterval?: number; FilecacheDuration?: number; HttpTransferMode?: string; NumRetries?: number; RestartDelay?: number; } export interface AWSMediaLiveChannel69 { StaticKeySettings?: AWSMediaLiveChannel70; } export interface AWSMediaLiveChannel70 { KeyProviderServer?: AWSMediaLiveChannel24; StaticKeyValue?: string; } export interface AWSMediaLiveChannel71 { Destination?: AWSMediaLiveChannel57; } export interface AWSMediaLiveChannel72 { AcquisitionPointId?: string; AudioOnlyTimecodeControl?: string; CertificateMode?: string; ConnectionRetryInterval?: number; Destination?: AWSMediaLiveChannel57; EventId?: string; EventIdMode?: string; EventStopBehavior?: string; FilecacheDuration?: number; FragmentLength?: number; InputLossAction?: string; NumRetries?: number; RestartDelay?: number; SegmentationMode?: string; SendDelayMs?: number; SparseTrackType?: string; StreamManifestBehavior?: string; TimestampOffset?: string; TimestampOffsetMode?: string; } export interface AWSMediaLiveChannel73 {} export interface AWSMediaLiveChannel74 { AdMarkers?: string[]; AuthenticationScheme?: string; CacheFullBehavior?: string; CacheLength?: number; CaptionData?: string; InputLossAction?: string; RestartDelay?: number; } export interface AWSMediaLiveChannel75 { InputLossAction?: string; TimedMetadataId3Frame?: string; TimedMetadataId3Period?: number; } export interface AWSMediaLiveChannel76 { AudioDescriptionNames?: string[]; CaptionDescriptionNames?: string[]; OutputName?: string; OutputSettings?: AWSMediaLiveChannel77; VideoDescriptionName?: string; } export interface AWSMediaLiveChannel77 { ArchiveOutputSettings?: AWSMediaLiveChannel78; FrameCaptureOutputSettings?: AWSMediaLiveChannel85; HlsOutputSettings?: AWSMediaLiveChannel86; MediaPackageOutputSettings?: AWSMediaLiveChannel93; MsSmoothOutputSettings?: AWSMediaLiveChannel94; MultiplexOutputSettings?: AWSMediaLiveChannel95; RtmpOutputSettings?: AWSMediaLiveChannel96; UdpOutputSettings?: AWSMediaLiveChannel97; } export interface AWSMediaLiveChannel78 { ContainerSettings?: AWSMediaLiveChannel79; Extension?: string; NameModifier?: string; } export interface AWSMediaLiveChannel79 { M2tsSettings?: AWSMediaLiveChannel80; RawSettings?: AWSMediaLiveChannel84; } export interface AWSMediaLiveChannel80 { AbsentInputAudioBehavior?: string; Arib?: string; AribCaptionsPid?: string; AribCaptionsPidControl?: string; AudioBufferModel?: string; AudioFramesPerPes?: number; AudioPids?: string; AudioStreamType?: string; Bitrate?: number; BufferModel?: string; CcDescriptor?: string; DvbNitSettings?: AWSMediaLiveChannel81; DvbSdtSettings?: AWSMediaLiveChannel82; DvbSubPids?: string; DvbTdtSettings?: AWSMediaLiveChannel83; DvbTeletextPid?: string; Ebif?: string; EbpAudioInterval?: string; EbpLookaheadMs?: number; EbpPlacement?: string; EcmPid?: string; EsRateInPes?: string; EtvPlatformPid?: string; EtvSignalPid?: string; FragmentTime?: number; Klv?: string; KlvDataPids?: string; NielsenId3Behavior?: string; NullPacketBitrate?: number; PatInterval?: number; PcrControl?: string; PcrPeriod?: number; PcrPid?: string; PmtInterval?: number; PmtPid?: string; ProgramNum?: number; RateMode?: string; Scte27Pids?: string; Scte35Control?: string; Scte35Pid?: string; SegmentationMarkers?: string; SegmentationStyle?: string; SegmentationTime?: number; TimedMetadataBehavior?: string; TimedMetadataPid?: string; TransportStreamId?: number; VideoPid?: string; } export interface AWSMediaLiveChannel81 { NetworkId?: number; NetworkName?: string; RepInterval?: number; } export interface AWSMediaLiveChannel82 { OutputSdt?: string; RepInterval?: number; ServiceName?: string; ServiceProviderName?: string; } export interface AWSMediaLiveChannel83 { RepInterval?: number; } export interface AWSMediaLiveChannel84 {} export interface AWSMediaLiveChannel85 { NameModifier?: string; } export interface AWSMediaLiveChannel86 { H265PackagingType?: string; HlsSettings?: AWSMediaLiveChannel87; NameModifier?: string; SegmentModifier?: string; } export interface AWSMediaLiveChannel87 { AudioOnlyHlsSettings?: AWSMediaLiveChannel88; Fmp4HlsSettings?: AWSMediaLiveChannel89; FrameCaptureHlsSettings?: AWSMediaLiveChannel90; StandardHlsSettings?: AWSMediaLiveChannel91; } export interface AWSMediaLiveChannel88 { AudioGroupId?: string; AudioOnlyImage?: AWSMediaLiveChannel24; AudioTrackType?: string; SegmentType?: string; } export interface AWSMediaLiveChannel89 { AudioRenditionSets?: string; NielsenId3Behavior?: string; TimedMetadataBehavior?: string; } export interface AWSMediaLiveChannel90 {} export interface AWSMediaLiveChannel91 { AudioRenditionSets?: string; M3u8Settings?: AWSMediaLiveChannel92; } export interface AWSMediaLiveChannel92 { AudioFramesPerPes?: number; AudioPids?: string; EcmPid?: string; NielsenId3Behavior?: string; PatInterval?: number; PcrControl?: string; PcrPeriod?: number; PcrPid?: string; PmtInterval?: number; PmtPid?: string; ProgramNum?: number; Scte35Behavior?: string; Scte35Pid?: string; TimedMetadataBehavior?: string; TimedMetadataPid?: string; TransportStreamId?: number; VideoPid?: string; } export interface AWSMediaLiveChannel93 {} export interface AWSMediaLiveChannel94 { H265PackagingType?: string; NameModifier?: string; } export interface AWSMediaLiveChannel95 { Destination?: AWSMediaLiveChannel57; } export interface AWSMediaLiveChannel96 { CertificateMode?: string; ConnectionRetryInterval?: number; Destination?: AWSMediaLiveChannel57; NumRetries?: number; } export interface AWSMediaLiveChannel97 { BufferMsec?: number; ContainerSettings?: AWSMediaLiveChannel98; Destination?: AWSMediaLiveChannel57; FecOutputSettings?: AWSMediaLiveChannel99; } export interface AWSMediaLiveChannel98 { M2tsSettings?: AWSMediaLiveChannel80; } export interface AWSMediaLiveChannel99 { ColumnDepth?: number; IncludeFec?: string; RowLength?: number; } export interface AWSMediaLiveChannel100 { Source?: string; SyncThreshold?: number; } export interface AWSMediaLiveChannel101 { CodecSettings?: AWSMediaLiveChannel102; Height?: number; Name?: string; RespondToAfd?: string; ScalingBehavior?: string; Sharpness?: number; Width?: number; } export interface AWSMediaLiveChannel102 { FrameCaptureSettings?: AWSMediaLiveChannel103; H264Settings?: AWSMediaLiveChannel104; H265Settings?: AWSMediaLiveChannel111; Mpeg2Settings?: AWSMediaLiveChannel115; } export interface AWSMediaLiveChannel103 { CaptureInterval?: number; CaptureIntervalUnits?: string; } export interface AWSMediaLiveChannel104 { AdaptiveQuantization?: string; AfdSignaling?: string; Bitrate?: number; BufFillPct?: number; BufSize?: number; ColorMetadata?: string; ColorSpaceSettings?: AWSMediaLiveChannel105; EntropyEncoding?: string; FilterSettings?: AWSMediaLiveChannel109; FixedAfd?: string; FlickerAq?: string; ForceFieldPictures?: string; FramerateControl?: string; FramerateDenominator?: number; FramerateNumerator?: number; GopBReference?: string; GopClosedCadence?: number; GopNumBFrames?: number; GopSize?: number; GopSizeUnits?: string; Level?: string; LookAheadRateControl?: string; MaxBitrate?: number; MinIInterval?: number; NumRefFrames?: number; ParControl?: string; ParDenominator?: number; ParNumerator?: number; Profile?: string; QualityLevel?: string; QvbrQualityLevel?: number; RateControlMode?: string; ScanType?: string; SceneChangeDetect?: string; Slices?: number; Softness?: number; SpatialAq?: string; SubgopLength?: string; Syntax?: string; TemporalAq?: string; TimecodeInsertion?: string; } export interface AWSMediaLiveChannel105 { ColorSpacePassthroughSettings?: AWSMediaLiveChannel106; Rec601Settings?: AWSMediaLiveChannel107; Rec709Settings?: AWSMediaLiveChannel108; } export interface AWSMediaLiveChannel106 {} export interface AWSMediaLiveChannel107 {} export interface AWSMediaLiveChannel108 {} export interface AWSMediaLiveChannel109 { TemporalFilterSettings?: AWSMediaLiveChannel110; } export interface AWSMediaLiveChannel110 { PostFilterSharpening?: string; Strength?: string; } export interface AWSMediaLiveChannel111 { AdaptiveQuantization?: string; AfdSignaling?: string; AlternativeTransferFunction?: string; Bitrate?: number; BufSize?: number; ColorMetadata?: string; ColorSpaceSettings?: AWSMediaLiveChannel112; FilterSettings?: AWSMediaLiveChannel114; FixedAfd?: string; FlickerAq?: string; FramerateDenominator?: number; FramerateNumerator?: number; GopClosedCadence?: number; GopSize?: number; GopSizeUnits?: string; Level?: string; LookAheadRateControl?: string; MaxBitrate?: number; MinIInterval?: number; ParDenominator?: number; ParNumerator?: number; Profile?: string; QvbrQualityLevel?: number; RateControlMode?: string; ScanType?: string; SceneChangeDetect?: string; Slices?: number; Tier?: string; TimecodeInsertion?: string; } export interface AWSMediaLiveChannel112 { ColorSpacePassthroughSettings?: AWSMediaLiveChannel106; Hdr10Settings?: AWSMediaLiveChannel113; Rec601Settings?: AWSMediaLiveChannel107; Rec709Settings?: AWSMediaLiveChannel108; } export interface AWSMediaLiveChannel113 { MaxCll?: number; MaxFall?: number; } export interface AWSMediaLiveChannel114 { TemporalFilterSettings?: AWSMediaLiveChannel110; } export interface AWSMediaLiveChannel115 { AdaptiveQuantization?: string; AfdSignaling?: string; ColorMetadata?: string; ColorSpace?: string; DisplayAspectRatio?: string; FilterSettings?: AWSMediaLiveChannel116; FixedAfd?: string; FramerateDenominator?: number; FramerateNumerator?: number; GopClosedCadence?: number; GopNumBFrames?: number; GopSize?: number; GopSizeUnits?: string; ScanType?: string; SubgopLength?: string; TimecodeInsertion?: string; } export interface AWSMediaLiveChannel116 { TemporalFilterSettings?: AWSMediaLiveChannel110; } export interface AWSMediaLiveChannel117 { AutomaticInputFailoverSettings?: AWSMediaLiveChannel118; InputAttachmentName?: string; InputId?: string; InputSettings?: AWSMediaLiveChannel124; } export interface AWSMediaLiveChannel118 { ErrorClearTimeMsec?: number; FailoverConditions?: AWSMediaLiveChannel119[]; InputPreference?: string; SecondaryInputId?: string; } export interface AWSMediaLiveChannel119 { FailoverConditionSettings?: AWSMediaLiveChannel120; } export interface AWSMediaLiveChannel120 { AudioSilenceSettings?: AWSMediaLiveChannel121; InputLossSettings?: AWSMediaLiveChannel122; VideoBlackSettings?: AWSMediaLiveChannel123; } export interface AWSMediaLiveChannel121 { AudioSelectorName?: string; AudioSilenceThresholdMsec?: number; } export interface AWSMediaLiveChannel122 { InputLossThresholdMsec?: number; } export interface AWSMediaLiveChannel123 { BlackDetectThreshold?: number; VideoBlackThresholdMsec?: number; } export interface AWSMediaLiveChannel124 { AudioSelectors?: AWSMediaLiveChannel125[]; CaptionSelectors?: AWSMediaLiveChannel132[]; DeblockFilter?: string; DenoiseFilter?: string; FilterStrength?: number; InputFilter?: string; NetworkInputSettings?: AWSMediaLiveChannel142; Scte35Pid?: number; Smpte2038DataPreference?: string; SourceEndBehavior?: string; VideoSelector?: AWSMediaLiveChannel144; } export interface AWSMediaLiveChannel125 { Name?: string; SelectorSettings?: AWSMediaLiveChannel126; } export interface AWSMediaLiveChannel126 { AudioHlsRenditionSelection?: AWSMediaLiveChannel127; AudioLanguageSelection?: AWSMediaLiveChannel128; AudioPidSelection?: AWSMediaLiveChannel129; AudioTrackSelection?: AWSMediaLiveChannel130; } export interface AWSMediaLiveChannel127 { GroupId?: string; Name?: string; } export interface AWSMediaLiveChannel128 { LanguageCode?: string; LanguageSelectionPolicy?: string; } export interface AWSMediaLiveChannel129 { Pid?: number; } export interface AWSMediaLiveChannel130 { Tracks?: AWSMediaLiveChannel131[]; } export interface AWSMediaLiveChannel131 { Track?: number; } export interface AWSMediaLiveChannel132 { LanguageCode?: string; Name?: string; SelectorSettings?: AWSMediaLiveChannel133; } export interface AWSMediaLiveChannel133 { AncillarySourceSettings?: AWSMediaLiveChannel134; AribSourceSettings?: AWSMediaLiveChannel135; DvbSubSourceSettings?: AWSMediaLiveChannel136; EmbeddedSourceSettings?: AWSMediaLiveChannel137; Scte20SourceSettings?: AWSMediaLiveChannel138; Scte27SourceSettings?: AWSMediaLiveChannel139; TeletextSourceSettings?: AWSMediaLiveChannel140; } export interface AWSMediaLiveChannel134 { SourceAncillaryChannelNumber?: number; } export interface AWSMediaLiveChannel135 {} export interface AWSMediaLiveChannel136 { OcrLanguage?: string; Pid?: number; } export interface AWSMediaLiveChannel137 { Convert608To708?: string; Scte20Detection?: string; Source608ChannelNumber?: number; Source608TrackNumber?: number; } export interface AWSMediaLiveChannel138 { Convert608To708?: string; Source608ChannelNumber?: number; } export interface AWSMediaLiveChannel139 { OcrLanguage?: string; Pid?: number; } export interface AWSMediaLiveChannel140 { OutputRectangle?: AWSMediaLiveChannel141; PageNumber?: string; } export interface AWSMediaLiveChannel141 { Height?: number; LeftOffset?: number; TopOffset?: number; Width?: number; } export interface AWSMediaLiveChannel142 { HlsInputSettings?: AWSMediaLiveChannel143; ServerValidation?: string; } export interface AWSMediaLiveChannel143 { Bandwidth?: number; BufferSegments?: number; Retries?: number; RetryInterval?: number; Scte35Source?: string; } export interface AWSMediaLiveChannel144 { ColorSpace?: string; ColorSpaceSettings?: AWSMediaLiveChannel145; ColorSpaceUsage?: string; SelectorSettings?: AWSMediaLiveChannel146; } export interface AWSMediaLiveChannel145 { Hdr10Settings?: AWSMediaLiveChannel113; } export interface AWSMediaLiveChannel146 { VideoSelectorPid?: AWSMediaLiveChannel147; VideoSelectorProgramId?: AWSMediaLiveChannel148; } export interface AWSMediaLiveChannel147 { Pid?: number; } export interface AWSMediaLiveChannel148 { ProgramId?: number; } export interface AWSMediaLiveChannel149 { Codec?: string; MaximumBitrate?: string; Resolution?: string; } export interface AWSMediaLiveChannel150 { PublicAddressAllocationIds?: string[]; SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSMediaLiveInput { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Destinations?: AWSMediaLiveInput1[]; InputDevices?: AWSMediaLiveInput2[]; InputSecurityGroups?: string[]; MediaConnectFlows?: AWSMediaLiveInput3[]; Name?: string; RoleArn?: string; Sources?: AWSMediaLiveInput4[]; Tags?: { [k: string]: unknown; }; Type?: string; Vpc?: AWSMediaLiveInput5; }; Type: 'AWS::MediaLive::Input'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaLiveInput1 { StreamName?: string; } export interface AWSMediaLiveInput2 { Id?: string; } export interface AWSMediaLiveInput3 { FlowArn?: string; } export interface AWSMediaLiveInput4 { PasswordParam?: string; Url?: string; Username?: string; } export interface AWSMediaLiveInput5 { SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSMediaLiveInputSecurityGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Tags?: { [k: string]: unknown; }; WhitelistRules?: AWSMediaLiveInputSecurityGroup1[]; }; Type: 'AWS::MediaLive::InputSecurityGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaLiveInputSecurityGroup1 { Cidr?: string; } export interface AWSMediaPackageAsset { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Id: string; PackagingGroupId: string; ResourceId?: string; SourceArn: string; SourceRoleArn: string; Tags?: Tag[]; }; Type: 'AWS::MediaPackage::Asset'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaPackageChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; EgressAccessLogs?: AWSMediaPackageChannel1; HlsIngest?: AWSMediaPackageChannel2; Id: string; IngressAccessLogs?: AWSMediaPackageChannel1; Tags?: Tag[]; }; Type: 'AWS::MediaPackage::Channel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaPackageChannel1 { LogGroupName?: string; } export interface AWSMediaPackageChannel2 { ingestEndpoints?: AWSMediaPackageChannel3[]; } export interface AWSMediaPackageChannel3 { Id: string; Password: string; Url: string; Username: string; } export interface AWSMediaPackageOriginEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Authorization?: AWSMediaPackageOriginEndpoint1; ChannelId: string; CmafPackage?: AWSMediaPackageOriginEndpoint2; DashPackage?: AWSMediaPackageOriginEndpoint8; Description?: string; HlsPackage?: AWSMediaPackageOriginEndpoint10; Id: string; ManifestName?: string; MssPackage?: AWSMediaPackageOriginEndpoint12; Origination?: string; StartoverWindowSeconds?: number; Tags?: Tag[]; TimeDelaySeconds?: number; Whitelist?: string[]; }; Type: 'AWS::MediaPackage::OriginEndpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaPackageOriginEndpoint1 { CdnIdentifierSecret: string; SecretsRoleArn: string; } export interface AWSMediaPackageOriginEndpoint2 { Encryption?: AWSMediaPackageOriginEndpoint3; HlsManifests?: AWSMediaPackageOriginEndpoint6[]; SegmentDurationSeconds?: number; SegmentPrefix?: string; StreamSelection?: AWSMediaPackageOriginEndpoint7; } export interface AWSMediaPackageOriginEndpoint3 { ConstantInitializationVector?: string; EncryptionMethod?: string; KeyRotationIntervalSeconds?: number; SpekeKeyProvider: AWSMediaPackageOriginEndpoint4; } export interface AWSMediaPackageOriginEndpoint4 { CertificateArn?: string; EncryptionContractConfiguration?: AWSMediaPackageOriginEndpoint5; ResourceId: string; RoleArn: string; SystemIds: string[]; Url: string; } export interface AWSMediaPackageOriginEndpoint5 { PresetSpeke20Audio: string; PresetSpeke20Video: string; } export interface AWSMediaPackageOriginEndpoint6 { AdMarkers?: string; AdTriggers?: string[]; AdsOnDeliveryRestrictions?: string; Id: string; IncludeIframeOnlyStream?: boolean; ManifestName?: string; PlaylistType?: string; PlaylistWindowSeconds?: number; ProgramDateTimeIntervalSeconds?: number; Url?: string; } export interface AWSMediaPackageOriginEndpoint7 { MaxVideoBitsPerSecond?: number; MinVideoBitsPerSecond?: number; StreamOrder?: string; } export interface AWSMediaPackageOriginEndpoint8 { AdTriggers?: string[]; AdsOnDeliveryRestrictions?: string; Encryption?: AWSMediaPackageOriginEndpoint9; IncludeIframeOnlyStream?: boolean; ManifestLayout?: string; ManifestWindowSeconds?: number; MinBufferTimeSeconds?: number; MinUpdatePeriodSeconds?: number; PeriodTriggers?: string[]; Profile?: string; SegmentDurationSeconds?: number; SegmentTemplateFormat?: string; StreamSelection?: AWSMediaPackageOriginEndpoint7; SuggestedPresentationDelaySeconds?: number; UtcTiming?: string; UtcTimingUri?: string; } export interface AWSMediaPackageOriginEndpoint9 { KeyRotationIntervalSeconds?: number; SpekeKeyProvider: AWSMediaPackageOriginEndpoint4; } export interface AWSMediaPackageOriginEndpoint10 { AdMarkers?: string; AdTriggers?: string[]; AdsOnDeliveryRestrictions?: string; Encryption?: AWSMediaPackageOriginEndpoint11; IncludeDvbSubtitles?: boolean; IncludeIframeOnlyStream?: boolean; PlaylistType?: string; PlaylistWindowSeconds?: number; ProgramDateTimeIntervalSeconds?: number; SegmentDurationSeconds?: number; StreamSelection?: AWSMediaPackageOriginEndpoint7; UseAudioRenditionGroup?: boolean; } export interface AWSMediaPackageOriginEndpoint11 { ConstantInitializationVector?: string; EncryptionMethod?: string; KeyRotationIntervalSeconds?: number; RepeatExtXKey?: boolean; SpekeKeyProvider: AWSMediaPackageOriginEndpoint4; } export interface AWSMediaPackageOriginEndpoint12 { Encryption?: AWSMediaPackageOriginEndpoint13; ManifestWindowSeconds?: number; SegmentDurationSeconds?: number; StreamSelection?: AWSMediaPackageOriginEndpoint7; } export interface AWSMediaPackageOriginEndpoint13 { SpekeKeyProvider: AWSMediaPackageOriginEndpoint4; } export interface AWSMediaPackagePackagingConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CmafPackage?: AWSMediaPackagePackagingConfiguration1; DashPackage?: AWSMediaPackagePackagingConfiguration7; HlsPackage?: AWSMediaPackagePackagingConfiguration10; Id: string; MssPackage?: AWSMediaPackagePackagingConfiguration12; PackagingGroupId: string; Tags?: Tag[]; }; Type: 'AWS::MediaPackage::PackagingConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaPackagePackagingConfiguration1 { Encryption?: AWSMediaPackagePackagingConfiguration2; HlsManifests: AWSMediaPackagePackagingConfiguration5[]; IncludeEncoderConfigurationInSegments?: boolean; SegmentDurationSeconds?: number; } export interface AWSMediaPackagePackagingConfiguration2 { SpekeKeyProvider: AWSMediaPackagePackagingConfiguration3; } export interface AWSMediaPackagePackagingConfiguration3 { EncryptionContractConfiguration?: AWSMediaPackagePackagingConfiguration4; RoleArn: string; SystemIds: string[]; Url: string; } export interface AWSMediaPackagePackagingConfiguration4 { PresetSpeke20Audio: string; PresetSpeke20Video: string; } export interface AWSMediaPackagePackagingConfiguration5 { AdMarkers?: string; IncludeIframeOnlyStream?: boolean; ManifestName?: string; ProgramDateTimeIntervalSeconds?: number; RepeatExtXKey?: boolean; StreamSelection?: AWSMediaPackagePackagingConfiguration6; } export interface AWSMediaPackagePackagingConfiguration6 { MaxVideoBitsPerSecond?: number; MinVideoBitsPerSecond?: number; StreamOrder?: string; } export interface AWSMediaPackagePackagingConfiguration7 { DashManifests: AWSMediaPackagePackagingConfiguration8[]; Encryption?: AWSMediaPackagePackagingConfiguration9; IncludeEncoderConfigurationInSegments?: boolean; IncludeIframeOnlyStream?: boolean; PeriodTriggers?: string[]; SegmentDurationSeconds?: number; SegmentTemplateFormat?: string; } export interface AWSMediaPackagePackagingConfiguration8 { ManifestLayout?: string; ManifestName?: string; MinBufferTimeSeconds?: number; Profile?: string; ScteMarkersSource?: string; StreamSelection?: AWSMediaPackagePackagingConfiguration6; } export interface AWSMediaPackagePackagingConfiguration9 { SpekeKeyProvider: AWSMediaPackagePackagingConfiguration3; } export interface AWSMediaPackagePackagingConfiguration10 { Encryption?: AWSMediaPackagePackagingConfiguration11; HlsManifests: AWSMediaPackagePackagingConfiguration5[]; IncludeDvbSubtitles?: boolean; SegmentDurationSeconds?: number; UseAudioRenditionGroup?: boolean; } export interface AWSMediaPackagePackagingConfiguration11 { ConstantInitializationVector?: string; EncryptionMethod?: string; SpekeKeyProvider: AWSMediaPackagePackagingConfiguration3; } export interface AWSMediaPackagePackagingConfiguration12 { Encryption?: AWSMediaPackagePackagingConfiguration13; MssManifests: AWSMediaPackagePackagingConfiguration14[]; SegmentDurationSeconds?: number; } export interface AWSMediaPackagePackagingConfiguration13 { SpekeKeyProvider: AWSMediaPackagePackagingConfiguration3; } export interface AWSMediaPackagePackagingConfiguration14 { ManifestName?: string; StreamSelection?: AWSMediaPackagePackagingConfiguration6; } export interface AWSMediaPackagePackagingGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Authorization?: AWSMediaPackagePackagingGroup1; EgressAccessLogs?: AWSMediaPackagePackagingGroup2; Id: string; Tags?: Tag[]; }; Type: 'AWS::MediaPackage::PackagingGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaPackagePackagingGroup1 { CdnIdentifierSecret: string; SecretsRoleArn: string; } export interface AWSMediaPackagePackagingGroup2 { LogGroupName?: string; } export interface AWSMediaStoreContainer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessLoggingEnabled?: boolean; ContainerName: string; CorsPolicy?: AWSMediaStoreContainer1[]; LifecyclePolicy?: string; MetricPolicy?: AWSMediaStoreContainer2; Policy?: string; Tags?: Tag[]; }; Type: 'AWS::MediaStore::Container'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaStoreContainer1 { AllowedHeaders?: string[]; AllowedMethods?: string[]; AllowedOrigins?: string[]; ExposeHeaders?: string[]; MaxAgeSeconds?: number; } export interface AWSMediaStoreContainer2 { ContainerLevelMetrics: string; MetricPolicyRules?: AWSMediaStoreContainer3[]; } export interface AWSMediaStoreContainer3 { ObjectGroup: string; ObjectGroupName: string; } export interface AWSMediaTailorPlaybackConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdDecisionServerUrl: string; AvailSuppression?: AWSMediaTailorPlaybackConfiguration1; Bumper?: AWSMediaTailorPlaybackConfiguration2; CdnConfiguration?: AWSMediaTailorPlaybackConfiguration3; ConfigurationAliases?: { [k: string]: unknown; }; DashConfiguration?: AWSMediaTailorPlaybackConfiguration4; HlsConfiguration?: AWSMediaTailorPlaybackConfiguration5; LivePreRollConfiguration?: AWSMediaTailorPlaybackConfiguration6; ManifestProcessingRules?: AWSMediaTailorPlaybackConfiguration7; Name: string; PersonalizationThresholdSeconds?: number; SlateAdUrl?: string; Tags?: Tag[]; TranscodeProfileName?: string; VideoContentSourceUrl: string; }; Type: 'AWS::MediaTailor::PlaybackConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMediaTailorPlaybackConfiguration1 { Mode?: string; Value?: string; } export interface AWSMediaTailorPlaybackConfiguration2 { EndUrl?: string; StartUrl?: string; } export interface AWSMediaTailorPlaybackConfiguration3 { AdSegmentUrlPrefix?: string; ContentSegmentUrlPrefix?: string; } export interface AWSMediaTailorPlaybackConfiguration4 { ManifestEndpointPrefix?: string; MpdLocation?: string; OriginManifestType?: string; } export interface AWSMediaTailorPlaybackConfiguration5 { ManifestEndpointPrefix?: string; } export interface AWSMediaTailorPlaybackConfiguration6 { AdDecisionServerUrl?: string; MaxDurationSeconds?: number; } export interface AWSMediaTailorPlaybackConfiguration7 { AdMarkerPassthrough?: AWSMediaTailorPlaybackConfiguration8; } export interface AWSMediaTailorPlaybackConfiguration8 { Enabled?: boolean; } export interface AWSMemoryDBACL { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ACLName: string; Tags?: Tag[]; UserNames?: string[]; }; Type: 'AWS::MemoryDB::ACL'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMemoryDBCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ACLName: string; AutoMinorVersionUpgrade?: boolean; ClusterEndpoint?: AWSMemoryDBCluster1; ClusterName: string; DataTiering?: string; Description?: string; EngineVersion?: string; FinalSnapshotName?: string; KmsKeyId?: string; MaintenanceWindow?: string; NodeType: string; NumReplicasPerShard?: number; NumShards?: number; ParameterGroupName?: string; Port?: number; SecurityGroupIds?: string[]; SnapshotArns?: string[]; SnapshotName?: string; SnapshotRetentionLimit?: number; SnapshotWindow?: string; SnsTopicArn?: string; SnsTopicStatus?: string; SubnetGroupName?: string; TLSEnabled?: boolean; Tags?: Tag[]; }; Type: 'AWS::MemoryDB::Cluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMemoryDBCluster1 { Address?: string; Port?: number; } export interface AWSMemoryDBParameterGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Family: string; ParameterGroupName: string; Parameters?: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::MemoryDB::ParameterGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMemoryDBSubnetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; SubnetGroupName: string; SubnetIds: string[]; Tags?: Tag[]; }; Type: 'AWS::MemoryDB::SubnetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMemoryDBUser { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessString: string; AuthenticationMode: AWSMemoryDBUser1; Tags?: Tag[]; UserName: string; }; Type: 'AWS::MemoryDB::User'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSMemoryDBUser1 { Passwords?: string[]; Type?: string; } export interface AWSNeptuneDBCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AssociatedRoles?: AWSNeptuneDBCluster1[]; AvailabilityZones?: string[]; BackupRetentionPeriod?: number; DBClusterIdentifier?: string; DBClusterParameterGroupName?: string; DBSubnetGroupName?: string; DeletionProtection?: boolean; EnableCloudwatchLogsExports?: string[]; EngineVersion?: string; IamAuthEnabled?: boolean; KmsKeyId?: string; Port?: number; PreferredBackupWindow?: string; PreferredMaintenanceWindow?: string; RestoreToTime?: string; RestoreType?: string; SnapshotIdentifier?: string; SourceDBClusterIdentifier?: string; StorageEncrypted?: boolean; Tags?: Tag[]; UseLatestRestorableTime?: boolean; VpcSecurityGroupIds?: string[]; }; Type: 'AWS::Neptune::DBCluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNeptuneDBCluster1 { FeatureName?: string; RoleArn: string; } export interface AWSNeptuneDBClusterParameterGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description: string; Family: string; Name?: string; Parameters: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::Neptune::DBClusterParameterGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNeptuneDBInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowMajorVersionUpgrade?: boolean; AutoMinorVersionUpgrade?: boolean; AvailabilityZone?: string; DBClusterIdentifier?: string; DBInstanceClass: string; DBInstanceIdentifier?: string; DBParameterGroupName?: string; DBSnapshotIdentifier?: string; DBSubnetGroupName?: string; PreferredMaintenanceWindow?: string; Tags?: Tag[]; }; Type: 'AWS::Neptune::DBInstance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNeptuneDBParameterGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description: string; Family: string; Name?: string; Parameters: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::Neptune::DBParameterGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNeptuneDBSubnetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DBSubnetGroupDescription: string; DBSubnetGroupName?: string; SubnetIds: string[]; Tags?: Tag[]; }; Type: 'AWS::Neptune::DBSubnetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkFirewallFirewall { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeleteProtection?: boolean; Description?: string; FirewallName: string; FirewallPolicyArn: string; FirewallPolicyChangeProtection?: boolean; SubnetChangeProtection?: boolean; SubnetMappings: AWSNetworkFirewallFirewall1[]; Tags?: Tag[]; VpcId: string; }; Type: 'AWS::NetworkFirewall::Firewall'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkFirewallFirewall1 { SubnetId: string; } export interface AWSNetworkFirewallFirewallPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; FirewallPolicy: AWSNetworkFirewallFirewallPolicy1; FirewallPolicyName: string; Tags?: Tag[]; }; Type: 'AWS::NetworkFirewall::FirewallPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkFirewallFirewallPolicy1 { StatefulDefaultActions?: string[]; StatefulEngineOptions?: AWSNetworkFirewallFirewallPolicy2; StatefulRuleGroupReferences?: AWSNetworkFirewallFirewallPolicy3[]; StatelessCustomActions?: AWSNetworkFirewallFirewallPolicy5[]; StatelessDefaultActions: string[]; StatelessFragmentDefaultActions: string[]; StatelessRuleGroupReferences?: AWSNetworkFirewallFirewallPolicy9[]; } export interface AWSNetworkFirewallFirewallPolicy2 { RuleOrder?: string; StreamExceptionPolicy?: string; } export interface AWSNetworkFirewallFirewallPolicy3 { Override?: AWSNetworkFirewallFirewallPolicy4; Priority?: number; ResourceArn: string; } export interface AWSNetworkFirewallFirewallPolicy4 { Action?: string; } export interface AWSNetworkFirewallFirewallPolicy5 { ActionDefinition: AWSNetworkFirewallFirewallPolicy6; ActionName: string; } export interface AWSNetworkFirewallFirewallPolicy6 { PublishMetricAction?: AWSNetworkFirewallFirewallPolicy7; } export interface AWSNetworkFirewallFirewallPolicy7 { Dimensions: AWSNetworkFirewallFirewallPolicy8[]; } export interface AWSNetworkFirewallFirewallPolicy8 { Value: string; } export interface AWSNetworkFirewallFirewallPolicy9 { Priority: number; ResourceArn: string; } export interface AWSNetworkFirewallLoggingConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { FirewallArn: string; FirewallName?: string; LoggingConfiguration: AWSNetworkFirewallLoggingConfiguration1; }; Type: 'AWS::NetworkFirewall::LoggingConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkFirewallLoggingConfiguration1 { LogDestinationConfigs: AWSNetworkFirewallLoggingConfiguration2[]; } export interface AWSNetworkFirewallLoggingConfiguration2 { LogDestination: { [k: string]: unknown; }; LogDestinationType: string; LogType: string; } export interface AWSNetworkFirewallRuleGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Capacity: number; Description?: string; RuleGroup?: AWSNetworkFirewallRuleGroup1; RuleGroupName: string; Tags?: Tag[]; Type: string; }; Type: 'AWS::NetworkFirewall::RuleGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkFirewallRuleGroup1 { ReferenceSets?: AWSNetworkFirewallRuleGroup2; RuleVariables?: AWSNetworkFirewallRuleGroup4; RulesSource: AWSNetworkFirewallRuleGroup7; StatefulRuleOptions?: AWSNetworkFirewallRuleGroup23; } export interface AWSNetworkFirewallRuleGroup2 { IPSetReferences?: { [k: string]: AWSNetworkFirewallRuleGroup3; }; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSNetworkFirewallRuleGroup3 { ReferenceArn?: string; } export interface AWSNetworkFirewallRuleGroup4 { IPSets?: { [k: string]: AWSNetworkFirewallRuleGroup5; }; PortSets?: { [k: string]: AWSNetworkFirewallRuleGroup6; }; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSNetworkFirewallRuleGroup5 { Definition?: string[]; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSNetworkFirewallRuleGroup6 { Definition?: string[]; } export interface AWSNetworkFirewallRuleGroup7 { RulesSourceList?: AWSNetworkFirewallRuleGroup8; RulesString?: string; StatefulRules?: AWSNetworkFirewallRuleGroup9[]; StatelessRulesAndCustomActions?: AWSNetworkFirewallRuleGroup12; } export interface AWSNetworkFirewallRuleGroup8 { GeneratedRulesType: string; TargetTypes: string[]; Targets: string[]; } export interface AWSNetworkFirewallRuleGroup9 { Action: string; Header: AWSNetworkFirewallRuleGroup10; RuleOptions: AWSNetworkFirewallRuleGroup11[]; } export interface AWSNetworkFirewallRuleGroup10 { Destination: string; DestinationPort: string; Direction: string; Protocol: string; Source: string; SourcePort: string; } export interface AWSNetworkFirewallRuleGroup11 { Keyword: string; Settings?: string[]; } export interface AWSNetworkFirewallRuleGroup12 { CustomActions?: AWSNetworkFirewallRuleGroup13[]; StatelessRules: AWSNetworkFirewallRuleGroup17[]; } export interface AWSNetworkFirewallRuleGroup13 { ActionDefinition: AWSNetworkFirewallRuleGroup14; ActionName: string; } export interface AWSNetworkFirewallRuleGroup14 { PublishMetricAction?: AWSNetworkFirewallRuleGroup15; } export interface AWSNetworkFirewallRuleGroup15 { Dimensions: AWSNetworkFirewallRuleGroup16[]; } export interface AWSNetworkFirewallRuleGroup16 { Value: string; } export interface AWSNetworkFirewallRuleGroup17 { Priority: number; RuleDefinition: AWSNetworkFirewallRuleGroup18; } export interface AWSNetworkFirewallRuleGroup18 { Actions: string[]; MatchAttributes: AWSNetworkFirewallRuleGroup19; } export interface AWSNetworkFirewallRuleGroup19 { DestinationPorts?: AWSNetworkFirewallRuleGroup20[]; Destinations?: AWSNetworkFirewallRuleGroup21[]; Protocols?: number[]; SourcePorts?: AWSNetworkFirewallRuleGroup20[]; Sources?: AWSNetworkFirewallRuleGroup21[]; TCPFlags?: AWSNetworkFirewallRuleGroup22[]; } export interface AWSNetworkFirewallRuleGroup20 { FromPort: number; ToPort: number; } export interface AWSNetworkFirewallRuleGroup21 { AddressDefinition: string; } export interface AWSNetworkFirewallRuleGroup22 { Flags: string[]; Masks?: string[]; } export interface AWSNetworkFirewallRuleGroup23 { RuleOrder?: string; } export interface AWSNetworkManagerConnectAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CoreNetworkId: string; EdgeLocation: string; Options: AWSNetworkManagerConnectAttachment1; Tags?: Tag[]; TransportAttachmentId: string; }; Type: 'AWS::NetworkManager::ConnectAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerConnectAttachment1 { Protocol?: string; } export interface AWSNetworkManagerConnectPeer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { BgpOptions?: AWSNetworkManagerConnectPeer1; ConnectAttachmentId?: string; CoreNetworkAddress?: string; InsideCidrBlocks?: string[]; PeerAddress?: string; Tags?: Tag[]; }; Type: 'AWS::NetworkManager::ConnectPeer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerConnectPeer1 { PeerAsn?: number; } export interface AWSNetworkManagerCoreNetwork { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; GlobalNetworkId: string; PolicyDocument?: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::NetworkManager::CoreNetwork'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerCustomerGatewayAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CustomerGatewayArn: string; DeviceId: string; GlobalNetworkId: string; LinkId?: string; }; Type: 'AWS::NetworkManager::CustomerGatewayAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerDevice { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; GlobalNetworkId: string; Location?: AWSNetworkManagerDevice1; Model?: string; SerialNumber?: string; SiteId?: string; Tags?: Tag[]; Type?: string; Vendor?: string; }; Type: 'AWS::NetworkManager::Device'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerDevice1 { Address?: string; Latitude?: string; Longitude?: string; } export interface AWSNetworkManagerGlobalNetwork { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; Tags?: Tag[]; }; Type: 'AWS::NetworkManager::GlobalNetwork'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerLink { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Bandwidth: AWSNetworkManagerLink1; Description?: string; GlobalNetworkId: string; Provider?: string; SiteId: string; Tags?: Tag[]; Type?: string; }; Type: 'AWS::NetworkManager::Link'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerLink1 { DownloadSpeed?: number; UploadSpeed?: number; } export interface AWSNetworkManagerLinkAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeviceId: string; GlobalNetworkId: string; LinkId: string; }; Type: 'AWS::NetworkManager::LinkAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerSite { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; GlobalNetworkId: string; Location?: AWSNetworkManagerSite1; Tags?: Tag[]; }; Type: 'AWS::NetworkManager::Site'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerSite1 { Address?: string; Latitude?: string; Longitude?: string; } export interface AWSNetworkManagerSiteToSiteVpnAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CoreNetworkId?: string; Tags?: Tag[]; VpnConnectionArn?: string; }; Type: 'AWS::NetworkManager::SiteToSiteVpnAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerTransitGatewayRegistration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GlobalNetworkId: string; TransitGatewayArn: string; }; Type: 'AWS::NetworkManager::TransitGatewayRegistration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerVpcAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CoreNetworkId: string; Options?: AWSNetworkManagerVpcAttachment1; SubnetArns: string[]; Tags?: Tag[]; VpcArn: string; }; Type: 'AWS::NetworkManager::VpcAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNetworkManagerVpcAttachment1 { ApplianceModeSupport?: boolean; Ipv6Support?: boolean; } export interface AWSNimbleStudioLaunchProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Ec2SubnetIds: string[]; LaunchProfileProtocolVersions: string[]; Name: string; StreamConfiguration: AWSNimbleStudioLaunchProfile1; StudioComponentIds: string[]; StudioId: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::NimbleStudio::LaunchProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNimbleStudioLaunchProfile1 { AutomaticTerminationMode?: string; ClipboardMode: string; Ec2InstanceTypes: string[]; MaxSessionLengthInMinutes?: number; MaxStoppedSessionLengthInMinutes?: number; SessionPersistenceMode?: string; SessionStorage?: AWSNimbleStudioLaunchProfile2; StreamingImageIds: string[]; VolumeConfiguration?: AWSNimbleStudioLaunchProfile4; } export interface AWSNimbleStudioLaunchProfile2 { Mode: string[]; Root?: AWSNimbleStudioLaunchProfile3; } export interface AWSNimbleStudioLaunchProfile3 { Linux?: string; Windows?: string; } export interface AWSNimbleStudioLaunchProfile4 { Iops?: number; Size?: number; Throughput?: number; } export interface AWSNimbleStudioStreamingImage { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Ec2ImageId: string; Name: string; StudioId: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::NimbleStudio::StreamingImage'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNimbleStudioStudio { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdminRoleArn: string; DisplayName: string; StudioEncryptionConfiguration?: AWSNimbleStudioStudio1; StudioName: string; Tags?: { [k: string]: unknown; }; UserRoleArn: string; }; Type: 'AWS::NimbleStudio::Studio'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNimbleStudioStudio1 { KeyArn?: string; KeyType: string; } export interface AWSNimbleStudioStudioComponent { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Configuration?: AWSNimbleStudioStudioComponent1; Description?: string; Ec2SecurityGroupIds?: string[]; InitializationScripts?: AWSNimbleStudioStudioComponent7[]; Name: string; ScriptParameters?: AWSNimbleStudioStudioComponent8[]; StudioId: string; Subtype?: string; Tags?: { [k: string]: unknown; }; Type: string; }; Type: 'AWS::NimbleStudio::StudioComponent'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSNimbleStudioStudioComponent1 { ActiveDirectoryConfiguration?: AWSNimbleStudioStudioComponent2; ComputeFarmConfiguration?: AWSNimbleStudioStudioComponent4; LicenseServiceConfiguration?: AWSNimbleStudioStudioComponent5; SharedFileSystemConfiguration?: AWSNimbleStudioStudioComponent6; } export interface AWSNimbleStudioStudioComponent2 { ComputerAttributes?: AWSNimbleStudioStudioComponent3[]; DirectoryId?: string; OrganizationalUnitDistinguishedName?: string; } export interface AWSNimbleStudioStudioComponent3 { Name?: string; Value?: string; } export interface AWSNimbleStudioStudioComponent4 { ActiveDirectoryUser?: string; Endpoint?: string; } export interface AWSNimbleStudioStudioComponent5 { Endpoint?: string; } export interface AWSNimbleStudioStudioComponent6 { Endpoint?: string; FileSystemId?: string; LinuxMountPoint?: string; ShareName?: string; WindowsMountDrive?: string; } export interface AWSNimbleStudioStudioComponent7 { LaunchProfileProtocolVersion?: string; Platform?: string; RunContext?: string; Script?: string; } export interface AWSNimbleStudioStudioComponent8 { Key?: string; Value?: string; } export interface AWSOamLink { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LabelTemplate: string; ResourceTypes: string[]; SinkIdentifier: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Oam::Link'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOamSink { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; Policy?: { [k: string]: unknown; }; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Oam::Sink'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpenSearchServerlessAccessPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; Name?: string; Policy?: string; Type?: string; }; Type: 'AWS::OpenSearchServerless::AccessPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpenSearchServerlessCollection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: Tag[]; Type?: string; }; Type: 'AWS::OpenSearchServerless::Collection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpenSearchServerlessSecurityConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; Name?: string; SamlOptions?: AWSOpenSearchServerlessSecurityConfig1; Type?: string; }; Type: 'AWS::OpenSearchServerless::SecurityConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpenSearchServerlessSecurityConfig1 { GroupAttribute?: string; Metadata: string; SessionTimeout?: number; UserAttribute?: string; } export interface AWSOpenSearchServerlessSecurityPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name?: string; Policy: string; Type?: string; }; Type: 'AWS::OpenSearchServerless::SecurityPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpenSearchServerlessVpcEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; SecurityGroupIds?: string[]; SubnetIds?: string[]; VpcId: string; }; Type: 'AWS::OpenSearchServerless::VpcEndpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpenSearchServiceDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AccessPolicies?: { [k: string]: unknown; }; AdvancedOptions?: { [k: string]: unknown; }; AdvancedSecurityOptions?: AWSOpenSearchServiceDomain1; ClusterConfig?: AWSOpenSearchServiceDomain3; CognitoOptions?: AWSOpenSearchServiceDomain5; DomainEndpointOptions?: AWSOpenSearchServiceDomain6; DomainName?: string; EBSOptions?: AWSOpenSearchServiceDomain7; EncryptionAtRestOptions?: AWSOpenSearchServiceDomain8; EngineVersion?: string; LogPublishingOptions?: { [k: string]: AWSOpenSearchServiceDomain9; }; NodeToNodeEncryptionOptions?: AWSOpenSearchServiceDomain10; SnapshotOptions?: AWSOpenSearchServiceDomain11; Tags?: Tag[]; VPCOptions?: AWSOpenSearchServiceDomain12; }; Type: 'AWS::OpenSearchService::Domain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpenSearchServiceDomain1 { Enabled?: boolean; InternalUserDatabaseEnabled?: boolean; MasterUserOptions?: AWSOpenSearchServiceDomain2; } export interface AWSOpenSearchServiceDomain2 { MasterUserARN?: string; MasterUserName?: string; MasterUserPassword?: string; } export interface AWSOpenSearchServiceDomain3 { DedicatedMasterCount?: number; DedicatedMasterEnabled?: boolean; DedicatedMasterType?: string; InstanceCount?: number; InstanceType?: string; WarmCount?: number; WarmEnabled?: boolean; WarmType?: string; ZoneAwarenessConfig?: AWSOpenSearchServiceDomain4; ZoneAwarenessEnabled?: boolean; } export interface AWSOpenSearchServiceDomain4 { AvailabilityZoneCount?: number; } export interface AWSOpenSearchServiceDomain5 { Enabled?: boolean; IdentityPoolId?: string; RoleArn?: string; UserPoolId?: string; } export interface AWSOpenSearchServiceDomain6 { CustomEndpoint?: string; CustomEndpointCertificateArn?: string; CustomEndpointEnabled?: boolean; EnforceHTTPS?: boolean; TLSSecurityPolicy?: string; } export interface AWSOpenSearchServiceDomain7 { EBSEnabled?: boolean; Iops?: number; Throughput?: number; VolumeSize?: number; VolumeType?: string; } export interface AWSOpenSearchServiceDomain8 { Enabled?: boolean; KmsKeyId?: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSOpenSearchServiceDomain9 { CloudWatchLogsLogGroupArn?: string; Enabled?: boolean; } export interface AWSOpenSearchServiceDomain10 { Enabled?: boolean; } export interface AWSOpenSearchServiceDomain11 { AutomatedSnapshotStartHour?: number; } export interface AWSOpenSearchServiceDomain12 { SecurityGroupIds?: string[]; SubnetIds?: string[]; } export interface AWSOpsWorksApp { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppSource?: AWSOpsWorksApp1; Attributes?: { [k: string]: unknown; }; DataSources?: AWSOpsWorksApp2[]; Description?: string; Domains?: string[]; EnableSsl?: boolean; Environment?: AWSOpsWorksApp3[]; Name: string; Shortname?: string; SslConfiguration?: AWSOpsWorksApp4; StackId: string; Type: string; }; Type: 'AWS::OpsWorks::App'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpsWorksApp1 { Password?: string; Revision?: string; SshKey?: string; Type?: string; Url?: string; Username?: string; } export interface AWSOpsWorksApp2 { Arn?: string; DatabaseName?: string; Type?: string; } export interface AWSOpsWorksApp3 { Key: string; Secure?: boolean; Value: string; } export interface AWSOpsWorksApp4 { Certificate?: string; Chain?: string; PrivateKey?: string; } export interface AWSOpsWorksElasticLoadBalancerAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ElasticLoadBalancerName: string; LayerId: string; }; Type: 'AWS::OpsWorks::ElasticLoadBalancerAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpsWorksInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AgentVersion?: string; AmiId?: string; Architecture?: string; AutoScalingType?: string; AvailabilityZone?: string; BlockDeviceMappings?: AWSOpsWorksInstance1[]; EbsOptimized?: boolean; ElasticIps?: string[]; Hostname?: string; InstallUpdatesOnBoot?: boolean; InstanceType: string; LayerIds: string[]; Os?: string; RootDeviceType?: string; SshKeyName?: string; StackId: string; SubnetId?: string; Tenancy?: string; TimeBasedAutoScaling?: AWSOpsWorksInstance3; VirtualizationType?: string; Volumes?: string[]; }; Type: 'AWS::OpsWorks::Instance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpsWorksInstance1 { DeviceName?: string; Ebs?: AWSOpsWorksInstance2; NoDevice?: string; VirtualName?: string; } export interface AWSOpsWorksInstance2 { DeleteOnTermination?: boolean; Iops?: number; SnapshotId?: string; VolumeSize?: number; VolumeType?: string; } export interface AWSOpsWorksInstance3 { Friday?: { [k: string]: unknown; }; Monday?: { [k: string]: unknown; }; Saturday?: { [k: string]: unknown; }; Sunday?: { [k: string]: unknown; }; Thursday?: { [k: string]: unknown; }; Tuesday?: { [k: string]: unknown; }; Wednesday?: { [k: string]: unknown; }; } export interface AWSOpsWorksLayer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Attributes?: { [k: string]: unknown; }; AutoAssignElasticIps: boolean; AutoAssignPublicIps: boolean; CustomInstanceProfileArn?: string; CustomJson?: { [k: string]: unknown; }; CustomRecipes?: AWSOpsWorksLayer1; CustomSecurityGroupIds?: string[]; EnableAutoHealing: boolean; InstallUpdatesOnBoot?: boolean; LifecycleEventConfiguration?: AWSOpsWorksLayer2; LoadBasedAutoScaling?: AWSOpsWorksLayer4; Name: string; Packages?: string[]; Shortname: string; StackId: string; Tags?: Tag[]; Type: string; UseEbsOptimizedInstances?: boolean; VolumeConfigurations?: AWSOpsWorksLayer6[]; }; Type: 'AWS::OpsWorks::Layer'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpsWorksLayer1 { Configure?: string[]; Deploy?: string[]; Setup?: string[]; Shutdown?: string[]; Undeploy?: string[]; } export interface AWSOpsWorksLayer2 { ShutdownEventConfiguration?: AWSOpsWorksLayer3; } export interface AWSOpsWorksLayer3 { DelayUntilElbConnectionsDrained?: boolean; ExecutionTimeout?: number; } export interface AWSOpsWorksLayer4 { DownScaling?: AWSOpsWorksLayer5; Enable?: boolean; UpScaling?: AWSOpsWorksLayer5; } export interface AWSOpsWorksLayer5 { CpuThreshold?: number; IgnoreMetricsTime?: number; InstanceCount?: number; LoadThreshold?: number; MemoryThreshold?: number; ThresholdsWaitTime?: number; } export interface AWSOpsWorksLayer6 { Encrypted?: boolean; Iops?: number; MountPoint?: string; NumberOfDisks?: number; RaidLevel?: number; Size?: number; VolumeType?: string; } export interface AWSOpsWorksStack { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AgentVersion?: string; Attributes?: { [k: string]: unknown; }; ChefConfiguration?: AWSOpsWorksStack1; CloneAppIds?: string[]; ClonePermissions?: boolean; ConfigurationManager?: AWSOpsWorksStack2; CustomCookbooksSource?: AWSOpsWorksStack3; CustomJson?: { [k: string]: unknown; }; DefaultAvailabilityZone?: string; DefaultInstanceProfileArn: string; DefaultOs?: string; DefaultRootDeviceType?: string; DefaultSshKeyName?: string; DefaultSubnetId?: string; EcsClusterArn?: string; ElasticIps?: AWSOpsWorksStack4[]; HostnameTheme?: string; Name: string; RdsDbInstances?: AWSOpsWorksStack5[]; ServiceRoleArn: string; SourceStackId?: string; Tags?: Tag[]; UseCustomCookbooks?: boolean; UseOpsworksSecurityGroups?: boolean; VpcId?: string; }; Type: 'AWS::OpsWorks::Stack'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpsWorksStack1 { BerkshelfVersion?: string; ManageBerkshelf?: boolean; } export interface AWSOpsWorksStack2 { Name?: string; Version?: string; } export interface AWSOpsWorksStack3 { Password?: string; Revision?: string; SshKey?: string; Type?: string; Url?: string; Username?: string; } export interface AWSOpsWorksStack4 { Ip: string; Name?: string; } export interface AWSOpsWorksStack5 { DbPassword: string; DbUser: string; RdsDbInstanceArn: string; } export interface AWSOpsWorksUserProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowSelfManagement?: boolean; IamUserArn: string; SshPublicKey?: string; SshUsername?: string; }; Type: 'AWS::OpsWorks::UserProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpsWorksVolume { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Ec2VolumeId: string; MountPoint?: string; Name?: string; StackId: string; }; Type: 'AWS::OpsWorks::Volume'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpsWorksCMServer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssociatePublicIpAddress?: boolean; BackupId?: string; BackupRetentionCount?: number; CustomCertificate?: string; CustomDomain?: string; CustomPrivateKey?: string; DisableAutomatedBackup?: boolean; Engine?: string; EngineAttributes?: AWSOpsWorksCMServer1[]; EngineModel?: string; EngineVersion?: string; InstanceProfileArn: string; InstanceType: string; KeyPair?: string; PreferredBackupWindow?: string; PreferredMaintenanceWindow?: string; SecurityGroupIds?: string[]; ServerName?: string; ServiceRoleArn: string; SubnetIds?: string[]; Tags?: Tag[]; }; Type: 'AWS::OpsWorksCM::Server'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOpsWorksCMServer1 { Name?: string; Value?: string; } export interface AWSOrganizationsAccount { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccountName: string; Email: string; ParentIds?: string[]; RoleName?: string; Tags?: Tag[]; }; Type: 'AWS::Organizations::Account'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOrganizationsOrganizationalUnit { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; ParentId: string; Tags?: Tag[]; }; Type: 'AWS::Organizations::OrganizationalUnit'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSOrganizationsPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Content: string; Description?: string; Name: string; Tags?: Tag[]; TargetIds?: string[]; Type: string; }; Type: 'AWS::Organizations::Policy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPanoramaApplicationInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationInstanceIdToReplace?: string; DefaultRuntimeContextDevice: string; Description?: string; DeviceId?: string; ManifestOverridesPayload?: AWSPanoramaApplicationInstance1; ManifestPayload: AWSPanoramaApplicationInstance2; Name?: string; RuntimeRoleArn?: string; StatusFilter?: string; Tags?: Tag[]; }; Type: 'AWS::Panorama::ApplicationInstance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPanoramaApplicationInstance1 { PayloadData?: string; } export interface AWSPanoramaApplicationInstance2 { PayloadData?: string; } export interface AWSPanoramaPackage { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PackageName: string; StorageLocation?: AWSPanoramaPackage1; Tags?: Tag[]; }; Type: 'AWS::Panorama::Package'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPanoramaPackage1 { BinaryPrefixLocation?: string; Bucket?: string; GeneratedPrefixLocation?: string; ManifestPrefixLocation?: string; RepoPrefixLocation?: string; } export interface AWSPanoramaPackageVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MarkLatest?: boolean; OwnerAccount?: string; PackageId: string; PackageVersion: string; PatchVersion: string; UpdatedLatestPatchVersion?: string; }; Type: 'AWS::Panorama::PackageVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPersonalizeDataset { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DatasetGroupArn: string; DatasetImportJob?: AWSPersonalizeDataset1; DatasetType: string; Name: string; SchemaArn: string; }; Type: 'AWS::Personalize::Dataset'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPersonalizeDataset1 { DataSource?: AWSPersonalizeDataset2; DatasetArn?: string; DatasetImportJobArn?: string; JobName?: string; RoleArn?: string; } export interface AWSPersonalizeDataset2 { DataLocation?: string; } export interface AWSPersonalizeDatasetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Domain?: string; KmsKeyArn?: string; Name: string; RoleArn?: string; }; Type: 'AWS::Personalize::DatasetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPersonalizeSchema { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Domain?: string; Name: string; Schema: string; }; Type: 'AWS::Personalize::Schema'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPersonalizeSolution { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DatasetGroupArn: string; EventType?: string; Name: string; PerformAutoML?: boolean; PerformHPO?: boolean; RecipeArn?: string; SolutionConfig?: AWSPersonalizeSolution1; }; Type: 'AWS::Personalize::Solution'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPersonalizeSolution1 { AlgorithmHyperParameters?: { [k: string]: unknown; }; AutoMLConfig?: AWSPersonalizeSolution2; EventValueThreshold?: string; FeatureTransformationParameters?: { [k: string]: unknown; }; HpoConfig?: AWSPersonalizeSolution3; } export interface AWSPersonalizeSolution2 { MetricName?: string; RecipeList?: string[]; } export interface AWSPersonalizeSolution3 { AlgorithmHyperParameterRanges?: AWSPersonalizeSolution4; HpoObjective?: AWSPersonalizeSolution8; HpoResourceConfig?: AWSPersonalizeSolution9; } export interface AWSPersonalizeSolution4 { CategoricalHyperParameterRanges?: AWSPersonalizeSolution5[]; ContinuousHyperParameterRanges?: AWSPersonalizeSolution6[]; IntegerHyperParameterRanges?: AWSPersonalizeSolution7[]; } export interface AWSPersonalizeSolution5 { Name?: string; Values?: string[]; } export interface AWSPersonalizeSolution6 { MaxValue?: number; MinValue?: number; Name?: string; } export interface AWSPersonalizeSolution7 { MaxValue?: number; MinValue?: number; Name?: string; } export interface AWSPersonalizeSolution8 { MetricName?: string; MetricRegex?: string; Type?: string; } export interface AWSPersonalizeSolution9 { MaxNumberOfTrainingJobs?: string; MaxParallelTrainingJobs?: string; } export interface AWSPinpointADMChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; ClientId: string; ClientSecret: string; Enabled?: boolean; }; Type: 'AWS::Pinpoint::ADMChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointAPNSChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; BundleId?: string; Certificate?: string; DefaultAuthenticationMethod?: string; Enabled?: boolean; PrivateKey?: string; TeamId?: string; TokenKey?: string; TokenKeyId?: string; }; Type: 'AWS::Pinpoint::APNSChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointAPNSSandboxChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; BundleId?: string; Certificate?: string; DefaultAuthenticationMethod?: string; Enabled?: boolean; PrivateKey?: string; TeamId?: string; TokenKey?: string; TokenKeyId?: string; }; Type: 'AWS::Pinpoint::APNSSandboxChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointAPNSVoipChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; BundleId?: string; Certificate?: string; DefaultAuthenticationMethod?: string; Enabled?: boolean; PrivateKey?: string; TeamId?: string; TokenKey?: string; TokenKeyId?: string; }; Type: 'AWS::Pinpoint::APNSVoipChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointAPNSVoipSandboxChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; BundleId?: string; Certificate?: string; DefaultAuthenticationMethod?: string; Enabled?: boolean; PrivateKey?: string; TeamId?: string; TokenKey?: string; TokenKeyId?: string; }; Type: 'AWS::Pinpoint::APNSVoipSandboxChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointApp { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Pinpoint::App'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointApplicationSettings { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; CampaignHook?: AWSPinpointApplicationSettings1; CloudWatchMetricsEnabled?: boolean; Limits?: AWSPinpointApplicationSettings2; QuietTime?: AWSPinpointApplicationSettings3; }; Type: 'AWS::Pinpoint::ApplicationSettings'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointApplicationSettings1 { LambdaFunctionName?: string; Mode?: string; WebUrl?: string; } export interface AWSPinpointApplicationSettings2 { Daily?: number; MaximumDuration?: number; MessagesPerSecond?: number; Total?: number; } export interface AWSPinpointApplicationSettings3 { End: string; Start: string; } export interface AWSPinpointBaiduChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiKey: string; ApplicationId: string; Enabled?: boolean; SecretKey: string; }; Type: 'AWS::Pinpoint::BaiduChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointCampaign { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdditionalTreatments?: AWSPinpointCampaign1[]; ApplicationId: string; CampaignHook?: AWSPinpointCampaign22; CustomDeliveryConfiguration?: AWSPinpointCampaign2; Description?: string; HoldoutPercent?: number; IsPaused?: boolean; Limits?: AWSPinpointCampaign23; MessageConfiguration?: AWSPinpointCampaign3; Name: string; Priority?: number; Schedule: AWSPinpointCampaign15; SegmentId: string; SegmentVersion?: number; Tags?: { [k: string]: unknown; }; TemplateConfiguration?: AWSPinpointCampaign20; TreatmentDescription?: string; TreatmentName?: string; }; Type: 'AWS::Pinpoint::Campaign'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointCampaign1 { CustomDeliveryConfiguration?: AWSPinpointCampaign2; MessageConfiguration?: AWSPinpointCampaign3; Schedule?: AWSPinpointCampaign15; SizePercent?: number; TemplateConfiguration?: AWSPinpointCampaign20; TreatmentDescription?: string; TreatmentName?: string; } export interface AWSPinpointCampaign2 { DeliveryUri?: string; EndpointTypes?: string[]; } export interface AWSPinpointCampaign3 { ADMMessage?: AWSPinpointCampaign4; APNSMessage?: AWSPinpointCampaign4; BaiduMessage?: AWSPinpointCampaign4; CustomMessage?: AWSPinpointCampaign5; DefaultMessage?: AWSPinpointCampaign4; EmailMessage?: AWSPinpointCampaign6; GCMMessage?: AWSPinpointCampaign4; InAppMessage?: AWSPinpointCampaign7; SMSMessage?: AWSPinpointCampaign14; } export interface AWSPinpointCampaign4 { Action?: string; Body?: string; ImageIconUrl?: string; ImageSmallIconUrl?: string; ImageUrl?: string; JsonBody?: string; MediaUrl?: string; RawContent?: string; SilentPush?: boolean; TimeToLive?: number; Title?: string; Url?: string; } export interface AWSPinpointCampaign5 { Data?: string; } export interface AWSPinpointCampaign6 { Body?: string; FromAddress?: string; HtmlBody?: string; Title?: string; } export interface AWSPinpointCampaign7 { Content?: AWSPinpointCampaign8[]; CustomConfig?: { [k: string]: unknown; }; Layout?: string; } export interface AWSPinpointCampaign8 { BackgroundColor?: string; BodyConfig?: AWSPinpointCampaign9; HeaderConfig?: AWSPinpointCampaign10; ImageUrl?: string; PrimaryBtn?: AWSPinpointCampaign11; SecondaryBtn?: AWSPinpointCampaign11; } export interface AWSPinpointCampaign9 { Alignment?: string; Body?: string; TextColor?: string; } export interface AWSPinpointCampaign10 { Alignment?: string; Header?: string; TextColor?: string; } export interface AWSPinpointCampaign11 { Android?: AWSPinpointCampaign12; DefaultConfig?: AWSPinpointCampaign13; IOS?: AWSPinpointCampaign12; Web?: AWSPinpointCampaign12; } export interface AWSPinpointCampaign12 { ButtonAction?: string; Link?: string; } export interface AWSPinpointCampaign13 { BackgroundColor?: string; BorderRadius?: number; ButtonAction?: string; Link?: string; Text?: string; TextColor?: string; } export interface AWSPinpointCampaign14 { Body?: string; EntityId?: string; MessageType?: string; OriginationNumber?: string; SenderId?: string; TemplateId?: string; } export interface AWSPinpointCampaign15 { EndTime?: string; EventFilter?: AWSPinpointCampaign16; Frequency?: string; IsLocalTime?: boolean; QuietTime?: AWSPinpointCampaign19; StartTime?: string; TimeZone?: string; } export interface AWSPinpointCampaign16 { Dimensions?: AWSPinpointCampaign17; FilterType?: string; } export interface AWSPinpointCampaign17 { Attributes?: { [k: string]: unknown; }; EventType?: AWSPinpointCampaign18; Metrics?: { [k: string]: unknown; }; } export interface AWSPinpointCampaign18 { DimensionType?: string; Values?: string[]; } export interface AWSPinpointCampaign19 { End: string; Start: string; } export interface AWSPinpointCampaign20 { EmailTemplate?: AWSPinpointCampaign21; PushTemplate?: AWSPinpointCampaign21; SMSTemplate?: AWSPinpointCampaign21; VoiceTemplate?: AWSPinpointCampaign21; } export interface AWSPinpointCampaign21 { Name?: string; Version?: string; } export interface AWSPinpointCampaign22 { LambdaFunctionName?: string; Mode?: string; WebUrl?: string; } export interface AWSPinpointCampaign23 { Daily?: number; MaximumDuration?: number; MessagesPerSecond?: number; Session?: number; Total?: number; } export interface AWSPinpointEmailChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; ConfigurationSet?: string; Enabled?: boolean; FromAddress: string; Identity: string; RoleArn?: string; }; Type: 'AWS::Pinpoint::EmailChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointEmailTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DefaultSubstitutions?: string; HtmlPart?: string; Subject: string; Tags?: { [k: string]: unknown; }; TemplateDescription?: string; TemplateName: string; TextPart?: string; }; Type: 'AWS::Pinpoint::EmailTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointEventStream { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; DestinationStreamArn: string; RoleArn: string; }; Type: 'AWS::Pinpoint::EventStream'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointGCMChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApiKey: string; ApplicationId: string; Enabled?: boolean; }; Type: 'AWS::Pinpoint::GCMChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointInAppTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Content?: AWSPinpointInAppTemplate1[]; CustomConfig?: { [k: string]: unknown; }; Layout?: string; Tags?: { [k: string]: unknown; }; TemplateDescription?: string; TemplateName: string; }; Type: 'AWS::Pinpoint::InAppTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointInAppTemplate1 { BackgroundColor?: string; BodyConfig?: AWSPinpointInAppTemplate2; HeaderConfig?: AWSPinpointInAppTemplate3; ImageUrl?: string; PrimaryBtn?: AWSPinpointInAppTemplate4; SecondaryBtn?: AWSPinpointInAppTemplate4; } export interface AWSPinpointInAppTemplate2 { Alignment?: string; Body?: string; TextColor?: string; } export interface AWSPinpointInAppTemplate3 { Alignment?: string; Header?: string; TextColor?: string; } export interface AWSPinpointInAppTemplate4 { Android?: AWSPinpointInAppTemplate5; DefaultConfig?: AWSPinpointInAppTemplate6; IOS?: AWSPinpointInAppTemplate5; Web?: AWSPinpointInAppTemplate5; } export interface AWSPinpointInAppTemplate5 { ButtonAction?: string; Link?: string; } export interface AWSPinpointInAppTemplate6 { BackgroundColor?: string; BorderRadius?: number; ButtonAction?: string; Link?: string; Text?: string; TextColor?: string; } export interface AWSPinpointPushTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ADM?: AWSPinpointPushTemplate1; APNS?: AWSPinpointPushTemplate2; Baidu?: AWSPinpointPushTemplate1; Default?: AWSPinpointPushTemplate3; DefaultSubstitutions?: string; GCM?: AWSPinpointPushTemplate1; Tags?: { [k: string]: unknown; }; TemplateDescription?: string; TemplateName: string; }; Type: 'AWS::Pinpoint::PushTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointPushTemplate1 { Action?: string; Body?: string; ImageIconUrl?: string; ImageUrl?: string; SmallImageIconUrl?: string; Sound?: string; Title?: string; Url?: string; } export interface AWSPinpointPushTemplate2 { Action?: string; Body?: string; MediaUrl?: string; Sound?: string; Title?: string; Url?: string; } export interface AWSPinpointPushTemplate3 { Action?: string; Body?: string; Sound?: string; Title?: string; Url?: string; } export interface AWSPinpointSMSChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; Enabled?: boolean; SenderId?: string; ShortCode?: string; }; Type: 'AWS::Pinpoint::SMSChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointSegment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; Dimensions?: AWSPinpointSegment1; Name: string; SegmentGroups?: AWSPinpointSegment9; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::Pinpoint::Segment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointSegment1 { Attributes?: { [k: string]: unknown; }; Behavior?: AWSPinpointSegment2; Demographic?: AWSPinpointSegment4; Location?: AWSPinpointSegment6; Metrics?: { [k: string]: unknown; }; UserAttributes?: { [k: string]: unknown; }; } export interface AWSPinpointSegment2 { Recency?: AWSPinpointSegment3; } export interface AWSPinpointSegment3 { Duration: string; RecencyType: string; } export interface AWSPinpointSegment4 { AppVersion?: AWSPinpointSegment5; Channel?: AWSPinpointSegment5; DeviceType?: AWSPinpointSegment5; Make?: AWSPinpointSegment5; Model?: AWSPinpointSegment5; Platform?: AWSPinpointSegment5; } export interface AWSPinpointSegment5 { DimensionType?: string; Values?: string[]; } export interface AWSPinpointSegment6 { Country?: AWSPinpointSegment5; GPSPoint?: AWSPinpointSegment7; } export interface AWSPinpointSegment7 { Coordinates: AWSPinpointSegment8; RangeInKilometers: number; } export interface AWSPinpointSegment8 { Latitude: number; Longitude: number; } export interface AWSPinpointSegment9 { Groups?: AWSPinpointSegment10[]; Include?: string; } export interface AWSPinpointSegment10 { Dimensions?: AWSPinpointSegment1[]; SourceSegments?: AWSPinpointSegment11[]; SourceType?: string; Type?: string; } export interface AWSPinpointSegment11 { Id: string; Version?: number; } export interface AWSPinpointSmsTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Body: string; DefaultSubstitutions?: string; Tags?: { [k: string]: unknown; }; TemplateDescription?: string; TemplateName: string; }; Type: 'AWS::Pinpoint::SmsTemplate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointVoiceChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationId: string; Enabled?: boolean; }; Type: 'AWS::Pinpoint::VoiceChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointEmailConfigurationSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeliveryOptions?: AWSPinpointEmailConfigurationSet1; Name: string; ReputationOptions?: AWSPinpointEmailConfigurationSet2; SendingOptions?: AWSPinpointEmailConfigurationSet3; Tags?: AWSPinpointEmailConfigurationSet4[]; TrackingOptions?: AWSPinpointEmailConfigurationSet5; }; Type: 'AWS::PinpointEmail::ConfigurationSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointEmailConfigurationSet1 { SendingPoolName?: string; } export interface AWSPinpointEmailConfigurationSet2 { ReputationMetricsEnabled?: boolean; } export interface AWSPinpointEmailConfigurationSet3 { SendingEnabled?: boolean; } export interface AWSPinpointEmailConfigurationSet4 { Key?: string; Value?: string; } export interface AWSPinpointEmailConfigurationSet5 { CustomRedirectDomain?: string; } export interface AWSPinpointEmailConfigurationSetEventDestination { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConfigurationSetName: string; EventDestination?: AWSPinpointEmailConfigurationSetEventDestination1; EventDestinationName: string; }; Type: 'AWS::PinpointEmail::ConfigurationSetEventDestination'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointEmailConfigurationSetEventDestination1 { CloudWatchDestination?: AWSPinpointEmailConfigurationSetEventDestination2; Enabled?: boolean; KinesisFirehoseDestination?: AWSPinpointEmailConfigurationSetEventDestination4; MatchingEventTypes: string[]; PinpointDestination?: AWSPinpointEmailConfigurationSetEventDestination5; SnsDestination?: AWSPinpointEmailConfigurationSetEventDestination6; } export interface AWSPinpointEmailConfigurationSetEventDestination2 { DimensionConfigurations?: AWSPinpointEmailConfigurationSetEventDestination3[]; } export interface AWSPinpointEmailConfigurationSetEventDestination3 { DefaultDimensionValue: string; DimensionName: string; DimensionValueSource: string; } export interface AWSPinpointEmailConfigurationSetEventDestination4 { DeliveryStreamArn: string; IamRoleArn: string; } export interface AWSPinpointEmailConfigurationSetEventDestination5 { ApplicationArn?: string; } export interface AWSPinpointEmailConfigurationSetEventDestination6 { TopicArn: string; } export interface AWSPinpointEmailDedicatedIpPool { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { PoolName?: string; Tags?: AWSPinpointEmailDedicatedIpPool1[]; }; Type: 'AWS::PinpointEmail::DedicatedIpPool'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointEmailDedicatedIpPool1 { Key?: string; Value?: string; } export interface AWSPinpointEmailIdentity { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DkimSigningEnabled?: boolean; FeedbackForwardingEnabled?: boolean; MailFromAttributes?: AWSPinpointEmailIdentity1; Name: string; Tags?: AWSPinpointEmailIdentity2[]; }; Type: 'AWS::PinpointEmail::Identity'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPinpointEmailIdentity1 { BehaviorOnMxFailure?: string; MailFromDomain?: string; } export interface AWSPinpointEmailIdentity2 { Key?: string; Value?: string; } export interface AWSPipesPipe { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; DesiredState?: string; Enrichment?: string; EnrichmentParameters?: AWSPipesPipe1; Name?: string; RoleArn: string; Source: string; SourceParameters?: AWSPipesPipe3; Tags?: { [k: string]: unknown; }; Target: string; TargetParameters?: AWSPipesPipe18; }; Type: 'AWS::Pipes::Pipe'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSPipesPipe1 { HttpParameters?: AWSPipesPipe2; InputTemplate?: string; } export interface AWSPipesPipe2 { HeaderParameters?: { [k: string]: unknown; }; PathParameterValues?: string[]; QueryStringParameters?: { [k: string]: unknown; }; } export interface AWSPipesPipe3 { ActiveMQBrokerParameters?: AWSPipesPipe4; DynamoDBStreamParameters?: AWSPipesPipe6; FilterCriteria?: AWSPipesPipe8; KinesisStreamParameters?: AWSPipesPipe10; ManagedStreamingKafkaParameters?: AWSPipesPipe11; RabbitMQBrokerParameters?: AWSPipesPipe13; SelfManagedKafkaParameters?: AWSPipesPipe14; SqsQueueParameters?: AWSPipesPipe17; } export interface AWSPipesPipe4 { BatchSize?: number; Credentials: AWSPipesPipe5; MaximumBatchingWindowInSeconds?: number; QueueName: string; } export interface AWSPipesPipe5 { BasicAuth: string; } export interface AWSPipesPipe6 { BatchSize?: number; DeadLetterConfig?: AWSPipesPipe7; MaximumBatchingWindowInSeconds?: number; MaximumRecordAgeInSeconds?: number; MaximumRetryAttempts?: number; OnPartialBatchItemFailure?: string; ParallelizationFactor?: number; StartingPosition: string; } export interface AWSPipesPipe7 { Arn?: string; } export interface AWSPipesPipe8 { Filters?: AWSPipesPipe9[]; } export interface AWSPipesPipe9 { Pattern?: string; } export interface AWSPipesPipe10 { BatchSize?: number; DeadLetterConfig?: AWSPipesPipe7; MaximumBatchingWindowInSeconds?: number; MaximumRecordAgeInSeconds?: number; MaximumRetryAttempts?: number; OnPartialBatchItemFailure?: string; ParallelizationFactor?: number; StartingPosition: string; StartingPositionTimestamp?: string; } export interface AWSPipesPipe11 { BatchSize?: number; ConsumerGroupID?: string; Credentials?: AWSPipesPipe12; MaximumBatchingWindowInSeconds?: number; StartingPosition?: string; TopicName: string; } export interface AWSPipesPipe12 { ClientCertificateTlsAuth?: string; SaslScram512Auth?: string; } export interface AWSPipesPipe13 { BatchSize?: number; Credentials: AWSPipesPipe5; MaximumBatchingWindowInSeconds?: number; QueueName: string; VirtualHost?: string; } export interface AWSPipesPipe14 { AdditionalBootstrapServers?: string[]; BatchSize?: number; ConsumerGroupID?: string; Credentials?: AWSPipesPipe15; MaximumBatchingWindowInSeconds?: number; ServerRootCaCertificate?: string; StartingPosition?: string; TopicName: string; Vpc?: AWSPipesPipe16; } export interface AWSPipesPipe15 { BasicAuth?: string; ClientCertificateTlsAuth?: string; SaslScram256Auth?: string; SaslScram512Auth?: string; } export interface AWSPipesPipe16 { SecurityGroup?: string[]; Subnets?: string[]; } export interface AWSPipesPipe17 { BatchSize?: number; MaximumBatchingWindowInSeconds?: number; } export interface AWSPipesPipe18 { BatchJobParameters?: AWSPipesPipe19; CloudWatchLogsParameters?: AWSPipesPipe26; EcsTaskParameters?: AWSPipesPipe27; EventBridgeEventBusParameters?: AWSPipesPipe40; HttpParameters?: AWSPipesPipe41; InputTemplate?: string; KinesisStreamParameters?: AWSPipesPipe42; LambdaFunctionParameters?: AWSPipesPipe43; RedshiftDataParameters?: AWSPipesPipe44; SageMakerPipelineParameters?: AWSPipesPipe45; SqsQueueParameters?: AWSPipesPipe47; StepFunctionStateMachineParameters?: AWSPipesPipe48; } export interface AWSPipesPipe19 { ArrayProperties?: AWSPipesPipe20; ContainerOverrides?: AWSPipesPipe21; DependsOn?: AWSPipesPipe24[]; JobDefinition: string; JobName: string; Parameters?: { [k: string]: unknown; }; RetryStrategy?: AWSPipesPipe25; } export interface AWSPipesPipe20 { Size?: number; } export interface AWSPipesPipe21 { Command?: string[]; Environment?: AWSPipesPipe22[]; InstanceType?: string; ResourceRequirements?: AWSPipesPipe23[]; } export interface AWSPipesPipe22 { Name?: string; Value?: string; } export interface AWSPipesPipe23 { Type: string; Value: string; } export interface AWSPipesPipe24 { JobId?: string; Type?: string; } export interface AWSPipesPipe25 { Attempts?: number; } export interface AWSPipesPipe26 { LogStreamName?: string; Timestamp?: string; } export interface AWSPipesPipe27 { CapacityProviderStrategy?: AWSPipesPipe28[]; EnableECSManagedTags?: boolean; EnableExecuteCommand?: boolean; Group?: string; LaunchType?: string; NetworkConfiguration?: AWSPipesPipe29; Overrides?: AWSPipesPipe31; PlacementConstraints?: AWSPipesPipe38[]; PlacementStrategy?: AWSPipesPipe39[]; PlatformVersion?: string; PropagateTags?: string; ReferenceId?: string; Tags?: Tag[]; TaskCount?: number; TaskDefinitionArn: string; } export interface AWSPipesPipe28 { Base?: number; CapacityProvider: string; Weight?: number; } export interface AWSPipesPipe29 { AwsvpcConfiguration?: AWSPipesPipe30; } export interface AWSPipesPipe30 { AssignPublicIp?: string; SecurityGroups?: string[]; Subnets: string[]; } export interface AWSPipesPipe31 { ContainerOverrides?: AWSPipesPipe32[]; Cpu?: string; EphemeralStorage?: AWSPipesPipe36; ExecutionRoleArn?: string; InferenceAcceleratorOverrides?: AWSPipesPipe37[]; Memory?: string; TaskRoleArn?: string; } export interface AWSPipesPipe32 { Command?: string[]; Cpu?: number; Environment?: AWSPipesPipe33[]; EnvironmentFiles?: AWSPipesPipe34[]; Memory?: number; MemoryReservation?: number; Name?: string; ResourceRequirements?: AWSPipesPipe35[]; } export interface AWSPipesPipe33 { Name?: string; Value?: string; } export interface AWSPipesPipe34 { Type: string; Value: string; } export interface AWSPipesPipe35 { Type: string; Value: string; } export interface AWSPipesPipe36 { SizeInGiB: number; } export interface AWSPipesPipe37 { DeviceName?: string; DeviceType?: string; } export interface AWSPipesPipe38 { Expression?: string; Type?: string; } export interface AWSPipesPipe39 { Field?: string; Type?: string; } export interface AWSPipesPipe40 { DetailType?: string; EndpointId?: string; Resources?: string[]; Source?: string; Time?: string; } export interface AWSPipesPipe41 { HeaderParameters?: { [k: string]: unknown; }; PathParameterValues?: string[]; QueryStringParameters?: { [k: string]: unknown; }; } export interface AWSPipesPipe42 { PartitionKey: string; } export interface AWSPipesPipe43 { InvocationType?: string; } export interface AWSPipesPipe44 { Database: string; DbUser?: string; SecretManagerArn?: string; Sqls: string[]; StatementName?: string; WithEvent?: boolean; } export interface AWSPipesPipe45 { PipelineParameterList?: AWSPipesPipe46[]; } export interface AWSPipesPipe46 { Name: string; Value: string; } export interface AWSPipesPipe47 { MessageDeduplicationId?: string; MessageGroupId?: string; } export interface AWSPipesPipe48 { InvocationType?: string; } export interface AWSQLDBLedger { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeletionProtection?: boolean; KmsKey?: string; Name?: string; PermissionsMode: string; Tags?: Tag[]; }; Type: 'AWS::QLDB::Ledger'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSQLDBStream { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ExclusiveEndTime?: string; InclusiveStartTime: string; KinesisConfiguration: AWSQLDBStream1; LedgerName: string; RoleArn: string; StreamName: string; Tags?: Tag[]; }; Type: 'AWS::QLDB::Stream'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSQLDBStream1 { AggregationEnabled?: boolean; StreamArn?: string; } export interface AWSQuickSightAnalysis { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AnalysisId: string; AwsAccountId: string; Errors?: AWSQuickSightAnalysis1[]; Name?: string; Parameters?: AWSQuickSightAnalysis2; Permissions?: AWSQuickSightAnalysis7[]; SourceEntity: AWSQuickSightAnalysis8; Tags?: Tag[]; ThemeArn?: string; }; Type: 'AWS::QuickSight::Analysis'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSQuickSightAnalysis1 { Message?: string; Type?: string; } export interface AWSQuickSightAnalysis2 { DateTimeParameters?: AWSQuickSightAnalysis3[]; DecimalParameters?: AWSQuickSightAnalysis4[]; IntegerParameters?: AWSQuickSightAnalysis5[]; StringParameters?: AWSQuickSightAnalysis6[]; } export interface AWSQuickSightAnalysis3 { Name: string; Values: string[]; } export interface AWSQuickSightAnalysis4 { Name: string; Values: number[]; } export interface AWSQuickSightAnalysis5 { Name: string; Values: number[]; } export interface AWSQuickSightAnalysis6 { Name: string; Values: string[]; } export interface AWSQuickSightAnalysis7 { Actions: string[]; Principal: string; } export interface AWSQuickSightAnalysis8 { SourceTemplate?: AWSQuickSightAnalysis9; } export interface AWSQuickSightAnalysis9 { Arn: string; DataSetReferences: AWSQuickSightAnalysis10[]; } export interface AWSQuickSightAnalysis10 { DataSetArn: string; DataSetPlaceholder: string; } export interface AWSQuickSightDashboard { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AwsAccountId: string; DashboardId: string; DashboardPublishOptions?: AWSQuickSightDashboard1; Name?: string; Parameters?: AWSQuickSightDashboard5; Permissions?: AWSQuickSightDashboard10[]; SourceEntity: AWSQuickSightDashboard11; Tags?: Tag[]; ThemeArn?: string; VersionDescription?: string; }; Type: 'AWS::QuickSight::Dashboard'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSQuickSightDashboard1 { AdHocFilteringOption?: AWSQuickSightDashboard2; ExportToCSVOption?: AWSQuickSightDashboard3; SheetControlsOption?: AWSQuickSightDashboard4; } export interface AWSQuickSightDashboard2 { AvailabilityStatus?: string; } export interface AWSQuickSightDashboard3 { AvailabilityStatus?: string; } export interface AWSQuickSightDashboard4 { VisibilityState?: string; } export interface AWSQuickSightDashboard5 { DateTimeParameters?: AWSQuickSightDashboard6[]; DecimalParameters?: AWSQuickSightDashboard7[]; IntegerParameters?: AWSQuickSightDashboard8[]; StringParameters?: AWSQuickSightDashboard9[]; } export interface AWSQuickSightDashboard6 { Name: string; Values: string[]; } export interface AWSQuickSightDashboard7 { Name: string; Values: number[]; } export interface AWSQuickSightDashboard8 { Name: string; Values: number[]; } export interface AWSQuickSightDashboard9 { Name: string; Values: string[]; } export interface AWSQuickSightDashboard10 { Actions: string[]; Principal: string; } export interface AWSQuickSightDashboard11 { SourceTemplate?: AWSQuickSightDashboard12; } export interface AWSQuickSightDashboard12 { Arn: string; DataSetReferences: AWSQuickSightDashboard13[]; } export interface AWSQuickSightDashboard13 { DataSetArn: string; DataSetPlaceholder: string; } export interface AWSQuickSightDataSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AwsAccountId?: string; ColumnGroups?: AWSQuickSightDataSet1[]; ColumnLevelPermissionRules?: AWSQuickSightDataSet3[]; DataSetId?: string; DataSetUsageConfiguration?: AWSQuickSightDataSet4; FieldFolders?: { [k: string]: AWSQuickSightDataSet5; }; ImportMode?: string; IngestionWaitPolicy?: AWSQuickSightDataSet6; LogicalTableMap?: { [k: string]: AWSQuickSightDataSet7; }; Name?: string; Permissions?: AWSQuickSightDataSet21[]; PhysicalTableMap?: { [k: string]: AWSQuickSightDataSet22; }; RowLevelPermissionDataSet?: AWSQuickSightDataSet28; Tags?: Tag[]; }; Type: 'AWS::QuickSight::DataSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSQuickSightDataSet1 { GeoSpatialColumnGroup?: AWSQuickSightDataSet2; } export interface AWSQuickSightDataSet2 { Columns: string[]; CountryCode?: string; Name: string; } export interface AWSQuickSightDataSet3 { ColumnNames?: string[]; Principals?: string[]; } export interface AWSQuickSightDataSet4 { DisableUseAsDirectQuerySource?: boolean; DisableUseAsImportedSource?: boolean; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSQuickSightDataSet5 { Columns?: string[]; Description?: string; } export interface AWSQuickSightDataSet6 { IngestionWaitTimeInHours?: number; WaitForSpiceIngestion?: boolean; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSQuickSightDataSet7 { Alias: string; DataTransforms?: AWSQuickSightDataSet8[]; Source: AWSQuickSightDataSet18; } export interface AWSQuickSightDataSet8 { CastColumnTypeOperation?: AWSQuickSightDataSet9; CreateColumnsOperation?: AWSQuickSightDataSet10; FilterOperation?: AWSQuickSightDataSet12; ProjectOperation?: AWSQuickSightDataSet13; RenameColumnOperation?: AWSQuickSightDataSet14; TagColumnOperation?: AWSQuickSightDataSet15; } export interface AWSQuickSightDataSet9 { ColumnName: string; Format?: string; NewColumnType: string; } export interface AWSQuickSightDataSet10 { Columns: AWSQuickSightDataSet11[]; } export interface AWSQuickSightDataSet11 { ColumnId: string; ColumnName: string; Expression: string; } export interface AWSQuickSightDataSet12 { ConditionExpression: string; } export interface AWSQuickSightDataSet13 { ProjectedColumns: string[]; } export interface AWSQuickSightDataSet14 { ColumnName: string; NewColumnName: string; } export interface AWSQuickSightDataSet15 { ColumnName: string; Tags: AWSQuickSightDataSet16[]; } export interface AWSQuickSightDataSet16 { ColumnDescription?: AWSQuickSightDataSet17; ColumnGeographicRole?: string; } export interface AWSQuickSightDataSet17 { Text?: string; } export interface AWSQuickSightDataSet18 { DataSetArn?: string; JoinInstruction?: AWSQuickSightDataSet19; PhysicalTableId?: string; } export interface AWSQuickSightDataSet19 { LeftJoinKeyProperties?: AWSQuickSightDataSet20; LeftOperand: string; OnClause: string; RightJoinKeyProperties?: AWSQuickSightDataSet20; RightOperand: string; Type: string; } export interface AWSQuickSightDataSet20 { UniqueKey?: boolean; } export interface AWSQuickSightDataSet21 { Actions: string[]; Principal: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSQuickSightDataSet22 { CustomSql?: AWSQuickSightDataSet23; RelationalTable?: AWSQuickSightDataSet25; S3Source?: AWSQuickSightDataSet26; } export interface AWSQuickSightDataSet23 { Columns: AWSQuickSightDataSet24[]; DataSourceArn: string; Name: string; SqlQuery: string; } export interface AWSQuickSightDataSet24 { Name: string; Type: string; } export interface AWSQuickSightDataSet25 { Catalog?: string; DataSourceArn: string; InputColumns: AWSQuickSightDataSet24[]; Name: string; Schema?: string; } export interface AWSQuickSightDataSet26 { DataSourceArn: string; InputColumns: AWSQuickSightDataSet24[]; UploadSettings?: AWSQuickSightDataSet27; } export interface AWSQuickSightDataSet27 { ContainsHeader?: boolean; Delimiter?: string; Format?: string; StartFromRow?: number; TextQualifier?: string; } export interface AWSQuickSightDataSet28 { Arn: string; FormatVersion?: string; Namespace?: string; PermissionPolicy: string; } export interface AWSQuickSightDataSource { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AlternateDataSourceParameters?: AWSQuickSightDataSource1[]; AwsAccountId?: string; Credentials?: AWSQuickSightDataSource21; DataSourceId?: string; DataSourceParameters?: AWSQuickSightDataSource1; ErrorInfo?: AWSQuickSightDataSource23; Name?: string; Permissions?: AWSQuickSightDataSource24[]; SslProperties?: AWSQuickSightDataSource25; Tags?: Tag[]; Type?: string; VpcConnectionProperties?: AWSQuickSightDataSource26; }; Type: 'AWS::QuickSight::DataSource'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSQuickSightDataSource1 { AmazonElasticsearchParameters?: AWSQuickSightDataSource2; AmazonOpenSearchParameters?: AWSQuickSightDataSource3; AthenaParameters?: AWSQuickSightDataSource4; AuroraParameters?: AWSQuickSightDataSource5; AuroraPostgreSqlParameters?: AWSQuickSightDataSource6; DatabricksParameters?: AWSQuickSightDataSource7; MariaDbParameters?: AWSQuickSightDataSource8; MySqlParameters?: AWSQuickSightDataSource9; OracleParameters?: AWSQuickSightDataSource10; PostgreSqlParameters?: AWSQuickSightDataSource11; PrestoParameters?: AWSQuickSightDataSource12; RdsParameters?: AWSQuickSightDataSource13; RedshiftParameters?: AWSQuickSightDataSource14; S3Parameters?: AWSQuickSightDataSource15; SnowflakeParameters?: AWSQuickSightDataSource17; SparkParameters?: AWSQuickSightDataSource18; SqlServerParameters?: AWSQuickSightDataSource19; TeradataParameters?: AWSQuickSightDataSource20; } export interface AWSQuickSightDataSource2 { Domain: string; } export interface AWSQuickSightDataSource3 { Domain: string; } export interface AWSQuickSightDataSource4 { WorkGroup?: string; } export interface AWSQuickSightDataSource5 { Database: string; Host: string; Port: number; } export interface AWSQuickSightDataSource6 { Database: string; Host: string; Port: number; } export interface AWSQuickSightDataSource7 { Host: string; Port: number; SqlEndpointPath: string; } export interface AWSQuickSightDataSource8 { Database: string; Host: string; Port: number; } export interface AWSQuickSightDataSource9 { Database: string; Host: string; Port: number; } export interface AWSQuickSightDataSource10 { Database: string; Host: string; Port: number; } export interface AWSQuickSightDataSource11 { Database: string; Host: string; Port: number; } export interface AWSQuickSightDataSource12 { Catalog: string; Host: string; Port: number; } export interface AWSQuickSightDataSource13 { Database: string; InstanceId: string; } export interface AWSQuickSightDataSource14 { ClusterId?: string; Database: string; Host?: string; Port?: number; } export interface AWSQuickSightDataSource15 { ManifestFileLocation: AWSQuickSightDataSource16; } export interface AWSQuickSightDataSource16 { Bucket: string; Key: string; } export interface AWSQuickSightDataSource17 { Database: string; Host: string; Warehouse: string; } export interface AWSQuickSightDataSource18 { Host: string; Port: number; } export interface AWSQuickSightDataSource19 { Database: string; Host: string; Port: number; } export interface AWSQuickSightDataSource20 { Database: string; Host: string; Port: number; } export interface AWSQuickSightDataSource21 { CopySourceArn?: string; CredentialPair?: AWSQuickSightDataSource22; SecretArn?: string; } export interface AWSQuickSightDataSource22 { AlternateDataSourceParameters?: AWSQuickSightDataSource1[]; Password: string; Username: string; } export interface AWSQuickSightDataSource23 { Message?: string; Type?: string; } export interface AWSQuickSightDataSource24 { Actions: string[]; Principal: string; } export interface AWSQuickSightDataSource25 { DisableSsl?: boolean; } export interface AWSQuickSightDataSource26 { VpcConnectionArn: string; } export interface AWSQuickSightTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AwsAccountId: string; Name?: string; Permissions?: AWSQuickSightTemplate1[]; SourceEntity: AWSQuickSightTemplate2; Tags?: Tag[]; TemplateId: string; VersionDescription?: string; }; Type: 'AWS::QuickSight::Template'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSQuickSightTemplate1 { Actions: string[]; Principal: string; } export interface AWSQuickSightTemplate2 { SourceAnalysis?: AWSQuickSightTemplate3; SourceTemplate?: AWSQuickSightTemplate5; } export interface AWSQuickSightTemplate3 { Arn: string; DataSetReferences: AWSQuickSightTemplate4[]; } export interface AWSQuickSightTemplate4 { DataSetArn: string; DataSetPlaceholder: string; } export interface AWSQuickSightTemplate5 { Arn: string; } export interface AWSQuickSightTheme { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AwsAccountId: string; BaseThemeId?: string; Configuration?: AWSQuickSightTheme1; Name?: string; Permissions?: AWSQuickSightTheme12[]; Tags?: Tag[]; ThemeId: string; VersionDescription?: string; }; Type: 'AWS::QuickSight::Theme'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSQuickSightTheme1 { DataColorPalette?: AWSQuickSightTheme2; Sheet?: AWSQuickSightTheme3; Typography?: AWSQuickSightTheme9; UIColorPalette?: AWSQuickSightTheme11; } export interface AWSQuickSightTheme2 { Colors?: string[]; EmptyFillColor?: string; MinMaxGradient?: string[]; } export interface AWSQuickSightTheme3 { Tile?: AWSQuickSightTheme4; TileLayout?: AWSQuickSightTheme6; } export interface AWSQuickSightTheme4 { Border?: AWSQuickSightTheme5; } export interface AWSQuickSightTheme5 { Show?: boolean; } export interface AWSQuickSightTheme6 { Gutter?: AWSQuickSightTheme7; Margin?: AWSQuickSightTheme8; } export interface AWSQuickSightTheme7 { Show?: boolean; } export interface AWSQuickSightTheme8 { Show?: boolean; } export interface AWSQuickSightTheme9 { FontFamilies?: AWSQuickSightTheme10[]; } export interface AWSQuickSightTheme10 { FontFamily?: string; } export interface AWSQuickSightTheme11 { Accent?: string; AccentForeground?: string; Danger?: string; DangerForeground?: string; Dimension?: string; DimensionForeground?: string; Measure?: string; MeasureForeground?: string; PrimaryBackground?: string; PrimaryForeground?: string; SecondaryBackground?: string; SecondaryForeground?: string; Success?: string; SuccessForeground?: string; Warning?: string; WarningForeground?: string; } export interface AWSQuickSightTheme12 { Actions: string[]; Principal: string; } export interface AWSRAMResourceShare { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowExternalPrincipals?: boolean; Name: string; PermissionArns?: string[]; Principals?: string[]; ResourceArns?: string[]; Tags?: Tag[]; }; Type: 'AWS::RAM::ResourceShare'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AllocatedStorage?: number; AssociatedRoles?: AWSRDSDBCluster1[]; AutoMinorVersionUpgrade?: boolean; AvailabilityZones?: string[]; BacktrackWindow?: number; BackupRetentionPeriod?: number; CopyTagsToSnapshot?: boolean; DBClusterIdentifier?: string; DBClusterInstanceClass?: string; DBClusterParameterGroupName?: string; DBInstanceParameterGroupName?: string; DBSubnetGroupName?: string; DBSystemId?: string; DatabaseName?: string; DeletionProtection?: boolean; Domain?: string; DomainIAMRoleName?: string; EnableCloudwatchLogsExports?: string[]; EnableHttpEndpoint?: boolean; EnableIAMDatabaseAuthentication?: boolean; Engine?: string; EngineMode?: string; EngineVersion?: string; GlobalClusterIdentifier?: string; Iops?: number; KmsKeyId?: string; ManageMasterUserPassword?: boolean; MasterUserPassword?: string; MasterUserSecret?: AWSRDSDBCluster2; MasterUsername?: string; MonitoringInterval?: number; MonitoringRoleArn?: string; NetworkType?: string; PerformanceInsightsEnabled?: boolean; PerformanceInsightsKmsKeyId?: string; PerformanceInsightsRetentionPeriod?: number; Port?: number; PreferredBackupWindow?: string; PreferredMaintenanceWindow?: string; PubliclyAccessible?: boolean; ReplicationSourceIdentifier?: string; RestoreType?: string; ScalingConfiguration?: AWSRDSDBCluster3; ServerlessV2ScalingConfiguration?: AWSRDSDBCluster4; SnapshotIdentifier?: string; SourceDBClusterIdentifier?: string; SourceRegion?: string; StorageEncrypted?: boolean; StorageType?: string; Tags?: Tag[]; UseLatestRestorableTime?: boolean; VpcSecurityGroupIds?: string[]; }; Type: 'AWS::RDS::DBCluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBCluster1 { FeatureName?: string; RoleArn: string; } export interface AWSRDSDBCluster2 { KmsKeyId?: string; SecretArn?: string; } export interface AWSRDSDBCluster3 { AutoPause?: boolean; MaxCapacity?: number; MinCapacity?: number; SecondsBeforeTimeout?: number; SecondsUntilAutoPause?: number; TimeoutAction?: string; } export interface AWSRDSDBCluster4 { MaxCapacity?: number; MinCapacity?: number; } export interface AWSRDSDBClusterParameterGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DBClusterParameterGroupName?: string; Description: string; Family: string; Parameters: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::RDS::DBClusterParameterGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AllocatedStorage?: string; AllowMajorVersionUpgrade?: boolean; AssociatedRoles?: AWSRDSDBInstance1[]; AutoMinorVersionUpgrade?: boolean; AvailabilityZone?: string; BackupRetentionPeriod?: number; CACertificateIdentifier?: string; CharacterSetName?: string; CopyTagsToSnapshot?: boolean; CustomIAMInstanceProfile?: string; DBClusterIdentifier?: string; DBClusterSnapshotIdentifier?: string; DBInstanceClass?: string; DBInstanceIdentifier?: string; DBName?: string; DBParameterGroupName?: string; DBSecurityGroups?: string[]; DBSnapshotIdentifier?: string; DBSubnetGroupName?: string; DeleteAutomatedBackups?: boolean; DeletionProtection?: boolean; Domain?: string; DomainIAMRoleName?: string; EnableCloudwatchLogsExports?: string[]; EnableIAMDatabaseAuthentication?: boolean; EnablePerformanceInsights?: boolean; Endpoint?: AWSRDSDBInstance2; Engine?: string; EngineVersion?: string; Iops?: number; KmsKeyId?: string; LicenseModel?: string; ManageMasterUserPassword?: boolean; MasterUserPassword?: string; MasterUserSecret?: AWSRDSDBInstance3; MasterUsername?: string; MaxAllocatedStorage?: number; MonitoringInterval?: number; MonitoringRoleArn?: string; MultiAZ?: boolean; NcharCharacterSetName?: string; NetworkType?: string; OptionGroupName?: string; PerformanceInsightsKMSKeyId?: string; PerformanceInsightsRetentionPeriod?: number; Port?: string; PreferredBackupWindow?: string; PreferredMaintenanceWindow?: string; ProcessorFeatures?: AWSRDSDBInstance4[]; PromotionTier?: number; PubliclyAccessible?: boolean; ReplicaMode?: string; RestoreTime?: string; SourceDBInstanceAutomatedBackupsArn?: string; SourceDBInstanceIdentifier?: string; SourceDbiResourceId?: string; SourceRegion?: string; StorageEncrypted?: boolean; StorageThroughput?: number; StorageType?: string; Tags?: Tag[]; Timezone?: string; UseDefaultProcessorFeatures?: boolean; UseLatestRestorableTime?: boolean; VPCSecurityGroups?: string[]; }; Type: 'AWS::RDS::DBInstance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBInstance1 { FeatureName: string; RoleArn: string; } export interface AWSRDSDBInstance2 { Address?: string; HostedZoneId?: string; Port?: string; } export interface AWSRDSDBInstance3 { KmsKeyId?: string; SecretArn?: string; } export interface AWSRDSDBInstance4 { Name?: string; Value?: string; } export interface AWSRDSDBParameterGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DBParameterGroupName?: string; Description: string; Family: string; Parameters?: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::RDS::DBParameterGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBProxy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Auth: AWSRDSDBProxy1[]; DBProxyName: string; DebugLogging?: boolean; EngineFamily: string; IdleClientTimeout?: number; RequireTLS?: boolean; RoleArn: string; Tags?: AWSRDSDBProxy2[]; VpcSecurityGroupIds?: string[]; VpcSubnetIds: string[]; }; Type: 'AWS::RDS::DBProxy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBProxy1 { AuthScheme?: string; ClientPasswordAuthType?: string; Description?: string; IAMAuth?: string; SecretArn?: string; UserName?: string; } export interface AWSRDSDBProxy2 { Key?: string; Value?: string; } export interface AWSRDSDBProxyEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DBProxyEndpointName: string; DBProxyName: string; Tags?: AWSRDSDBProxyEndpoint1[]; TargetRole?: string; VpcSecurityGroupIds?: string[]; VpcSubnetIds: string[]; }; Type: 'AWS::RDS::DBProxyEndpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBProxyEndpoint1 { Key?: string; Value?: string; } export interface AWSRDSDBProxyTargetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectionPoolConfigurationInfo?: AWSRDSDBProxyTargetGroup1; DBClusterIdentifiers?: string[]; DBInstanceIdentifiers?: string[]; DBProxyName: string; TargetGroupName: string; }; Type: 'AWS::RDS::DBProxyTargetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBProxyTargetGroup1 { ConnectionBorrowTimeout?: number; InitQuery?: string; MaxConnectionsPercent?: number; MaxIdleConnectionsPercent?: number; SessionPinningFilters?: string[]; } export interface AWSRDSDBSecurityGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DBSecurityGroupIngress: AWSRDSDBSecurityGroup1[]; EC2VpcId?: string; GroupDescription: string; Tags?: Tag[]; }; Type: 'AWS::RDS::DBSecurityGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBSecurityGroup1 { CIDRIP?: string; EC2SecurityGroupId?: string; EC2SecurityGroupName?: string; EC2SecurityGroupOwnerId?: string; } export interface AWSRDSDBSecurityGroupIngress { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CIDRIP?: string; DBSecurityGroupName: string; EC2SecurityGroupId?: string; EC2SecurityGroupName?: string; EC2SecurityGroupOwnerId?: string; }; Type: 'AWS::RDS::DBSecurityGroupIngress'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSDBSubnetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DBSubnetGroupDescription: string; DBSubnetGroupName?: string; SubnetIds: string[]; Tags?: Tag[]; }; Type: 'AWS::RDS::DBSubnetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSEventSubscription { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Enabled?: boolean; EventCategories?: string[]; SnsTopicArn: string; SourceIds?: string[]; SourceType?: string; SubscriptionName?: string; Tags?: Tag[]; }; Type: 'AWS::RDS::EventSubscription'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSGlobalCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DeletionProtection?: boolean; Engine?: string; EngineVersion?: string; GlobalClusterIdentifier?: string; SourceDBClusterIdentifier?: string; StorageEncrypted?: boolean; }; Type: 'AWS::RDS::GlobalCluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSOptionGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EngineName: string; MajorEngineVersion: string; OptionConfigurations?: AWSRDSOptionGroup1[]; OptionGroupDescription: string; OptionGroupName?: string; Tags?: Tag[]; }; Type: 'AWS::RDS::OptionGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRDSOptionGroup1 { DBSecurityGroupMemberships?: string[]; OptionName: string; OptionSettings?: AWSRDSOptionGroup2[]; OptionVersion?: string; Port?: number; VpcSecurityGroupMemberships?: string[]; } export interface AWSRDSOptionGroup2 { Name?: string; Value?: string; } export interface AWSRUMAppMonitor { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppMonitorConfiguration?: AWSRUMAppMonitor1; CwLogEnabled?: boolean; Domain: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::RUM::AppMonitor'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRUMAppMonitor1 { AllowCookies?: boolean; EnableXRay?: boolean; ExcludedPages?: string[]; FavoritePages?: string[]; GuestRoleArn?: string; IdentityPoolId?: string; IncludedPages?: string[]; MetricDestinations?: AWSRUMAppMonitor2[]; SessionSampleRate?: number; Telemetries?: string[]; } export interface AWSRUMAppMonitor2 { Destination: string; DestinationArn?: string; IamRoleArn?: string; MetricDefinitions?: AWSRUMAppMonitor3[]; } export interface AWSRUMAppMonitor3 { DimensionKeys?: { [k: string]: unknown; }; EventPattern?: string; Name: string; UnitLabel?: string; ValueKey?: string; } export interface AWSRedshiftCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowVersionUpgrade?: boolean; AquaConfigurationStatus?: string; AutomatedSnapshotRetentionPeriod?: number; AvailabilityZone?: string; AvailabilityZoneRelocation?: boolean; AvailabilityZoneRelocationStatus?: string; Classic?: boolean; ClusterIdentifier?: string; ClusterParameterGroupName?: string; ClusterSecurityGroups?: string[]; ClusterSubnetGroupName?: string; ClusterType: string; ClusterVersion?: string; DBName: string; DeferMaintenance?: boolean; DeferMaintenanceDuration?: number; DeferMaintenanceEndTime?: string; DeferMaintenanceStartTime?: string; DestinationRegion?: string; ElasticIp?: string; Encrypted?: boolean; Endpoint?: AWSRedshiftCluster1; EnhancedVpcRouting?: boolean; HsmClientCertificateIdentifier?: string; HsmConfigurationIdentifier?: string; IamRoles?: string[]; KmsKeyId?: string; LoggingProperties?: AWSRedshiftCluster2; MaintenanceTrackName?: string; ManualSnapshotRetentionPeriod?: number; MasterUserPassword: string; MasterUsername: string; NodeType: string; NumberOfNodes?: number; OwnerAccount?: string; Port?: number; PreferredMaintenanceWindow?: string; PubliclyAccessible?: boolean; ResourceAction?: string; RevisionTarget?: string; RotateEncryptionKey?: boolean; SnapshotClusterIdentifier?: string; SnapshotCopyGrantName?: string; SnapshotCopyManual?: boolean; SnapshotCopyRetentionPeriod?: number; SnapshotIdentifier?: string; Tags?: Tag[]; VpcSecurityGroupIds?: string[]; }; Type: 'AWS::Redshift::Cluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftCluster1 { Address?: string; Port?: string; } export interface AWSRedshiftCluster2 { BucketName: string; S3KeyPrefix?: string; } export interface AWSRedshiftClusterParameterGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description: string; ParameterGroupFamily: string; Parameters?: AWSRedshiftClusterParameterGroup1[]; Tags?: Tag[]; }; Type: 'AWS::Redshift::ClusterParameterGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftClusterParameterGroup1 { ParameterName: string; ParameterValue: string; } export interface AWSRedshiftClusterSecurityGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description: string; Tags?: Tag[]; }; Type: 'AWS::Redshift::ClusterSecurityGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftClusterSecurityGroupIngress { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CIDRIP?: string; ClusterSecurityGroupName: string; EC2SecurityGroupName?: string; EC2SecurityGroupOwnerId?: string; }; Type: 'AWS::Redshift::ClusterSecurityGroupIngress'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftClusterSubnetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description: string; SubnetIds: string[]; Tags?: Tag[]; }; Type: 'AWS::Redshift::ClusterSubnetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftEndpointAccess { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClusterIdentifier: string; EndpointName: string; ResourceOwner?: string; SubnetGroupName: string; VpcEndpoint?: AWSRedshiftEndpointAccess1; VpcSecurityGroupIds: string[]; VpcSecurityGroups?: AWSRedshiftEndpointAccess3[]; }; Type: 'AWS::Redshift::EndpointAccess'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftEndpointAccess1 { NetworkInterfaces?: AWSRedshiftEndpointAccess2[]; VpcEndpointId?: string; VpcId?: string; } export interface AWSRedshiftEndpointAccess2 { AvailabilityZone?: string; NetworkInterfaceId?: string; PrivateIpAddress?: string; SubnetId?: string; } export interface AWSRedshiftEndpointAccess3 { Status?: string; VpcSecurityGroupId?: string; } export interface AWSRedshiftEndpointAuthorization { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Account: string; ClusterIdentifier: string; Force?: boolean; VpcIds?: string[]; }; Type: 'AWS::Redshift::EndpointAuthorization'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftEventSubscription { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Enabled?: boolean; EventCategories?: string[]; Severity?: string; SnsTopicArn?: string; SourceIds?: string[]; SourceType?: string; SubscriptionName: string; Tags?: Tag[]; }; Type: 'AWS::Redshift::EventSubscription'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftScheduledAction { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Enable?: boolean; EndTime?: string; IamRole?: string; Schedule?: string; ScheduledActionDescription?: string; ScheduledActionName: string; StartTime?: string; TargetAction?: AWSRedshiftScheduledAction1; }; Type: 'AWS::Redshift::ScheduledAction'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftScheduledAction1 { PauseCluster?: AWSRedshiftScheduledAction2; ResizeCluster?: AWSRedshiftScheduledAction3; ResumeCluster?: AWSRedshiftScheduledAction4; } export interface AWSRedshiftScheduledAction2 { ClusterIdentifier: string; } export interface AWSRedshiftScheduledAction3 { Classic?: boolean; ClusterIdentifier: string; ClusterType?: string; NodeType?: string; NumberOfNodes?: number; } export interface AWSRedshiftScheduledAction4 { ClusterIdentifier: string; } export interface AWSRedshiftServerlessNamespace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AdminUserPassword?: string; AdminUsername?: string; DbName?: string; DefaultIamRoleArn?: string; FinalSnapshotName?: string; FinalSnapshotRetentionPeriod?: number; IamRoles?: string[]; KmsKeyId?: string; LogExports?: string[]; Namespace?: AWSRedshiftServerlessNamespace1; NamespaceName: string; Tags?: Tag[]; }; Type: 'AWS::RedshiftServerless::Namespace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftServerlessNamespace1 { AdminUsername?: string; CreationDate?: string; DbName?: string; DefaultIamRoleArn?: string; IamRoles?: string[]; KmsKeyId?: string; LogExports?: string[]; NamespaceArn?: string; NamespaceId?: string; NamespaceName?: string; Status?: string; } export interface AWSRedshiftServerlessWorkgroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BaseCapacity?: number; ConfigParameters?: AWSRedshiftServerlessWorkgroup1[]; EnhancedVpcRouting?: boolean; NamespaceName?: string; PubliclyAccessible?: boolean; SecurityGroupIds?: string[]; SubnetIds?: string[]; Tags?: Tag[]; Workgroup?: AWSRedshiftServerlessWorkgroup2; WorkgroupName: string; }; Type: 'AWS::RedshiftServerless::Workgroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRedshiftServerlessWorkgroup1 { ParameterKey?: string; ParameterValue?: string; } export interface AWSRedshiftServerlessWorkgroup2 { BaseCapacity?: number; ConfigParameters?: AWSRedshiftServerlessWorkgroup1[]; CreationDate?: string; Endpoint?: AWSRedshiftServerlessWorkgroup3; EnhancedVpcRouting?: boolean; NamespaceName?: string; PubliclyAccessible?: boolean; SecurityGroupIds?: string[]; Status?: string; SubnetIds?: string[]; WorkgroupArn?: string; WorkgroupId?: string; WorkgroupName?: string; } export interface AWSRedshiftServerlessWorkgroup3 { Address?: string; Port?: number; VpcEndpoints?: AWSRedshiftServerlessWorkgroup4[]; } export interface AWSRedshiftServerlessWorkgroup4 { NetworkInterfaces?: AWSRedshiftServerlessWorkgroup5[]; VpcEndpointId?: string; VpcId?: string; } export interface AWSRedshiftServerlessWorkgroup5 { AvailabilityZone?: string; NetworkInterfaceId?: string; PrivateIpAddress?: string; SubnetId?: string; } export interface AWSRefactorSpacesApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ApiGatewayProxy?: AWSRefactorSpacesApplication1; EnvironmentIdentifier?: string; Name?: string; ProxyType?: string; Tags?: Tag[]; VpcId?: string; }; Type: 'AWS::RefactorSpaces::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRefactorSpacesApplication1 { EndpointType?: string; StageName?: string; } export interface AWSRefactorSpacesEnvironment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; Name?: string; NetworkFabricType?: string; Tags?: Tag[]; }; Type: 'AWS::RefactorSpaces::Environment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRefactorSpacesRoute { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationIdentifier: string; DefaultRoute?: AWSRefactorSpacesRoute1; EnvironmentIdentifier: string; RouteType?: string; ServiceIdentifier: string; Tags?: Tag[]; UriPathRoute?: AWSRefactorSpacesRoute2; }; Type: 'AWS::RefactorSpaces::Route'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRefactorSpacesRoute1 { ActivationState: string; } export interface AWSRefactorSpacesRoute2 { ActivationState: string; IncludeChildPaths?: boolean; Methods?: string[]; SourcePath?: string; } export interface AWSRefactorSpacesService { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplicationIdentifier: string; Description?: string; EndpointType?: string; EnvironmentIdentifier: string; LambdaEndpoint?: AWSRefactorSpacesService1; Name?: string; Tags?: Tag[]; UrlEndpoint?: AWSRefactorSpacesService2; VpcId?: string; }; Type: 'AWS::RefactorSpaces::Service'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRefactorSpacesService1 { Arn: string; } export interface AWSRefactorSpacesService2 { HealthUrl?: string; Url: string; } export interface AWSRekognitionCollection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CollectionId: string; Tags?: Tag[]; }; Type: 'AWS::Rekognition::Collection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRekognitionProject { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ProjectName: string; }; Type: 'AWS::Rekognition::Project'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRekognitionStreamProcessor { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BoundingBoxRegionsOfInterest?: AWSRekognitionStreamProcessor1[]; ConnectedHomeSettings?: AWSRekognitionStreamProcessor2; DataSharingPreference?: AWSRekognitionStreamProcessor3; FaceSearchSettings?: AWSRekognitionStreamProcessor4; KinesisDataStream?: AWSRekognitionStreamProcessor5; KinesisVideoStream: AWSRekognitionStreamProcessor6; KmsKeyId?: string; Name?: string; NotificationChannel?: AWSRekognitionStreamProcessor7; PolygonRegionsOfInterest?: { [k: string]: unknown; }; RoleArn: string; S3Destination?: AWSRekognitionStreamProcessor8; Tags?: Tag[]; }; Type: 'AWS::Rekognition::StreamProcessor'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRekognitionStreamProcessor1 { Height: number; Left: number; Top: number; Width: number; } export interface AWSRekognitionStreamProcessor2 { Labels: string[]; MinConfidence?: number; } export interface AWSRekognitionStreamProcessor3 { OptIn: boolean; } export interface AWSRekognitionStreamProcessor4 { CollectionId: string; FaceMatchThreshold?: number; } export interface AWSRekognitionStreamProcessor5 { Arn: string; } export interface AWSRekognitionStreamProcessor6 { Arn: string; } export interface AWSRekognitionStreamProcessor7 { Arn: string; } export interface AWSRekognitionStreamProcessor8 { BucketName: string; ObjectKeyPrefix?: string; } export interface AWSResilienceHubApp { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppAssessmentSchedule?: string; AppTemplateBody: string; Description?: string; Name: string; ResiliencyPolicyArn?: string; ResourceMappings: AWSResilienceHubApp1[]; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::ResilienceHub::App'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSResilienceHubApp1 { LogicalStackName?: string; MappingType: string; PhysicalResourceId: AWSResilienceHubApp2; ResourceName?: string; TerraformSourceName?: string; } export interface AWSResilienceHubApp2 { AwsAccountId?: string; AwsRegion?: string; Identifier: string; Type: string; } export interface AWSResilienceHubResiliencyPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataLocationConstraint?: string; Policy: { [k: string]: AWSResilienceHubResiliencyPolicy1; }; PolicyDescription?: string; PolicyName: string; Tags?: { [k: string]: unknown; }; Tier: string; }; Type: 'AWS::ResilienceHub::ResiliencyPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSResilienceHubResiliencyPolicy1 { RpoInSecs: number; RtoInSecs: number; } export interface AWSResourceExplorer2DefaultViewAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ViewArn: string; }; Type: 'AWS::ResourceExplorer2::DefaultViewAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSResourceExplorer2Index { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Tags?: { [k: string]: unknown; }; Type: string; }; Type: 'AWS::ResourceExplorer2::Index'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSResourceExplorer2View { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Filters?: AWSResourceExplorer2View1; IncludedProperties?: AWSResourceExplorer2View2[]; Tags?: { [k: string]: unknown; }; ViewName: string; }; Type: 'AWS::ResourceExplorer2::View'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSResourceExplorer2View1 { FilterString: string; } export interface AWSResourceExplorer2View2 { Name: string; } export interface AWSResourceGroupsGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Configuration?: AWSResourceGroupsGroup1[]; Description?: string; Name: string; ResourceQuery?: AWSResourceGroupsGroup3; Resources?: string[]; Tags?: Tag[]; }; Type: 'AWS::ResourceGroups::Group'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSResourceGroupsGroup1 { Parameters?: AWSResourceGroupsGroup2[]; Type?: string; } export interface AWSResourceGroupsGroup2 { Name?: string; Values?: string[]; } export interface AWSResourceGroupsGroup3 { Query?: AWSResourceGroupsGroup4; Type?: string; } export interface AWSResourceGroupsGroup4 { ResourceTypeFilters?: string[]; StackIdentifier?: string; TagFilters?: AWSResourceGroupsGroup5[]; } export interface AWSResourceGroupsGroup5 { Key?: string; Values?: string[]; } export interface AWSRoboMakerFleet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Name?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::RoboMaker::Fleet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoboMakerRobot { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Architecture: string; Fleet?: string; GreengrassGroupId: string; Name?: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::RoboMaker::Robot'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoboMakerRobotApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CurrentRevisionId?: string; Environment?: string; Name?: string; RobotSoftwareSuite: AWSRoboMakerRobotApplication1; Sources?: AWSRoboMakerRobotApplication2[]; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::RoboMaker::RobotApplication'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoboMakerRobotApplication1 { Name: string; Version?: string; } export interface AWSRoboMakerRobotApplication2 { Architecture: string; S3Bucket: string; S3Key: string; } export interface AWSRoboMakerRobotApplicationVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Application: string; CurrentRevisionId?: string; }; Type: 'AWS::RoboMaker::RobotApplicationVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoboMakerSimulationApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CurrentRevisionId?: string; Environment?: string; Name?: string; RenderingEngine?: AWSRoboMakerSimulationApplication1; RobotSoftwareSuite: AWSRoboMakerSimulationApplication2; SimulationSoftwareSuite: AWSRoboMakerSimulationApplication3; Sources?: AWSRoboMakerSimulationApplication4[]; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::RoboMaker::SimulationApplication'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoboMakerSimulationApplication1 { Name: string; Version: string; } export interface AWSRoboMakerSimulationApplication2 { Name: string; Version?: string; } export interface AWSRoboMakerSimulationApplication3 { Name: string; Version?: string; } export interface AWSRoboMakerSimulationApplication4 { Architecture: string; S3Bucket: string; S3Key: string; } export interface AWSRoboMakerSimulationApplicationVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Application: string; CurrentRevisionId?: string; }; Type: 'AWS::RoboMaker::SimulationApplicationVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRolesAnywhereCRL { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CrlData?: string; Enabled?: boolean; Name?: string; Tags?: Tag[]; TrustAnchorArn?: string; }; Type: 'AWS::RolesAnywhere::CRL'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRolesAnywhereProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DurationSeconds?: number; Enabled?: boolean; ManagedPolicyArns?: string[]; Name?: string; RequireInstanceProperties?: boolean; RoleArns?: string[]; SessionPolicy?: string; Tags?: Tag[]; }; Type: 'AWS::RolesAnywhere::Profile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRolesAnywhereTrustAnchor { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Enabled?: boolean; Name?: string; Source?: AWSRolesAnywhereTrustAnchor1; Tags?: Tag[]; }; Type: 'AWS::RolesAnywhere::TrustAnchor'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRolesAnywhereTrustAnchor1 { SourceData?: AWSRolesAnywhereTrustAnchor2; SourceType?: string; } export interface AWSRolesAnywhereTrustAnchor2 { AcmPcaArn?: string; X509CertificateData?: string; } export interface AWSRoute53CidrCollection { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Locations?: AWSRoute53CidrCollection1[]; Name: string; }; Type: 'AWS::Route53::CidrCollection'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53CidrCollection1 { CidrList: string[]; LocationName: string; } export interface AWSRoute53DNSSEC { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { HostedZoneId: string; }; Type: 'AWS::Route53::DNSSEC'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53HealthCheck { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { HealthCheckConfig: AWSRoute53HealthCheck1; HealthCheckTags?: AWSRoute53HealthCheck3[]; }; Type: 'AWS::Route53::HealthCheck'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53HealthCheck1 { AlarmIdentifier?: AWSRoute53HealthCheck2; ChildHealthChecks?: string[]; EnableSNI?: boolean; FailureThreshold?: number; FullyQualifiedDomainName?: string; HealthThreshold?: number; IPAddress?: string; InsufficientDataHealthStatus?: string; Inverted?: boolean; MeasureLatency?: boolean; Port?: number; Regions?: string[]; RequestInterval?: number; ResourcePath?: string; RoutingControlArn?: string; SearchString?: string; Type: string; } export interface AWSRoute53HealthCheck2 { Name: string; Region: string; } export interface AWSRoute53HealthCheck3 { Key: string; Value: string; } export interface AWSRoute53HostedZone { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { HostedZoneConfig?: AWSRoute53HostedZone1; HostedZoneTags?: AWSRoute53HostedZone2[]; Name?: string; QueryLoggingConfig?: AWSRoute53HostedZone3; VPCs?: AWSRoute53HostedZone4[]; }; Type: 'AWS::Route53::HostedZone'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53HostedZone1 { Comment?: string; } export interface AWSRoute53HostedZone2 { Key: string; Value: string; } export interface AWSRoute53HostedZone3 { CloudWatchLogsLogGroupArn: string; } export interface AWSRoute53HostedZone4 { VPCId: string; VPCRegion: string; } export interface AWSRoute53KeySigningKey { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { HostedZoneId: string; KeyManagementServiceArn: string; Name: string; Status: string; }; Type: 'AWS::Route53::KeySigningKey'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecordSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AliasTarget?: AWSRoute53RecordSet1; CidrRoutingConfig?: AWSRoute53RecordSet2; Comment?: string; Failover?: string; GeoLocation?: AWSRoute53RecordSet3; HealthCheckId?: string; HostedZoneId?: string; HostedZoneName?: string; MultiValueAnswer?: boolean; Name: string; Region?: string; ResourceRecords?: string[]; SetIdentifier?: string; TTL?: string; Type: string; Weight?: number; }; Type: 'AWS::Route53::RecordSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecordSet1 { DNSName: string; EvaluateTargetHealth?: boolean; HostedZoneId: string; } export interface AWSRoute53RecordSet2 { CollectionId: string; LocationName: string; } export interface AWSRoute53RecordSet3 { ContinentCode?: string; CountryCode?: string; SubdivisionCode?: string; } export interface AWSRoute53RecordSetGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Comment?: string; HostedZoneId?: string; HostedZoneName?: string; RecordSets?: AWSRoute53RecordSetGroup1[]; }; Type: 'AWS::Route53::RecordSetGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecordSetGroup1 { AliasTarget?: AWSRoute53RecordSetGroup2; CidrRoutingConfig?: AWSRoute53RecordSetGroup3; Failover?: string; GeoLocation?: AWSRoute53RecordSetGroup4; HealthCheckId?: string; HostedZoneId?: string; HostedZoneName?: string; MultiValueAnswer?: boolean; Name: string; Region?: string; ResourceRecords?: string[]; SetIdentifier?: string; TTL?: string; Type: string; Weight?: number; } export interface AWSRoute53RecordSetGroup2 { DNSName: string; EvaluateTargetHealth?: boolean; HostedZoneId: string; } export interface AWSRoute53RecordSetGroup3 { CollectionId: string; LocationName: string; } export interface AWSRoute53RecordSetGroup4 { ContinentCode?: string; CountryCode?: string; SubdivisionCode?: string; } export interface AWSRoute53RecoveryControlCluster { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ClusterEndpoints?: AWSRoute53RecoveryControlCluster1[]; Name?: string; Tags?: Tag[]; }; Type: 'AWS::Route53RecoveryControl::Cluster'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecoveryControlCluster1 { Endpoint?: string; Region?: string; } export interface AWSRoute53RecoveryControlControlPanel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClusterArn?: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::Route53RecoveryControl::ControlPanel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecoveryControlRoutingControl { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClusterArn?: string; ControlPanelArn?: string; Name: string; }; Type: 'AWS::Route53RecoveryControl::RoutingControl'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecoveryControlSafetyRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssertionRule?: AWSRoute53RecoveryControlSafetyRule1; ControlPanelArn: string; GatingRule?: AWSRoute53RecoveryControlSafetyRule2; Name: string; RuleConfig: AWSRoute53RecoveryControlSafetyRule3; Tags?: Tag[]; }; Type: 'AWS::Route53RecoveryControl::SafetyRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecoveryControlSafetyRule1 { AssertedControls: string[]; WaitPeriodMs: number; } export interface AWSRoute53RecoveryControlSafetyRule2 { GatingControls: string[]; TargetControls: string[]; WaitPeriodMs: number; } export interface AWSRoute53RecoveryControlSafetyRule3 { Inverted: boolean; Threshold: number; Type: string; } export interface AWSRoute53RecoveryReadinessCell { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { CellName?: string; Cells?: string[]; Tags?: Tag[]; }; Type: 'AWS::Route53RecoveryReadiness::Cell'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecoveryReadinessReadinessCheck { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ReadinessCheckName?: string; ResourceSetName?: string; Tags?: Tag[]; }; Type: 'AWS::Route53RecoveryReadiness::ReadinessCheck'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecoveryReadinessRecoveryGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Cells?: string[]; RecoveryGroupName?: string; Tags?: Tag[]; }; Type: 'AWS::Route53RecoveryReadiness::RecoveryGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecoveryReadinessResourceSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResourceSetName?: string; ResourceSetType: string; Resources: AWSRoute53RecoveryReadinessResourceSet1[]; Tags?: Tag[]; }; Type: 'AWS::Route53RecoveryReadiness::ResourceSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53RecoveryReadinessResourceSet1 { ComponentId?: string; DnsTargetResource?: AWSRoute53RecoveryReadinessResourceSet2; ReadinessScopes?: string[]; ResourceArn?: string; } export interface AWSRoute53RecoveryReadinessResourceSet2 { DomainName?: string; HostedZoneArn?: string; RecordSetId?: string; RecordType?: string; TargetResource?: AWSRoute53RecoveryReadinessResourceSet3; } export interface AWSRoute53RecoveryReadinessResourceSet3 { NLBResource?: AWSRoute53RecoveryReadinessResourceSet4; R53Resource?: AWSRoute53RecoveryReadinessResourceSet5; } export interface AWSRoute53RecoveryReadinessResourceSet4 { Arn?: string; } export interface AWSRoute53RecoveryReadinessResourceSet5 { DomainName?: string; RecordSetId?: string; } export interface AWSRoute53ResolverFirewallDomainList { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DomainFileUrl?: string; Domains?: string[]; Name?: string; Tags?: Tag[]; }; Type: 'AWS::Route53Resolver::FirewallDomainList'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53ResolverFirewallRuleGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { FirewallRules?: AWSRoute53ResolverFirewallRuleGroup1[]; Name?: string; Tags?: Tag[]; }; Type: 'AWS::Route53Resolver::FirewallRuleGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53ResolverFirewallRuleGroup1 { Action: string; BlockOverrideDnsType?: string; BlockOverrideDomain?: string; BlockOverrideTtl?: number; BlockResponse?: string; FirewallDomainListId: string; Priority: number; } export interface AWSRoute53ResolverFirewallRuleGroupAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { FirewallRuleGroupId: string; MutationProtection?: string; Name?: string; Priority: number; Tags?: Tag[]; VpcId: string; }; Type: 'AWS::Route53Resolver::FirewallRuleGroupAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53ResolverResolverConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AutodefinedReverseFlag: string; ResourceId: string; }; Type: 'AWS::Route53Resolver::ResolverConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53ResolverResolverDNSSECConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ResourceId?: string; }; Type: 'AWS::Route53Resolver::ResolverDNSSECConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53ResolverResolverEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Direction: string; IpAddresses: AWSRoute53ResolverResolverEndpoint1[]; Name?: string; OutpostArn?: string; PreferredInstanceType?: string; SecurityGroupIds: string[]; Tags?: Tag[]; }; Type: 'AWS::Route53Resolver::ResolverEndpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53ResolverResolverEndpoint1 { Ip?: string; SubnetId: string; } export interface AWSRoute53ResolverResolverQueryLoggingConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DestinationArn?: string; Name?: string; }; Type: 'AWS::Route53Resolver::ResolverQueryLoggingConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53ResolverResolverQueryLoggingConfigAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ResolverQueryLogConfigId?: string; ResourceId?: string; }; Type: 'AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53ResolverResolverRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DomainName: string; Name?: string; ResolverEndpointId?: string; RuleType: string; Tags?: Tag[]; TargetIps?: AWSRoute53ResolverResolverRule1[]; }; Type: 'AWS::Route53Resolver::ResolverRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSRoute53ResolverResolverRule1 { Ip: string; Port?: string; } export interface AWSRoute53ResolverResolverRuleAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name?: string; ResolverRuleId: string; VPCId: string; }; Type: 'AWS::Route53Resolver::ResolverRuleAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3AccessPoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Bucket: string; BucketAccountId?: string; Name?: string; Policy?: { [k: string]: unknown; }; PolicyStatus?: AWSS3AccessPoint1; PublicAccessBlockConfiguration?: AWSS3AccessPoint2; VpcConfiguration?: AWSS3AccessPoint3; }; Type: 'AWS::S3::AccessPoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3AccessPoint1 { IsPublic?: string; } export interface AWSS3AccessPoint2 { BlockPublicAcls?: boolean; BlockPublicPolicy?: boolean; IgnorePublicAcls?: boolean; RestrictPublicBuckets?: boolean; } export interface AWSS3AccessPoint3 { VpcId?: string; } export interface AWSS3Bucket { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AccelerateConfiguration?: AWSS3Bucket1; AccessControl?: string; AnalyticsConfigurations?: AWSS3Bucket2[]; BucketEncryption?: AWSS3Bucket7; BucketName?: string; CorsConfiguration?: AWSS3Bucket10; IntelligentTieringConfigurations?: AWSS3Bucket12[]; InventoryConfigurations?: AWSS3Bucket14[]; LifecycleConfiguration?: AWSS3Bucket15; LoggingConfiguration?: AWSS3Bucket21; MetricsConfigurations?: AWSS3Bucket22[]; NotificationConfiguration?: AWSS3Bucket23; ObjectLockConfiguration?: AWSS3Bucket31; ObjectLockEnabled?: boolean; OwnershipControls?: AWSS3Bucket34; PublicAccessBlockConfiguration?: AWSS3Bucket36; ReplicationConfiguration?: AWSS3Bucket37; Tags?: Tag[]; VersioningConfiguration?: AWSS3Bucket51; WebsiteConfiguration?: AWSS3Bucket52; }; Type: 'AWS::S3::Bucket'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3Bucket1 { AccelerationStatus: string; } export interface AWSS3Bucket2 { Id: string; Prefix?: string; StorageClassAnalysis: AWSS3Bucket3; TagFilters?: AWSS3Bucket6[]; } export interface AWSS3Bucket3 { DataExport?: AWSS3Bucket4; } export interface AWSS3Bucket4 { Destination: AWSS3Bucket5; OutputSchemaVersion: string; } export interface AWSS3Bucket5 { BucketAccountId?: string; BucketArn: string; Format: string; Prefix?: string; } export interface AWSS3Bucket6 { Key: string; Value: string; } export interface AWSS3Bucket7 { ServerSideEncryptionConfiguration: AWSS3Bucket8[]; } export interface AWSS3Bucket8 { BucketKeyEnabled?: boolean; ServerSideEncryptionByDefault?: AWSS3Bucket9; } export interface AWSS3Bucket9 { KMSMasterKeyID?: string; SSEAlgorithm: string; } export interface AWSS3Bucket10 { CorsRules: AWSS3Bucket11[]; } export interface AWSS3Bucket11 { AllowedHeaders?: string[]; AllowedMethods: string[]; AllowedOrigins: string[]; ExposedHeaders?: string[]; Id?: string; MaxAge?: number; } export interface AWSS3Bucket12 { Id: string; Prefix?: string; Status: string; TagFilters?: AWSS3Bucket6[]; Tierings: AWSS3Bucket13[]; } export interface AWSS3Bucket13 { AccessTier: string; Days: number; } export interface AWSS3Bucket14 { Destination: AWSS3Bucket5; Enabled: boolean; Id: string; IncludedObjectVersions: string; OptionalFields?: string[]; Prefix?: string; ScheduleFrequency: string; } export interface AWSS3Bucket15 { Rules: AWSS3Bucket16[]; } export interface AWSS3Bucket16 { AbortIncompleteMultipartUpload?: AWSS3Bucket17; ExpirationDate?: string; ExpirationInDays?: number; ExpiredObjectDeleteMarker?: boolean; Id?: string; NoncurrentVersionExpiration?: AWSS3Bucket18; NoncurrentVersionExpirationInDays?: number; NoncurrentVersionTransition?: AWSS3Bucket19; NoncurrentVersionTransitions?: AWSS3Bucket19[]; ObjectSizeGreaterThan?: number; ObjectSizeLessThan?: number; Prefix?: string; Status: string; TagFilters?: AWSS3Bucket6[]; Transition?: AWSS3Bucket20; Transitions?: AWSS3Bucket20[]; } export interface AWSS3Bucket17 { DaysAfterInitiation: number; } export interface AWSS3Bucket18 { NewerNoncurrentVersions?: number; NoncurrentDays: number; } export interface AWSS3Bucket19 { NewerNoncurrentVersions?: number; StorageClass: string; TransitionInDays: number; } export interface AWSS3Bucket20 { StorageClass: string; TransitionDate?: string; TransitionInDays?: number; } export interface AWSS3Bucket21 { DestinationBucketName?: string; LogFilePrefix?: string; } export interface AWSS3Bucket22 { AccessPointArn?: string; Id: string; Prefix?: string; TagFilters?: AWSS3Bucket6[]; } export interface AWSS3Bucket23 { EventBridgeConfiguration?: AWSS3Bucket24; LambdaConfigurations?: AWSS3Bucket25[]; QueueConfigurations?: AWSS3Bucket29[]; TopicConfigurations?: AWSS3Bucket30[]; } export interface AWSS3Bucket24 { EventBridgeEnabled?: boolean; } export interface AWSS3Bucket25 { Event: string; Filter?: AWSS3Bucket26; Function: string; } export interface AWSS3Bucket26 { S3Key: AWSS3Bucket27; } export interface AWSS3Bucket27 { Rules: AWSS3Bucket28[]; } export interface AWSS3Bucket28 { Name: string; Value: string; } export interface AWSS3Bucket29 { Event: string; Filter?: AWSS3Bucket26; Queue: string; } export interface AWSS3Bucket30 { Event: string; Filter?: AWSS3Bucket26; Topic: string; } export interface AWSS3Bucket31 { ObjectLockEnabled?: string; Rule?: AWSS3Bucket32; } export interface AWSS3Bucket32 { DefaultRetention?: AWSS3Bucket33; } export interface AWSS3Bucket33 { Days?: number; Mode?: string; Years?: number; } export interface AWSS3Bucket34 { Rules: AWSS3Bucket35[]; } export interface AWSS3Bucket35 { ObjectOwnership?: string; } export interface AWSS3Bucket36 { BlockPublicAcls?: boolean; BlockPublicPolicy?: boolean; IgnorePublicAcls?: boolean; RestrictPublicBuckets?: boolean; } export interface AWSS3Bucket37 { Role: string; Rules: AWSS3Bucket38[]; } export interface AWSS3Bucket38 { DeleteMarkerReplication?: AWSS3Bucket39; Destination: AWSS3Bucket40; Filter?: AWSS3Bucket46; Id?: string; Prefix?: string; Priority?: number; SourceSelectionCriteria?: AWSS3Bucket48; Status: string; } export interface AWSS3Bucket39 { Status?: string; } export interface AWSS3Bucket40 { AccessControlTranslation?: AWSS3Bucket41; Account?: string; Bucket: string; EncryptionConfiguration?: AWSS3Bucket42; Metrics?: AWSS3Bucket43; ReplicationTime?: AWSS3Bucket45; StorageClass?: string; } export interface AWSS3Bucket41 { Owner: string; } export interface AWSS3Bucket42 { ReplicaKmsKeyID: string; } export interface AWSS3Bucket43 { EventThreshold?: AWSS3Bucket44; Status: string; } export interface AWSS3Bucket44 { Minutes: number; } export interface AWSS3Bucket45 { Status: string; Time: AWSS3Bucket44; } export interface AWSS3Bucket46 { And?: AWSS3Bucket47; Prefix?: string; TagFilter?: AWSS3Bucket6; } export interface AWSS3Bucket47 { Prefix?: string; TagFilters?: AWSS3Bucket6[]; } export interface AWSS3Bucket48 { ReplicaModifications?: AWSS3Bucket49; SseKmsEncryptedObjects?: AWSS3Bucket50; } export interface AWSS3Bucket49 { Status: string; } export interface AWSS3Bucket50 { Status: string; } export interface AWSS3Bucket51 { Status: string; } export interface AWSS3Bucket52 { ErrorDocument?: string; IndexDocument?: string; RedirectAllRequestsTo?: AWSS3Bucket53; RoutingRules?: AWSS3Bucket54[]; } export interface AWSS3Bucket53 { HostName: string; Protocol?: string; } export interface AWSS3Bucket54 { RedirectRule: AWSS3Bucket55; RoutingRuleCondition?: AWSS3Bucket56; } export interface AWSS3Bucket55 { HostName?: string; HttpRedirectCode?: string; Protocol?: string; ReplaceKeyPrefixWith?: string; ReplaceKeyWith?: string; } export interface AWSS3Bucket56 { HttpErrorCodeReturnedEquals?: string; KeyPrefixEquals?: string; } export interface AWSS3BucketPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Bucket: string; PolicyDocument: { [k: string]: unknown; }; }; Type: 'AWS::S3::BucketPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3MultiRegionAccessPoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name?: string; PublicAccessBlockConfiguration?: AWSS3MultiRegionAccessPoint1; Regions: AWSS3MultiRegionAccessPoint2[]; }; Type: 'AWS::S3::MultiRegionAccessPoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3MultiRegionAccessPoint1 { BlockPublicAcls?: boolean; BlockPublicPolicy?: boolean; IgnorePublicAcls?: boolean; RestrictPublicBuckets?: boolean; } export interface AWSS3MultiRegionAccessPoint2 { Bucket: string; } export interface AWSS3MultiRegionAccessPointPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MrapName: string; Policy: { [k: string]: unknown; }; }; Type: 'AWS::S3::MultiRegionAccessPointPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3StorageLens { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { StorageLensConfiguration: AWSS3StorageLens1; Tags?: Tag[]; }; Type: 'AWS::S3::StorageLens'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3StorageLens1 { AccountLevel: AWSS3StorageLens2; AwsOrg?: AWSS3StorageLens11; DataExport?: AWSS3StorageLens12; Exclude?: AWSS3StorageLens17; Id: string; Include?: AWSS3StorageLens17; IsEnabled: boolean; StorageLensArn?: string; } export interface AWSS3StorageLens2 { ActivityMetrics?: AWSS3StorageLens3; AdvancedCostOptimizationMetrics?: AWSS3StorageLens4; AdvancedDataProtectionMetrics?: AWSS3StorageLens5; BucketLevel: AWSS3StorageLens6; DetailedStatusCodesMetrics?: AWSS3StorageLens7; } export interface AWSS3StorageLens3 { IsEnabled?: boolean; } export interface AWSS3StorageLens4 { IsEnabled?: boolean; } export interface AWSS3StorageLens5 { IsEnabled?: boolean; } export interface AWSS3StorageLens6 { ActivityMetrics?: AWSS3StorageLens3; AdvancedCostOptimizationMetrics?: AWSS3StorageLens4; AdvancedDataProtectionMetrics?: AWSS3StorageLens5; DetailedStatusCodesMetrics?: AWSS3StorageLens7; PrefixLevel?: AWSS3StorageLens8; } export interface AWSS3StorageLens7 { IsEnabled?: boolean; } export interface AWSS3StorageLens8 { StorageMetrics: AWSS3StorageLens9; } export interface AWSS3StorageLens9 { IsEnabled?: boolean; SelectionCriteria?: AWSS3StorageLens10; } export interface AWSS3StorageLens10 { Delimiter?: string; MaxDepth?: number; MinStorageBytesPercentage?: number; } export interface AWSS3StorageLens11 { Arn: string; } export interface AWSS3StorageLens12 { CloudWatchMetrics?: AWSS3StorageLens13; S3BucketDestination?: AWSS3StorageLens14; } export interface AWSS3StorageLens13 { IsEnabled: boolean; } export interface AWSS3StorageLens14 { AccountId: string; Arn: string; Encryption?: AWSS3StorageLens15; Format: string; OutputSchemaVersion: string; Prefix?: string; } export interface AWSS3StorageLens15 { SSEKMS?: AWSS3StorageLens16; SSES3?: { [k: string]: unknown; }; } export interface AWSS3StorageLens16 { KeyId: string; } export interface AWSS3StorageLens17 { Buckets?: string[]; Regions?: string[]; } export interface AWSS3ObjectLambdaAccessPoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name?: string; ObjectLambdaConfiguration: AWSS3ObjectLambdaAccessPoint1; }; Type: 'AWS::S3ObjectLambda::AccessPoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3ObjectLambdaAccessPoint1 { AllowedFeatures?: string[]; CloudWatchMetricsEnabled?: boolean; SupportingAccessPoint: string; TransformationConfigurations: AWSS3ObjectLambdaAccessPoint2[]; } export interface AWSS3ObjectLambdaAccessPoint2 { Actions: string[]; ContentTransformation: AWSS3ObjectLambdaAccessPoint3; } export interface AWSS3ObjectLambdaAccessPoint3 { AwsLambda: AWSS3ObjectLambdaAccessPoint4; } export interface AWSS3ObjectLambdaAccessPoint4 { FunctionArn: string; FunctionPayload?: string; } export interface AWSS3ObjectLambdaAccessPointPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ObjectLambdaAccessPoint: string; PolicyDocument: { [k: string]: unknown; }; }; Type: 'AWS::S3ObjectLambda::AccessPointPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3OutpostsAccessPoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Bucket: string; Name: string; Policy?: { [k: string]: unknown; }; VpcConfiguration: AWSS3OutpostsAccessPoint1; }; Type: 'AWS::S3Outposts::AccessPoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3OutpostsAccessPoint1 { VpcId?: string; } export interface AWSS3OutpostsBucket { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BucketName: string; LifecycleConfiguration?: AWSS3OutpostsBucket1; OutpostId: string; Tags?: Tag[]; }; Type: 'AWS::S3Outposts::Bucket'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3OutpostsBucket1 { Rules: AWSS3OutpostsBucket2[]; } export interface AWSS3OutpostsBucket2 { AbortIncompleteMultipartUpload?: AWSS3OutpostsBucket3; ExpirationDate?: string; ExpirationInDays?: number; Filter?: AWSS3OutpostsBucket4; Id?: string; Status: string; } export interface AWSS3OutpostsBucket3 { DaysAfterInitiation: number; } export interface AWSS3OutpostsBucket4 { AndOperator?: AWSS3OutpostsBucket5; Prefix?: string; Tag?: AWSS3OutpostsBucket6; } export interface AWSS3OutpostsBucket5 { Prefix?: string; Tags: AWSS3OutpostsBucket6[]; } export interface AWSS3OutpostsBucket6 { Key: string; Value: string; } export interface AWSS3OutpostsBucketPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Bucket: string; PolicyDocument: { [k: string]: unknown; }; }; Type: 'AWS::S3Outposts::BucketPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSS3OutpostsEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessType?: string; CustomerOwnedIpv4Pool?: string; OutpostId: string; SecurityGroupId: string; SubnetId: string; }; Type: 'AWS::S3Outposts::Endpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSDBDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; }; Type: 'AWS::SDB::Domain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESConfigurationSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DeliveryOptions?: AWSSESConfigurationSet1; Name?: string; ReputationOptions?: AWSSESConfigurationSet2; SendingOptions?: AWSSESConfigurationSet3; SuppressionOptions?: AWSSESConfigurationSet4; TrackingOptions?: AWSSESConfigurationSet5; VdmOptions?: AWSSESConfigurationSet6; }; Type: 'AWS::SES::ConfigurationSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESConfigurationSet1 { SendingPoolName?: string; TlsPolicy?: string; } export interface AWSSESConfigurationSet2 { ReputationMetricsEnabled?: boolean; } export interface AWSSESConfigurationSet3 { SendingEnabled?: boolean; } export interface AWSSESConfigurationSet4 { SuppressedReasons?: string[]; } export interface AWSSESConfigurationSet5 { CustomRedirectDomain?: string; } export interface AWSSESConfigurationSet6 { DashboardOptions?: AWSSESConfigurationSet7; GuardianOptions?: AWSSESConfigurationSet8; } export interface AWSSESConfigurationSet7 { EngagementMetrics: string; } export interface AWSSESConfigurationSet8 { OptimizedSharedDelivery: string; } export interface AWSSESConfigurationSetEventDestination { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConfigurationSetName: string; EventDestination: AWSSESConfigurationSetEventDestination1; }; Type: 'AWS::SES::ConfigurationSetEventDestination'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESConfigurationSetEventDestination1 { CloudWatchDestination?: AWSSESConfigurationSetEventDestination2; Enabled?: boolean; KinesisFirehoseDestination?: AWSSESConfigurationSetEventDestination4; MatchingEventTypes: string[]; Name?: string; SnsDestination?: AWSSESConfigurationSetEventDestination5; } export interface AWSSESConfigurationSetEventDestination2 { DimensionConfigurations?: AWSSESConfigurationSetEventDestination3[]; } export interface AWSSESConfigurationSetEventDestination3 { DefaultDimensionValue: string; DimensionName: string; DimensionValueSource: string; } export interface AWSSESConfigurationSetEventDestination4 { DeliveryStreamARN: string; IAMRoleARN: string; } export interface AWSSESConfigurationSetEventDestination5 { TopicARN: string; } export interface AWSSESContactList { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ContactListName?: string; Description?: string; Tags?: Tag[]; Topics?: AWSSESContactList1[]; }; Type: 'AWS::SES::ContactList'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESContactList1 { DefaultSubscriptionStatus: string; Description?: string; DisplayName: string; TopicName: string; } export interface AWSSESDedicatedIpPool { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { PoolName?: string; ScalingMode?: string; }; Type: 'AWS::SES::DedicatedIpPool'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESEmailIdentity { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConfigurationSetAttributes?: AWSSESEmailIdentity1; DkimAttributes?: AWSSESEmailIdentity2; DkimSigningAttributes?: AWSSESEmailIdentity3; EmailIdentity: string; FeedbackAttributes?: AWSSESEmailIdentity4; MailFromAttributes?: AWSSESEmailIdentity5; }; Type: 'AWS::SES::EmailIdentity'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESEmailIdentity1 { ConfigurationSetName?: string; } export interface AWSSESEmailIdentity2 { SigningEnabled?: boolean; } export interface AWSSESEmailIdentity3 { DomainSigningPrivateKey?: string; DomainSigningSelector?: string; NextSigningKeyLength?: string; } export interface AWSSESEmailIdentity4 { EmailForwardingEnabled?: boolean; } export interface AWSSESEmailIdentity5 { BehaviorOnMxFailure?: string; MailFromDomain?: string; } export interface AWSSESReceiptFilter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Filter: AWSSESReceiptFilter1; }; Type: 'AWS::SES::ReceiptFilter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESReceiptFilter1 { IpFilter: AWSSESReceiptFilter2; Name?: string; } export interface AWSSESReceiptFilter2 { Cidr: string; Policy: string; } export interface AWSSESReceiptRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { After?: string; Rule: AWSSESReceiptRule1; RuleSetName: string; }; Type: 'AWS::SES::ReceiptRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESReceiptRule1 { Actions?: AWSSESReceiptRule2[]; Enabled?: boolean; Name?: string; Recipients?: string[]; ScanEnabled?: boolean; TlsPolicy?: string; } export interface AWSSESReceiptRule2 { AddHeaderAction?: AWSSESReceiptRule3; BounceAction?: AWSSESReceiptRule4; LambdaAction?: AWSSESReceiptRule5; S3Action?: AWSSESReceiptRule6; SNSAction?: AWSSESReceiptRule7; StopAction?: AWSSESReceiptRule8; WorkmailAction?: AWSSESReceiptRule9; } export interface AWSSESReceiptRule3 { HeaderName: string; HeaderValue: string; } export interface AWSSESReceiptRule4 { Message: string; Sender: string; SmtpReplyCode: string; StatusCode?: string; TopicArn?: string; } export interface AWSSESReceiptRule5 { FunctionArn: string; InvocationType?: string; TopicArn?: string; } export interface AWSSESReceiptRule6 { BucketName: string; KmsKeyArn?: string; ObjectKeyPrefix?: string; TopicArn?: string; } export interface AWSSESReceiptRule7 { Encoding?: string; TopicArn?: string; } export interface AWSSESReceiptRule8 { Scope: string; TopicArn?: string; } export interface AWSSESReceiptRule9 { OrganizationArn: string; TopicArn?: string; } export interface AWSSESReceiptRuleSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { RuleSetName?: string; }; Type: 'AWS::SES::ReceiptRuleSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESTemplate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Template?: AWSSESTemplate1; }; Type: 'AWS::SES::Template'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESTemplate1 { HtmlPart?: string; SubjectPart: string; TemplateName?: string; TextPart?: string; } export interface AWSSESVdmAttributes { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DashboardAttributes?: AWSSESVdmAttributes1; GuardianAttributes?: AWSSESVdmAttributes2; }; Type: 'AWS::SES::VdmAttributes'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSESVdmAttributes1 { EngagementMetrics?: string; } export interface AWSSESVdmAttributes2 { OptimizedSharedDelivery?: string; } export interface AWSSNSSubscription { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeliveryPolicy?: { [k: string]: unknown; }; Endpoint?: string; FilterPolicy?: { [k: string]: unknown; }; FilterPolicyScope?: string; Protocol: string; RawMessageDelivery?: boolean; RedrivePolicy?: { [k: string]: unknown; }; Region?: string; SubscriptionRoleArn?: string; TopicArn: string; }; Type: 'AWS::SNS::Subscription'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSNSTopic { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ContentBasedDeduplication?: boolean; DataProtectionPolicy?: { [k: string]: unknown; }; DisplayName?: string; FifoTopic?: boolean; KmsMasterKeyId?: string; SignatureVersion?: string; Subscription?: AWSSNSTopic1[]; Tags?: Tag[]; TopicName?: string; }; Type: 'AWS::SNS::Topic'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSNSTopic1 { Endpoint: string; Protocol: string; } export interface AWSSNSTopicPolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PolicyDocument: { [k: string]: unknown; }; Topics: string[]; }; Type: 'AWS::SNS::TopicPolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSQSQueue { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { ContentBasedDeduplication?: boolean; DeduplicationScope?: string; DelaySeconds?: number; FifoQueue?: boolean; FifoThroughputLimit?: string; KmsDataKeyReusePeriodSeconds?: number; KmsMasterKeyId?: string; MaximumMessageSize?: number; MessageRetentionPeriod?: number; QueueName?: string; ReceiveMessageWaitTimeSeconds?: number; RedriveAllowPolicy?: { [k: string]: unknown; }; RedrivePolicy?: { [k: string]: unknown; }; SqsManagedSseEnabled?: boolean; Tags?: Tag[]; VisibilityTimeout?: number; }; Type: 'AWS::SQS::Queue'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSQSQueuePolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PolicyDocument: { [k: string]: unknown; }; Queues: string[]; }; Type: 'AWS::SQS::QueuePolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApplyOnlyAtCronInterval?: boolean; AssociationName?: string; AutomationTargetParameterName?: string; CalendarNames?: string[]; ComplianceSeverity?: string; DocumentVersion?: string; InstanceId?: string; MaxConcurrency?: string; MaxErrors?: string; Name: string; OutputLocation?: AWSSSMAssociation1; Parameters?: { [k: string]: unknown; }; ScheduleExpression?: string; ScheduleOffset?: number; SyncCompliance?: string; Targets?: AWSSSMAssociation3[]; WaitForSuccessTimeoutSeconds?: number; }; Type: 'AWS::SSM::Association'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMAssociation1 { S3Location?: AWSSSMAssociation2; } export interface AWSSSMAssociation2 { OutputS3BucketName?: string; OutputS3KeyPrefix?: string; OutputS3Region?: string; } export interface AWSSSMAssociation3 { Key: string; Values: string[]; } export interface AWSSSMDocument { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Attachments?: AWSSSMDocument1[]; Content: { [k: string]: unknown; }; DocumentFormat?: string; DocumentType?: string; Name?: string; Requires?: AWSSSMDocument2[]; Tags?: Tag[]; TargetType?: string; UpdateMethod?: string; VersionName?: string; }; Type: 'AWS::SSM::Document'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMDocument1 { Key?: string; Name?: string; Values?: string[]; } export interface AWSSSMDocument2 { Name?: string; Version?: string; } export interface AWSSSMMaintenanceWindow { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowUnassociatedTargets: boolean; Cutoff: number; Description?: string; Duration: number; EndDate?: string; Name: string; Schedule: string; ScheduleOffset?: number; ScheduleTimezone?: string; StartDate?: string; Tags?: Tag[]; }; Type: 'AWS::SSM::MaintenanceWindow'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMMaintenanceWindowTarget { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name?: string; OwnerInformation?: string; ResourceType: string; Targets: AWSSSMMaintenanceWindowTarget1[]; WindowId: string; }; Type: 'AWS::SSM::MaintenanceWindowTarget'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMMaintenanceWindowTarget1 { Key: string; Values: string[]; } export interface AWSSSMMaintenanceWindowTask { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CutoffBehavior?: string; Description?: string; LoggingInfo?: AWSSSMMaintenanceWindowTask1; MaxConcurrency?: string; MaxErrors?: string; Name?: string; Priority: number; ServiceRoleArn?: string; Targets?: AWSSSMMaintenanceWindowTask2[]; TaskArn: string; TaskInvocationParameters?: AWSSSMMaintenanceWindowTask3; TaskParameters?: { [k: string]: unknown; }; TaskType: string; WindowId: string; }; Type: 'AWS::SSM::MaintenanceWindowTask'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMMaintenanceWindowTask1 { Region: string; S3Bucket: string; S3Prefix?: string; } export interface AWSSSMMaintenanceWindowTask2 { Key: string; Values: string[]; } export interface AWSSSMMaintenanceWindowTask3 { MaintenanceWindowAutomationParameters?: AWSSSMMaintenanceWindowTask4; MaintenanceWindowLambdaParameters?: AWSSSMMaintenanceWindowTask5; MaintenanceWindowRunCommandParameters?: AWSSSMMaintenanceWindowTask6; MaintenanceWindowStepFunctionsParameters?: AWSSSMMaintenanceWindowTask9; } export interface AWSSSMMaintenanceWindowTask4 { DocumentVersion?: string; Parameters?: { [k: string]: unknown; }; } export interface AWSSSMMaintenanceWindowTask5 { ClientContext?: string; Payload?: string; Qualifier?: string; } export interface AWSSSMMaintenanceWindowTask6 { CloudWatchOutputConfig?: AWSSSMMaintenanceWindowTask7; Comment?: string; DocumentHash?: string; DocumentHashType?: string; DocumentVersion?: string; NotificationConfig?: AWSSSMMaintenanceWindowTask8; OutputS3BucketName?: string; OutputS3KeyPrefix?: string; Parameters?: { [k: string]: unknown; }; ServiceRoleArn?: string; TimeoutSeconds?: number; } export interface AWSSSMMaintenanceWindowTask7 { CloudWatchLogGroupName?: string; CloudWatchOutputEnabled?: boolean; } export interface AWSSSMMaintenanceWindowTask8 { NotificationArn: string; NotificationEvents?: string[]; NotificationType?: string; } export interface AWSSSMMaintenanceWindowTask9 { Input?: string; Name?: string; } export interface AWSSSMParameter { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AllowedPattern?: string; DataType?: string; Description?: string; Name?: string; Policies?: string; Tags?: { [k: string]: unknown; }; Tier?: string; Type: string; Value: string; }; Type: 'AWS::SSM::Parameter'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMPatchBaseline { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ApprovalRules?: AWSSSMPatchBaseline1; ApprovedPatches?: string[]; ApprovedPatchesComplianceLevel?: string; ApprovedPatchesEnableNonSecurity?: boolean; Description?: string; GlobalFilters?: AWSSSMPatchBaseline4; Name: string; OperatingSystem?: string; PatchGroups?: string[]; RejectedPatches?: string[]; RejectedPatchesAction?: string; Sources?: AWSSSMPatchBaseline6[]; Tags?: Tag[]; }; Type: 'AWS::SSM::PatchBaseline'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMPatchBaseline1 { PatchRules?: AWSSSMPatchBaseline2[]; } export interface AWSSSMPatchBaseline2 { ApproveAfterDays?: number; ApproveUntilDate?: AWSSSMPatchBaseline3; ComplianceLevel?: string; EnableNonSecurity?: boolean; PatchFilterGroup?: AWSSSMPatchBaseline4; } export interface AWSSSMPatchBaseline3 {} export interface AWSSSMPatchBaseline4 { PatchFilters?: AWSSSMPatchBaseline5[]; } export interface AWSSSMPatchBaseline5 { Key?: string; Values?: string[]; } export interface AWSSSMPatchBaseline6 { Configuration?: string; Name?: string; Products?: string[]; } export interface AWSSSMResourceDataSync { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BucketName?: string; BucketPrefix?: string; BucketRegion?: string; KMSKeyArn?: string; S3Destination?: AWSSSMResourceDataSync1; SyncFormat?: string; SyncName: string; SyncSource?: AWSSSMResourceDataSync2; SyncType?: string; }; Type: 'AWS::SSM::ResourceDataSync'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMResourceDataSync1 { BucketName: string; BucketPrefix?: string; BucketRegion: string; KMSKeyArn?: string; SyncFormat: string; } export interface AWSSSMResourceDataSync2 { AwsOrganizationsSource?: AWSSSMResourceDataSync3; IncludeFutureRegions?: boolean; SourceRegions: string[]; SourceType: string; } export interface AWSSSMResourceDataSync3 { OrganizationSourceType: string; OrganizationalUnits?: string[]; } export interface AWSSSMResourcePolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Policy: { [k: string]: unknown; }; ResourceArn: string; }; Type: 'AWS::SSM::ResourcePolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMContactsContact { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Alias: string; DisplayName: string; Plan: AWSSSMContactsContact1[]; Type: string; }; Type: 'AWS::SSMContacts::Contact'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMContactsContact1 { DurationInMinutes: number; Targets?: AWSSSMContactsContact2[]; } export interface AWSSSMContactsContact2 { ChannelTargetInfo?: AWSSSMContactsContact3; ContactTargetInfo?: AWSSSMContactsContact4; } export interface AWSSSMContactsContact3 { ChannelId: string; RetryIntervalInMinutes: number; } export interface AWSSSMContactsContact4 { ContactId: string; IsEssential: boolean; } export interface AWSSSMContactsContactChannel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ChannelAddress: string; ChannelName: string; ChannelType: string; ContactId: string; DeferActivation?: boolean; }; Type: 'AWS::SSMContacts::ContactChannel'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMIncidentsReplicationSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeletionProtected?: boolean; Regions: AWSSSMIncidentsReplicationSet1[]; Tags?: Tag[]; }; Type: 'AWS::SSMIncidents::ReplicationSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMIncidentsReplicationSet1 { RegionConfiguration?: AWSSSMIncidentsReplicationSet2; RegionName?: string; } export interface AWSSSMIncidentsReplicationSet2 { SseKmsKeyId: string; } export interface AWSSSMIncidentsResponsePlan { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Actions?: AWSSSMIncidentsResponsePlan1[]; ChatChannel?: AWSSSMIncidentsResponsePlan6; DisplayName?: string; Engagements?: string[]; IncidentTemplate: AWSSSMIncidentsResponsePlan7; Integrations?: AWSSSMIncidentsResponsePlan9[]; Name: string; Tags?: Tag[]; }; Type: 'AWS::SSMIncidents::ResponsePlan'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSMIncidentsResponsePlan1 { SsmAutomation?: AWSSSMIncidentsResponsePlan2; } export interface AWSSSMIncidentsResponsePlan2 { DocumentName: string; DocumentVersion?: string; DynamicParameters?: AWSSSMIncidentsResponsePlan3[]; Parameters?: AWSSSMIncidentsResponsePlan5[]; RoleArn: string; TargetAccount?: string; } export interface AWSSSMIncidentsResponsePlan3 { Key: string; Value: AWSSSMIncidentsResponsePlan4; } export interface AWSSSMIncidentsResponsePlan4 { Variable?: string; } export interface AWSSSMIncidentsResponsePlan5 { Key: string; Values: string[]; } export interface AWSSSMIncidentsResponsePlan6 { ChatbotSns?: string[]; } export interface AWSSSMIncidentsResponsePlan7 { DedupeString?: string; Impact: number; IncidentTags?: Tag[]; NotificationTargets?: AWSSSMIncidentsResponsePlan8[]; Summary?: string; Title: string; } export interface AWSSSMIncidentsResponsePlan8 { SnsTopicArn?: string; } export interface AWSSSMIncidentsResponsePlan9 { PagerDutyConfiguration: AWSSSMIncidentsResponsePlan10; } export interface AWSSSMIncidentsResponsePlan10 { Name: string; PagerDutyIncidentConfiguration: AWSSSMIncidentsResponsePlan11; SecretId: string; } export interface AWSSSMIncidentsResponsePlan11 { ServiceId: string; } export interface AWSSSOAssignment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InstanceArn: string; PermissionSetArn: string; PrincipalId: string; PrincipalType: string; TargetId: string; TargetType: string; }; Type: 'AWS::SSO::Assignment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSOInstanceAccessControlAttributeConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessControlAttributes?: AWSSSOInstanceAccessControlAttributeConfiguration1[]; InstanceArn: string; }; Type: 'AWS::SSO::InstanceAccessControlAttributeConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSOInstanceAccessControlAttributeConfiguration1 { Key: string; Value: AWSSSOInstanceAccessControlAttributeConfiguration2; } export interface AWSSSOInstanceAccessControlAttributeConfiguration2 { Source: string[]; } export interface AWSSSOPermissionSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CustomerManagedPolicyReferences?: AWSSSOPermissionSet1[]; Description?: string; InlinePolicy?: { [k: string]: unknown; }; InstanceArn: string; ManagedPolicies?: string[]; Name: string; PermissionsBoundary?: AWSSSOPermissionSet2; RelayStateType?: string; SessionDuration?: string; Tags?: Tag[]; }; Type: 'AWS::SSO::PermissionSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSSOPermissionSet1 { Name: string; Path?: string; } export interface AWSSSOPermissionSet2 { CustomerManagedPolicyReference?: AWSSSOPermissionSet1; ManagedPolicyArn?: string; } export interface AWSSageMakerApp { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppName: string; AppType: string; DomainId: string; ResourceSpec?: AWSSageMakerApp1; Tags?: Tag[]; UserProfileName: string; }; Type: 'AWS::SageMaker::App'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerApp1 { InstanceType?: string; SageMakerImageArn?: string; SageMakerImageVersionArn?: string; } export interface AWSSageMakerAppImageConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppImageConfigName: string; KernelGatewayImageConfig?: AWSSageMakerAppImageConfig1; Tags?: Tag[]; }; Type: 'AWS::SageMaker::AppImageConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerAppImageConfig1 { FileSystemConfig?: AWSSageMakerAppImageConfig2; KernelSpecs: AWSSageMakerAppImageConfig3[]; } export interface AWSSageMakerAppImageConfig2 { DefaultGid?: number; DefaultUid?: number; MountPath?: string; } export interface AWSSageMakerAppImageConfig3 { DisplayName?: string; Name: string; } export interface AWSSageMakerCodeRepository { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CodeRepositoryName?: string; GitConfig: AWSSageMakerCodeRepository1; Tags?: Tag[]; }; Type: 'AWS::SageMaker::CodeRepository'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerCodeRepository1 { Branch?: string; RepositoryUrl: string; SecretArn?: string; } export interface AWSSageMakerDataQualityJobDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DataQualityAppSpecification: AWSSageMakerDataQualityJobDefinition1; DataQualityBaselineConfig?: AWSSageMakerDataQualityJobDefinition2; DataQualityJobInput: AWSSageMakerDataQualityJobDefinition5; DataQualityJobOutputConfig: AWSSageMakerDataQualityJobDefinition11; EndpointName?: string; JobDefinitionName?: string; JobResources: AWSSageMakerDataQualityJobDefinition14; NetworkConfig?: AWSSageMakerDataQualityJobDefinition16; RoleArn: string; StoppingCondition?: AWSSageMakerDataQualityJobDefinition18; Tags?: Tag[]; }; Type: 'AWS::SageMaker::DataQualityJobDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerDataQualityJobDefinition1 { ContainerArguments?: string[]; ContainerEntrypoint?: string[]; Environment?: { [k: string]: unknown; }; ImageUri: string; PostAnalyticsProcessorSourceUri?: string; RecordPreprocessorSourceUri?: string; } export interface AWSSageMakerDataQualityJobDefinition2 { BaseliningJobName?: string; ConstraintsResource?: AWSSageMakerDataQualityJobDefinition3; StatisticsResource?: AWSSageMakerDataQualityJobDefinition4; } export interface AWSSageMakerDataQualityJobDefinition3 { S3Uri?: string; } export interface AWSSageMakerDataQualityJobDefinition4 { S3Uri?: string; } export interface AWSSageMakerDataQualityJobDefinition5 { BatchTransformInput?: AWSSageMakerDataQualityJobDefinition6; EndpointInput?: AWSSageMakerDataQualityJobDefinition10; } export interface AWSSageMakerDataQualityJobDefinition6 { DataCapturedDestinationS3Uri: string; DatasetFormat: AWSSageMakerDataQualityJobDefinition7; LocalPath: string; S3DataDistributionType?: string; S3InputMode?: string; } export interface AWSSageMakerDataQualityJobDefinition7 { Csv?: AWSSageMakerDataQualityJobDefinition8; Json?: AWSSageMakerDataQualityJobDefinition9; Parquet?: boolean; } export interface AWSSageMakerDataQualityJobDefinition8 { Header?: boolean; } export interface AWSSageMakerDataQualityJobDefinition9 { Line?: boolean; } export interface AWSSageMakerDataQualityJobDefinition10 { EndpointName: string; LocalPath: string; S3DataDistributionType?: string; S3InputMode?: string; } export interface AWSSageMakerDataQualityJobDefinition11 { KmsKeyId?: string; MonitoringOutputs: AWSSageMakerDataQualityJobDefinition12[]; } export interface AWSSageMakerDataQualityJobDefinition12 { S3Output: AWSSageMakerDataQualityJobDefinition13; } export interface AWSSageMakerDataQualityJobDefinition13 { LocalPath: string; S3UploadMode?: string; S3Uri: string; } export interface AWSSageMakerDataQualityJobDefinition14 { ClusterConfig: AWSSageMakerDataQualityJobDefinition15; } export interface AWSSageMakerDataQualityJobDefinition15 { InstanceCount: number; InstanceType: string; VolumeKmsKeyId?: string; VolumeSizeInGB: number; } export interface AWSSageMakerDataQualityJobDefinition16 { EnableInterContainerTrafficEncryption?: boolean; EnableNetworkIsolation?: boolean; VpcConfig?: AWSSageMakerDataQualityJobDefinition17; } export interface AWSSageMakerDataQualityJobDefinition17 { SecurityGroupIds: string[]; Subnets: string[]; } export interface AWSSageMakerDataQualityJobDefinition18 { MaxRuntimeInSeconds: number; } export interface AWSSageMakerDevice { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Device?: AWSSageMakerDevice1; DeviceFleetName: string; Tags?: Tag[]; }; Type: 'AWS::SageMaker::Device'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerDevice1 { Description?: string; DeviceName: string; IotThingName?: string; } export interface AWSSageMakerDeviceFleet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; DeviceFleetName: string; OutputConfig: AWSSageMakerDeviceFleet1; RoleArn: string; Tags?: Tag[]; }; Type: 'AWS::SageMaker::DeviceFleet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerDeviceFleet1 { KmsKeyId?: string; S3OutputLocation: string; } export interface AWSSageMakerDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AppNetworkAccessType?: string; AppSecurityGroupManagement?: string; AuthMode: string; DefaultUserSettings: AWSSageMakerDomain1; DomainName: string; DomainSettings?: AWSSageMakerDomain9; KmsKeyId?: string; SubnetIds: string[]; Tags?: Tag[]; VpcId: string; }; Type: 'AWS::SageMaker::Domain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerDomain1 { ExecutionRole?: string; JupyterServerAppSettings?: AWSSageMakerDomain2; KernelGatewayAppSettings?: AWSSageMakerDomain4; RSessionAppSettings?: AWSSageMakerDomain6; RStudioServerProAppSettings?: AWSSageMakerDomain7; SecurityGroups?: string[]; SharingSettings?: AWSSageMakerDomain8; } export interface AWSSageMakerDomain2 { DefaultResourceSpec?: AWSSageMakerDomain3; } export interface AWSSageMakerDomain3 { InstanceType?: string; LifecycleConfigArn?: string; SageMakerImageArn?: string; SageMakerImageVersionArn?: string; } export interface AWSSageMakerDomain4 { CustomImages?: AWSSageMakerDomain5[]; DefaultResourceSpec?: AWSSageMakerDomain3; } export interface AWSSageMakerDomain5 { AppImageConfigName: string; ImageName: string; ImageVersionNumber?: number; } export interface AWSSageMakerDomain6 { CustomImages?: AWSSageMakerDomain5[]; DefaultResourceSpec?: AWSSageMakerDomain3; } export interface AWSSageMakerDomain7 { AccessStatus?: string; UserGroup?: string; } export interface AWSSageMakerDomain8 { NotebookOutputOption?: string; S3KmsKeyId?: string; S3OutputPath?: string; } export interface AWSSageMakerDomain9 { RStudioServerProDomainSettings?: AWSSageMakerDomain10; SecurityGroupIds?: string[]; } export interface AWSSageMakerDomain10 { DefaultResourceSpec?: AWSSageMakerDomain3; DomainExecutionRoleArn: string; RStudioConnectUrl?: string; RStudioPackageManagerUrl?: string; } export interface AWSSageMakerEndpoint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DeploymentConfig?: AWSSageMakerEndpoint1; EndpointConfigName: string; EndpointName?: string; ExcludeRetainedVariantProperties?: AWSSageMakerEndpoint7[]; RetainAllVariantProperties?: boolean; RetainDeploymentConfig?: boolean; Tags?: Tag[]; }; Type: 'AWS::SageMaker::Endpoint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerEndpoint1 { AutoRollbackConfiguration?: AWSSageMakerEndpoint2; BlueGreenUpdatePolicy: AWSSageMakerEndpoint4; } export interface AWSSageMakerEndpoint2 { Alarms: AWSSageMakerEndpoint3[]; } export interface AWSSageMakerEndpoint3 { AlarmName: string; } export interface AWSSageMakerEndpoint4 { MaximumExecutionTimeoutInSeconds?: number; TerminationWaitInSeconds?: number; TrafficRoutingConfiguration: AWSSageMakerEndpoint5; } export interface AWSSageMakerEndpoint5 { CanarySize?: AWSSageMakerEndpoint6; LinearStepSize?: AWSSageMakerEndpoint6; Type: string; WaitIntervalInSeconds?: number; } export interface AWSSageMakerEndpoint6 { Type: string; Value: number; } export interface AWSSageMakerEndpoint7 { VariantPropertyType?: string; } export interface AWSSageMakerEndpointConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AsyncInferenceConfig?: AWSSageMakerEndpointConfig1; DataCaptureConfig?: AWSSageMakerEndpointConfig5; EndpointConfigName?: string; ExplainerConfig?: AWSSageMakerEndpointConfig8; KmsKeyId?: string; ProductionVariants: AWSSageMakerEndpointConfig16[]; ShadowProductionVariants?: AWSSageMakerEndpointConfig16[]; Tags?: Tag[]; }; Type: 'AWS::SageMaker::EndpointConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerEndpointConfig1 { ClientConfig?: AWSSageMakerEndpointConfig2; OutputConfig: AWSSageMakerEndpointConfig3; } export interface AWSSageMakerEndpointConfig2 { MaxConcurrentInvocationsPerInstance?: number; } export interface AWSSageMakerEndpointConfig3 { KmsKeyId?: string; NotificationConfig?: AWSSageMakerEndpointConfig4; S3OutputPath: string; } export interface AWSSageMakerEndpointConfig4 { ErrorTopic?: string; SuccessTopic?: string; } export interface AWSSageMakerEndpointConfig5 { CaptureContentTypeHeader?: AWSSageMakerEndpointConfig6; CaptureOptions: AWSSageMakerEndpointConfig7[]; DestinationS3Uri: string; EnableCapture?: boolean; InitialSamplingPercentage: number; KmsKeyId?: string; } export interface AWSSageMakerEndpointConfig6 { CsvContentTypes?: string[]; JsonContentTypes?: string[]; } export interface AWSSageMakerEndpointConfig7 { CaptureMode: string; } export interface AWSSageMakerEndpointConfig8 { ClarifyExplainerConfig?: AWSSageMakerEndpointConfig9; } export interface AWSSageMakerEndpointConfig9 { EnableExplanations?: string; InferenceConfig?: AWSSageMakerEndpointConfig10; ShapConfig: AWSSageMakerEndpointConfig13; } export interface AWSSageMakerEndpointConfig10 { ContentTemplate?: string; FeatureHeaders?: AWSSageMakerEndpointConfig11[]; FeatureTypes?: AWSSageMakerEndpointConfig12[]; FeaturesAttribute?: string; LabelAttribute?: string; LabelHeaders?: AWSSageMakerEndpointConfig11[]; LabelIndex?: number; MaxPayloadInMB?: number; MaxRecordCount?: number; ProbabilityAttribute?: string; ProbabilityIndex?: number; } export interface AWSSageMakerEndpointConfig11 {} export interface AWSSageMakerEndpointConfig12 {} export interface AWSSageMakerEndpointConfig13 { NumberOfSamples?: number; Seed?: number; ShapBaselineConfig: AWSSageMakerEndpointConfig14; TextConfig?: AWSSageMakerEndpointConfig15; UseLogit?: boolean; } export interface AWSSageMakerEndpointConfig14 { MimeType?: string; ShapBaseline?: string; ShapBaselineUri?: string; } export interface AWSSageMakerEndpointConfig15 { Granularity: string; Language: string; } export interface AWSSageMakerEndpointConfig16 { AcceleratorType?: string; ContainerStartupHealthCheckTimeoutInSeconds?: number; InitialInstanceCount?: number; InitialVariantWeight: number; InstanceType?: string; ModelDataDownloadTimeoutInSeconds?: number; ModelName: string; ServerlessConfig?: AWSSageMakerEndpointConfig17; VariantName: string; VolumeSizeInGB?: number; } export interface AWSSageMakerEndpointConfig17 { MaxConcurrency: number; MemorySizeInMB: number; } export interface AWSSageMakerFeatureGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; EventTimeFeatureName: string; FeatureDefinitions: AWSSageMakerFeatureGroup1[]; FeatureGroupName: string; OfflineStoreConfig?: AWSSageMakerFeatureGroup2; OnlineStoreConfig?: AWSSageMakerFeatureGroup5; RecordIdentifierFeatureName: string; RoleArn?: string; Tags?: Tag[]; }; Type: 'AWS::SageMaker::FeatureGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerFeatureGroup1 { FeatureName: string; FeatureType: string; } export interface AWSSageMakerFeatureGroup2 { DataCatalogConfig?: AWSSageMakerFeatureGroup3; DisableGlueTableCreation?: boolean; S3StorageConfig: AWSSageMakerFeatureGroup4; TableFormat?: string; } export interface AWSSageMakerFeatureGroup3 { Catalog: string; Database: string; TableName: string; } export interface AWSSageMakerFeatureGroup4 { KmsKeyId?: string; S3Uri: string; } export interface AWSSageMakerFeatureGroup5 { EnableOnlineStore?: boolean; SecurityConfig?: AWSSageMakerFeatureGroup6; } export interface AWSSageMakerFeatureGroup6 { KmsKeyId?: string; } export interface AWSSageMakerImage { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ImageDescription?: string; ImageDisplayName?: string; ImageName: string; ImageRoleArn: string; Tags?: Tag[]; }; Type: 'AWS::SageMaker::Image'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerImageVersion { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BaseImage: string; ImageName: string; }; Type: 'AWS::SageMaker::ImageVersion'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerModel { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Containers?: AWSSageMakerModel1[]; EnableNetworkIsolation?: boolean; ExecutionRoleArn: string; InferenceExecutionConfig?: AWSSageMakerModel5; ModelName?: string; PrimaryContainer?: AWSSageMakerModel1; Tags?: Tag[]; VpcConfig?: AWSSageMakerModel6; }; Type: 'AWS::SageMaker::Model'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerModel1 { ContainerHostname?: string; Environment?: { [k: string]: unknown; }; Image?: string; ImageConfig?: AWSSageMakerModel2; InferenceSpecificationName?: string; Mode?: string; ModelDataUrl?: string; ModelPackageName?: string; MultiModelConfig?: AWSSageMakerModel4; } export interface AWSSageMakerModel2 { RepositoryAccessMode: string; RepositoryAuthConfig?: AWSSageMakerModel3; } export interface AWSSageMakerModel3 { RepositoryCredentialsProviderArn: string; } export interface AWSSageMakerModel4 { ModelCacheSetting?: string; } export interface AWSSageMakerModel5 { Mode: string; } export interface AWSSageMakerModel6 { SecurityGroupIds: string[]; Subnets: string[]; } export interface AWSSageMakerModelBiasJobDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EndpointName?: string; JobDefinitionName?: string; JobResources: AWSSageMakerModelBiasJobDefinition1; ModelBiasAppSpecification: AWSSageMakerModelBiasJobDefinition3; ModelBiasBaselineConfig?: AWSSageMakerModelBiasJobDefinition4; ModelBiasJobInput: AWSSageMakerModelBiasJobDefinition6; ModelBiasJobOutputConfig: AWSSageMakerModelBiasJobDefinition13; NetworkConfig?: AWSSageMakerModelBiasJobDefinition16; RoleArn: string; StoppingCondition?: AWSSageMakerModelBiasJobDefinition18; Tags?: Tag[]; }; Type: 'AWS::SageMaker::ModelBiasJobDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerModelBiasJobDefinition1 { ClusterConfig: AWSSageMakerModelBiasJobDefinition2; } export interface AWSSageMakerModelBiasJobDefinition2 { InstanceCount: number; InstanceType: string; VolumeKmsKeyId?: string; VolumeSizeInGB: number; } export interface AWSSageMakerModelBiasJobDefinition3 { ConfigUri: string; Environment?: { [k: string]: unknown; }; ImageUri: string; } export interface AWSSageMakerModelBiasJobDefinition4 { BaseliningJobName?: string; ConstraintsResource?: AWSSageMakerModelBiasJobDefinition5; } export interface AWSSageMakerModelBiasJobDefinition5 { S3Uri?: string; } export interface AWSSageMakerModelBiasJobDefinition6 { BatchTransformInput?: AWSSageMakerModelBiasJobDefinition7; EndpointInput?: AWSSageMakerModelBiasJobDefinition11; GroundTruthS3Input: AWSSageMakerModelBiasJobDefinition12; } export interface AWSSageMakerModelBiasJobDefinition7 { DataCapturedDestinationS3Uri: string; DatasetFormat: AWSSageMakerModelBiasJobDefinition8; EndTimeOffset?: string; FeaturesAttribute?: string; InferenceAttribute?: string; LocalPath: string; ProbabilityAttribute?: string; ProbabilityThresholdAttribute?: number; S3DataDistributionType?: string; S3InputMode?: string; StartTimeOffset?: string; } export interface AWSSageMakerModelBiasJobDefinition8 { Csv?: AWSSageMakerModelBiasJobDefinition9; Json?: AWSSageMakerModelBiasJobDefinition10; Parquet?: boolean; } export interface AWSSageMakerModelBiasJobDefinition9 { Header?: boolean; } export interface AWSSageMakerModelBiasJobDefinition10 { Line?: boolean; } export interface AWSSageMakerModelBiasJobDefinition11 { EndTimeOffset?: string; EndpointName: string; FeaturesAttribute?: string; InferenceAttribute?: string; LocalPath: string; ProbabilityAttribute?: string; ProbabilityThresholdAttribute?: number; S3DataDistributionType?: string; S3InputMode?: string; StartTimeOffset?: string; } export interface AWSSageMakerModelBiasJobDefinition12 { S3Uri: string; } export interface AWSSageMakerModelBiasJobDefinition13 { KmsKeyId?: string; MonitoringOutputs: AWSSageMakerModelBiasJobDefinition14[]; } export interface AWSSageMakerModelBiasJobDefinition14 { S3Output: AWSSageMakerModelBiasJobDefinition15; } export interface AWSSageMakerModelBiasJobDefinition15 { LocalPath: string; S3UploadMode?: string; S3Uri: string; } export interface AWSSageMakerModelBiasJobDefinition16 { EnableInterContainerTrafficEncryption?: boolean; EnableNetworkIsolation?: boolean; VpcConfig?: AWSSageMakerModelBiasJobDefinition17; } export interface AWSSageMakerModelBiasJobDefinition17 { SecurityGroupIds: string[]; Subnets: string[]; } export interface AWSSageMakerModelBiasJobDefinition18 { MaxRuntimeInSeconds: number; } export interface AWSSageMakerModelExplainabilityJobDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EndpointName?: string; JobDefinitionName?: string; JobResources: AWSSageMakerModelExplainabilityJobDefinition1; ModelExplainabilityAppSpecification: AWSSageMakerModelExplainabilityJobDefinition3; ModelExplainabilityBaselineConfig?: AWSSageMakerModelExplainabilityJobDefinition4; ModelExplainabilityJobInput: AWSSageMakerModelExplainabilityJobDefinition6; ModelExplainabilityJobOutputConfig: AWSSageMakerModelExplainabilityJobDefinition12; NetworkConfig?: AWSSageMakerModelExplainabilityJobDefinition15; RoleArn: string; StoppingCondition?: AWSSageMakerModelExplainabilityJobDefinition17; Tags?: Tag[]; }; Type: 'AWS::SageMaker::ModelExplainabilityJobDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerModelExplainabilityJobDefinition1 { ClusterConfig: AWSSageMakerModelExplainabilityJobDefinition2; } export interface AWSSageMakerModelExplainabilityJobDefinition2 { InstanceCount: number; InstanceType: string; VolumeKmsKeyId?: string; VolumeSizeInGB: number; } export interface AWSSageMakerModelExplainabilityJobDefinition3 { ConfigUri: string; Environment?: { [k: string]: unknown; }; ImageUri: string; } export interface AWSSageMakerModelExplainabilityJobDefinition4 { BaseliningJobName?: string; ConstraintsResource?: AWSSageMakerModelExplainabilityJobDefinition5; } export interface AWSSageMakerModelExplainabilityJobDefinition5 { S3Uri?: string; } export interface AWSSageMakerModelExplainabilityJobDefinition6 { BatchTransformInput?: AWSSageMakerModelExplainabilityJobDefinition7; EndpointInput?: AWSSageMakerModelExplainabilityJobDefinition11; } export interface AWSSageMakerModelExplainabilityJobDefinition7 { DataCapturedDestinationS3Uri: string; DatasetFormat: AWSSageMakerModelExplainabilityJobDefinition8; FeaturesAttribute?: string; InferenceAttribute?: string; LocalPath: string; ProbabilityAttribute?: string; S3DataDistributionType?: string; S3InputMode?: string; } export interface AWSSageMakerModelExplainabilityJobDefinition8 { Csv?: AWSSageMakerModelExplainabilityJobDefinition9; Json?: AWSSageMakerModelExplainabilityJobDefinition10; Parquet?: boolean; } export interface AWSSageMakerModelExplainabilityJobDefinition9 { Header?: boolean; } export interface AWSSageMakerModelExplainabilityJobDefinition10 { Line?: boolean; } export interface AWSSageMakerModelExplainabilityJobDefinition11 { EndpointName: string; FeaturesAttribute?: string; InferenceAttribute?: string; LocalPath: string; ProbabilityAttribute?: string; S3DataDistributionType?: string; S3InputMode?: string; } export interface AWSSageMakerModelExplainabilityJobDefinition12 { KmsKeyId?: string; MonitoringOutputs: AWSSageMakerModelExplainabilityJobDefinition13[]; } export interface AWSSageMakerModelExplainabilityJobDefinition13 { S3Output: AWSSageMakerModelExplainabilityJobDefinition14; } export interface AWSSageMakerModelExplainabilityJobDefinition14 { LocalPath: string; S3UploadMode?: string; S3Uri: string; } export interface AWSSageMakerModelExplainabilityJobDefinition15 { EnableInterContainerTrafficEncryption?: boolean; EnableNetworkIsolation?: boolean; VpcConfig?: AWSSageMakerModelExplainabilityJobDefinition16; } export interface AWSSageMakerModelExplainabilityJobDefinition16 { SecurityGroupIds: string[]; Subnets: string[]; } export interface AWSSageMakerModelExplainabilityJobDefinition17 { MaxRuntimeInSeconds: number; } export interface AWSSageMakerModelPackage { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AdditionalInferenceSpecificationDefinition?: AWSSageMakerModelPackage1; AdditionalInferenceSpecifications?: AWSSageMakerModelPackage1[]; AdditionalInferenceSpecificationsToAdd?: AWSSageMakerModelPackage1[]; ApprovalDescription?: string; CertifyForMarketplace?: boolean; ClientToken?: string; CreatedBy?: AWSSageMakerModelPackage4; CustomerMetadataProperties?: { [k: string]: unknown; }; Domain?: string; DriftCheckBaselines?: AWSSageMakerModelPackage5; Environment?: { [k: string]: unknown; }; InferenceSpecification?: AWSSageMakerModelPackage12; LastModifiedBy?: AWSSageMakerModelPackage4; LastModifiedTime?: string; MetadataProperties?: AWSSageMakerModelPackage13; ModelApprovalStatus?: string; ModelMetrics?: AWSSageMakerModelPackage14; ModelPackageDescription?: string; ModelPackageGroupName?: string; ModelPackageName?: string; ModelPackageStatusDetails?: AWSSageMakerModelPackage19; ModelPackageStatusItem?: AWSSageMakerModelPackage20; ModelPackageVersion?: number; SamplePayloadUrl?: string; SourceAlgorithmSpecification?: AWSSageMakerModelPackage21; Tags?: Tag[]; Task?: string; ValidationSpecification?: AWSSageMakerModelPackage23; }; Type: 'AWS::SageMaker::ModelPackage'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerModelPackage1 { Containers: AWSSageMakerModelPackage2[]; Description?: string; Name: string; SupportedContentTypes?: string[]; SupportedRealtimeInferenceInstanceTypes?: string[]; SupportedResponseMIMETypes?: string[]; SupportedTransformInstanceTypes?: string[]; } export interface AWSSageMakerModelPackage2 { ContainerHostname?: string; Environment?: { [k: string]: unknown; }; Framework?: string; FrameworkVersion?: string; Image: string; ImageDigest?: string; ModelDataUrl?: string; ModelInput?: AWSSageMakerModelPackage3; NearestModelName?: string; ProductId?: string; } export interface AWSSageMakerModelPackage3 { DataInputConfig: string; } export interface AWSSageMakerModelPackage4 { DomainId?: string; UserProfileArn?: string; UserProfileName?: string; } export interface AWSSageMakerModelPackage5 { Bias?: AWSSageMakerModelPackage6; Explainability?: AWSSageMakerModelPackage9; ModelDataQuality?: AWSSageMakerModelPackage10; ModelQuality?: AWSSageMakerModelPackage11; } export interface AWSSageMakerModelPackage6 { ConfigFile?: AWSSageMakerModelPackage7; PostTrainingConstraints?: AWSSageMakerModelPackage8; PreTrainingConstraints?: AWSSageMakerModelPackage8; } export interface AWSSageMakerModelPackage7 { ContentDigest?: string; ContentType?: string; S3Uri: string; } export interface AWSSageMakerModelPackage8 { ContentDigest?: string; ContentType: string; S3Uri: string; } export interface AWSSageMakerModelPackage9 { ConfigFile?: AWSSageMakerModelPackage7; Constraints?: AWSSageMakerModelPackage8; } export interface AWSSageMakerModelPackage10 { Constraints?: AWSSageMakerModelPackage8; Statistics?: AWSSageMakerModelPackage8; } export interface AWSSageMakerModelPackage11 { Constraints?: AWSSageMakerModelPackage8; Statistics?: AWSSageMakerModelPackage8; } export interface AWSSageMakerModelPackage12 { Containers: AWSSageMakerModelPackage2[]; SupportedContentTypes: string[]; SupportedRealtimeInferenceInstanceTypes?: string[]; SupportedResponseMIMETypes: string[]; SupportedTransformInstanceTypes?: string[]; } export interface AWSSageMakerModelPackage13 { CommitId?: string; GeneratedBy?: string; ProjectId?: string; Repository?: string; } export interface AWSSageMakerModelPackage14 { Bias?: AWSSageMakerModelPackage15; Explainability?: AWSSageMakerModelPackage16; ModelDataQuality?: AWSSageMakerModelPackage17; ModelQuality?: AWSSageMakerModelPackage18; } export interface AWSSageMakerModelPackage15 { PostTrainingReport?: AWSSageMakerModelPackage8; PreTrainingReport?: AWSSageMakerModelPackage8; Report?: AWSSageMakerModelPackage8; } export interface AWSSageMakerModelPackage16 { Report?: AWSSageMakerModelPackage8; } export interface AWSSageMakerModelPackage17 { Constraints?: AWSSageMakerModelPackage8; Statistics?: AWSSageMakerModelPackage8; } export interface AWSSageMakerModelPackage18 { Constraints?: AWSSageMakerModelPackage8; Statistics?: AWSSageMakerModelPackage8; } export interface AWSSageMakerModelPackage19 { ImageScanStatuses?: AWSSageMakerModelPackage20[]; ValidationStatuses: AWSSageMakerModelPackage20[]; } export interface AWSSageMakerModelPackage20 { FailureReason?: string; Name: string; Status: string; } export interface AWSSageMakerModelPackage21 { SourceAlgorithms: AWSSageMakerModelPackage22[]; } export interface AWSSageMakerModelPackage22 { AlgorithmName: string; ModelDataUrl?: string; } export interface AWSSageMakerModelPackage23 { ValidationProfiles: AWSSageMakerModelPackage24[]; ValidationRole: string; } export interface AWSSageMakerModelPackage24 { ProfileName: string; TransformJobDefinition: AWSSageMakerModelPackage25; } export interface AWSSageMakerModelPackage25 { BatchStrategy?: string; Environment?: { [k: string]: unknown; }; MaxConcurrentTransforms?: number; MaxPayloadInMB?: number; TransformInput: AWSSageMakerModelPackage26; TransformOutput: AWSSageMakerModelPackage29; TransformResources: AWSSageMakerModelPackage30; } export interface AWSSageMakerModelPackage26 { CompressionType?: string; ContentType?: string; DataSource: AWSSageMakerModelPackage27; SplitType?: string; } export interface AWSSageMakerModelPackage27 { S3DataSource: AWSSageMakerModelPackage28; } export interface AWSSageMakerModelPackage28 { S3DataType: string; S3Uri: string; } export interface AWSSageMakerModelPackage29 { Accept?: string; AssembleWith?: string; KmsKeyId?: string; S3OutputPath: string; } export interface AWSSageMakerModelPackage30 { InstanceCount: number; InstanceType: string; VolumeKmsKeyId?: string; } export interface AWSSageMakerModelPackageGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ModelPackageGroupDescription?: string; ModelPackageGroupName: string; ModelPackageGroupPolicy?: { [k: string]: unknown; }; Tags?: Tag[]; }; Type: 'AWS::SageMaker::ModelPackageGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerModelQualityJobDefinition { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EndpointName?: string; JobDefinitionName?: string; JobResources: AWSSageMakerModelQualityJobDefinition1; ModelQualityAppSpecification: AWSSageMakerModelQualityJobDefinition3; ModelQualityBaselineConfig?: AWSSageMakerModelQualityJobDefinition4; ModelQualityJobInput: AWSSageMakerModelQualityJobDefinition6; ModelQualityJobOutputConfig: AWSSageMakerModelQualityJobDefinition13; NetworkConfig?: AWSSageMakerModelQualityJobDefinition16; RoleArn: string; StoppingCondition?: AWSSageMakerModelQualityJobDefinition18; Tags?: Tag[]; }; Type: 'AWS::SageMaker::ModelQualityJobDefinition'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerModelQualityJobDefinition1 { ClusterConfig: AWSSageMakerModelQualityJobDefinition2; } export interface AWSSageMakerModelQualityJobDefinition2 { InstanceCount: number; InstanceType: string; VolumeKmsKeyId?: string; VolumeSizeInGB: number; } export interface AWSSageMakerModelQualityJobDefinition3 { ContainerArguments?: string[]; ContainerEntrypoint?: string[]; Environment?: { [k: string]: unknown; }; ImageUri: string; PostAnalyticsProcessorSourceUri?: string; ProblemType: string; RecordPreprocessorSourceUri?: string; } export interface AWSSageMakerModelQualityJobDefinition4 { BaseliningJobName?: string; ConstraintsResource?: AWSSageMakerModelQualityJobDefinition5; } export interface AWSSageMakerModelQualityJobDefinition5 { S3Uri?: string; } export interface AWSSageMakerModelQualityJobDefinition6 { BatchTransformInput?: AWSSageMakerModelQualityJobDefinition7; EndpointInput?: AWSSageMakerModelQualityJobDefinition11; GroundTruthS3Input: AWSSageMakerModelQualityJobDefinition12; } export interface AWSSageMakerModelQualityJobDefinition7 { DataCapturedDestinationS3Uri: string; DatasetFormat: AWSSageMakerModelQualityJobDefinition8; EndTimeOffset?: string; InferenceAttribute?: string; LocalPath: string; ProbabilityAttribute?: string; ProbabilityThresholdAttribute?: number; S3DataDistributionType?: string; S3InputMode?: string; StartTimeOffset?: string; } export interface AWSSageMakerModelQualityJobDefinition8 { Csv?: AWSSageMakerModelQualityJobDefinition9; Json?: AWSSageMakerModelQualityJobDefinition10; Parquet?: boolean; } export interface AWSSageMakerModelQualityJobDefinition9 { Header?: boolean; } export interface AWSSageMakerModelQualityJobDefinition10 { Line?: boolean; } export interface AWSSageMakerModelQualityJobDefinition11 { EndTimeOffset?: string; EndpointName: string; InferenceAttribute?: string; LocalPath: string; ProbabilityAttribute?: string; ProbabilityThresholdAttribute?: number; S3DataDistributionType?: string; S3InputMode?: string; StartTimeOffset?: string; } export interface AWSSageMakerModelQualityJobDefinition12 { S3Uri: string; } export interface AWSSageMakerModelQualityJobDefinition13 { KmsKeyId?: string; MonitoringOutputs: AWSSageMakerModelQualityJobDefinition14[]; } export interface AWSSageMakerModelQualityJobDefinition14 { S3Output: AWSSageMakerModelQualityJobDefinition15; } export interface AWSSageMakerModelQualityJobDefinition15 { LocalPath: string; S3UploadMode?: string; S3Uri: string; } export interface AWSSageMakerModelQualityJobDefinition16 { EnableInterContainerTrafficEncryption?: boolean; EnableNetworkIsolation?: boolean; VpcConfig?: AWSSageMakerModelQualityJobDefinition17; } export interface AWSSageMakerModelQualityJobDefinition17 { SecurityGroupIds: string[]; Subnets: string[]; } export interface AWSSageMakerModelQualityJobDefinition18 { MaxRuntimeInSeconds: number; } export interface AWSSageMakerMonitoringSchedule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { EndpointName?: string; FailureReason?: string; LastMonitoringExecutionSummary?: AWSSageMakerMonitoringSchedule1; MonitoringScheduleConfig: AWSSageMakerMonitoringSchedule2; MonitoringScheduleName: string; MonitoringScheduleStatus?: string; Tags?: Tag[]; }; Type: 'AWS::SageMaker::MonitoringSchedule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerMonitoringSchedule1 { CreationTime: string; EndpointName?: string; FailureReason?: string; LastModifiedTime: string; MonitoringExecutionStatus: string; MonitoringScheduleName: string; ProcessingJobArn?: string; ScheduledTime: string; } export interface AWSSageMakerMonitoringSchedule2 { MonitoringJobDefinition?: AWSSageMakerMonitoringSchedule3; MonitoringJobDefinitionName?: string; MonitoringType?: string; ScheduleConfig?: AWSSageMakerMonitoringSchedule22; } export interface AWSSageMakerMonitoringSchedule3 { BaselineConfig?: AWSSageMakerMonitoringSchedule4; Environment?: { [k: string]: unknown; }; MonitoringAppSpecification: AWSSageMakerMonitoringSchedule7; MonitoringInputs: AWSSageMakerMonitoringSchedule8[]; MonitoringOutputConfig: AWSSageMakerMonitoringSchedule14; MonitoringResources: AWSSageMakerMonitoringSchedule17; NetworkConfig?: AWSSageMakerMonitoringSchedule19; RoleArn: string; StoppingCondition?: AWSSageMakerMonitoringSchedule21; } export interface AWSSageMakerMonitoringSchedule4 { ConstraintsResource?: AWSSageMakerMonitoringSchedule5; StatisticsResource?: AWSSageMakerMonitoringSchedule6; } export interface AWSSageMakerMonitoringSchedule5 { S3Uri?: string; } export interface AWSSageMakerMonitoringSchedule6 { S3Uri?: string; } export interface AWSSageMakerMonitoringSchedule7 { ContainerArguments?: string[]; ContainerEntrypoint?: string[]; ImageUri: string; PostAnalyticsProcessorSourceUri?: string; RecordPreprocessorSourceUri?: string; } export interface AWSSageMakerMonitoringSchedule8 { BatchTransformInput?: AWSSageMakerMonitoringSchedule9; EndpointInput?: AWSSageMakerMonitoringSchedule13; } export interface AWSSageMakerMonitoringSchedule9 { DataCapturedDestinationS3Uri: string; DatasetFormat: AWSSageMakerMonitoringSchedule10; LocalPath: string; S3DataDistributionType?: string; S3InputMode?: string; } export interface AWSSageMakerMonitoringSchedule10 { Csv?: AWSSageMakerMonitoringSchedule11; Json?: AWSSageMakerMonitoringSchedule12; Parquet?: boolean; } export interface AWSSageMakerMonitoringSchedule11 { Header?: boolean; } export interface AWSSageMakerMonitoringSchedule12 { Line?: boolean; } export interface AWSSageMakerMonitoringSchedule13 { EndpointName: string; LocalPath: string; S3DataDistributionType?: string; S3InputMode?: string; } export interface AWSSageMakerMonitoringSchedule14 { KmsKeyId?: string; MonitoringOutputs: AWSSageMakerMonitoringSchedule15[]; } export interface AWSSageMakerMonitoringSchedule15 { S3Output: AWSSageMakerMonitoringSchedule16; } export interface AWSSageMakerMonitoringSchedule16 { LocalPath: string; S3UploadMode?: string; S3Uri: string; } export interface AWSSageMakerMonitoringSchedule17 { ClusterConfig: AWSSageMakerMonitoringSchedule18; } export interface AWSSageMakerMonitoringSchedule18 { InstanceCount: number; InstanceType: string; VolumeKmsKeyId?: string; VolumeSizeInGB: number; } export interface AWSSageMakerMonitoringSchedule19 { EnableInterContainerTrafficEncryption?: boolean; EnableNetworkIsolation?: boolean; VpcConfig?: AWSSageMakerMonitoringSchedule20; } export interface AWSSageMakerMonitoringSchedule20 { SecurityGroupIds: string[]; Subnets: string[]; } export interface AWSSageMakerMonitoringSchedule21 { MaxRuntimeInSeconds: number; } export interface AWSSageMakerMonitoringSchedule22 { ScheduleExpression: string; } export interface AWSSageMakerNotebookInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceleratorTypes?: string[]; AdditionalCodeRepositories?: string[]; DefaultCodeRepository?: string; DirectInternetAccess?: string; InstanceMetadataServiceConfiguration?: AWSSageMakerNotebookInstance1; InstanceType: string; KmsKeyId?: string; LifecycleConfigName?: string; NotebookInstanceName?: string; PlatformIdentifier?: string; RoleArn: string; RootAccess?: string; SecurityGroupIds?: string[]; SubnetId?: string; Tags?: Tag[]; VolumeSizeInGB?: number; }; Type: 'AWS::SageMaker::NotebookInstance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerNotebookInstance1 { MinimumInstanceMetadataServiceVersion: string; } export interface AWSSageMakerNotebookInstanceLifecycleConfig { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { NotebookInstanceLifecycleConfigName?: string; OnCreate?: AWSSageMakerNotebookInstanceLifecycleConfig1[]; OnStart?: AWSSageMakerNotebookInstanceLifecycleConfig1[]; }; Type: 'AWS::SageMaker::NotebookInstanceLifecycleConfig'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerNotebookInstanceLifecycleConfig1 { Content?: string; } export interface AWSSageMakerPipeline { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ParallelismConfiguration?: AWSSageMakerPipeline1; PipelineDefinition: AWSSageMakerPipeline2; PipelineDescription?: string; PipelineDisplayName?: string; PipelineName: string; RoleArn: string; Tags?: Tag[]; }; Type: 'AWS::SageMaker::Pipeline'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerPipeline1 { MaxParallelExecutionSteps: number; } export interface AWSSageMakerPipeline2 { PipelineDefinitionBody?: string; PipelineDefinitionS3Location?: AWSSageMakerPipeline3; } export interface AWSSageMakerPipeline3 { Bucket: string; ETag?: string; Key: string; Version?: string; } export interface AWSSageMakerProject { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ProjectDescription?: string; ProjectName: string; ServiceCatalogProvisioningDetails: AWSSageMakerProject1; Tags?: Tag[]; }; Type: 'AWS::SageMaker::Project'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerProject1 { PathId?: string; ProductId: string; ProvisioningArtifactId?: string; ProvisioningParameters?: AWSSageMakerProject2[]; } export interface AWSSageMakerProject2 { Key: string; Value: string; } export interface AWSSageMakerUserProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DomainId: string; SingleSignOnUserIdentifier?: string; SingleSignOnUserValue?: string; Tags?: Tag[]; UserProfileName: string; UserSettings?: AWSSageMakerUserProfile1; }; Type: 'AWS::SageMaker::UserProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerUserProfile1 { ExecutionRole?: string; JupyterServerAppSettings?: AWSSageMakerUserProfile2; KernelGatewayAppSettings?: AWSSageMakerUserProfile4; RStudioServerProAppSettings?: AWSSageMakerUserProfile6; SecurityGroups?: string[]; SharingSettings?: AWSSageMakerUserProfile7; } export interface AWSSageMakerUserProfile2 { DefaultResourceSpec?: AWSSageMakerUserProfile3; } export interface AWSSageMakerUserProfile3 { InstanceType?: string; SageMakerImageArn?: string; SageMakerImageVersionArn?: string; } export interface AWSSageMakerUserProfile4 { CustomImages?: AWSSageMakerUserProfile5[]; DefaultResourceSpec?: AWSSageMakerUserProfile3; } export interface AWSSageMakerUserProfile5 { AppImageConfigName: string; ImageName: string; ImageVersionNumber?: number; } export interface AWSSageMakerUserProfile6 { AccessStatus?: string; UserGroup?: string; } export interface AWSSageMakerUserProfile7 { NotebookOutputOption?: string; S3KmsKeyId?: string; S3OutputPath?: string; } export interface AWSSageMakerWorkteam { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; MemberDefinitions?: AWSSageMakerWorkteam1[]; NotificationConfiguration?: AWSSageMakerWorkteam4; Tags?: Tag[]; WorkforceName?: string; WorkteamName?: string; }; Type: 'AWS::SageMaker::Workteam'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSageMakerWorkteam1 { CognitoMemberDefinition?: AWSSageMakerWorkteam2; OidcMemberDefinition?: AWSSageMakerWorkteam3; } export interface AWSSageMakerWorkteam2 { CognitoClientId: string; CognitoUserGroup: string; CognitoUserPool: string; } export interface AWSSageMakerWorkteam3 { OidcGroups: string[]; } export interface AWSSageMakerWorkteam4 { NotificationTopicArn: string; } export interface AWSSchedulerSchedule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; EndDate?: string; FlexibleTimeWindow: AWSSchedulerSchedule1; GroupName?: string; KmsKeyArn?: string; Name?: string; ScheduleExpression: string; ScheduleExpressionTimezone?: string; StartDate?: string; State?: string; Target: AWSSchedulerSchedule2; }; Type: 'AWS::Scheduler::Schedule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSchedulerSchedule1 { MaximumWindowInMinutes?: number; Mode: string; } export interface AWSSchedulerSchedule2 { Arn: string; DeadLetterConfig?: AWSSchedulerSchedule3; EcsParameters?: AWSSchedulerSchedule4; EventBridgeParameters?: AWSSchedulerSchedule10; Input?: string; KinesisParameters?: AWSSchedulerSchedule11; RetryPolicy?: AWSSchedulerSchedule12; RoleArn: string; SageMakerPipelineParameters?: AWSSchedulerSchedule13; SqsParameters?: AWSSchedulerSchedule15; } export interface AWSSchedulerSchedule3 { Arn?: string; } export interface AWSSchedulerSchedule4 { CapacityProviderStrategy?: AWSSchedulerSchedule5[]; EnableECSManagedTags?: boolean; EnableExecuteCommand?: boolean; Group?: string; LaunchType?: string; NetworkConfiguration?: AWSSchedulerSchedule6; PlacementConstraints?: AWSSchedulerSchedule8[]; PlacementStrategy?: AWSSchedulerSchedule9[]; PlatformVersion?: string; PropagateTags?: string; ReferenceId?: string; Tags?: { [k: string]: unknown; }; TaskCount?: number; TaskDefinitionArn: string; } export interface AWSSchedulerSchedule5 { Base?: number; CapacityProvider: string; Weight?: number; } export interface AWSSchedulerSchedule6 { AwsvpcConfiguration?: AWSSchedulerSchedule7; } export interface AWSSchedulerSchedule7 { AssignPublicIp?: string; SecurityGroups?: string[]; Subnets: string[]; } export interface AWSSchedulerSchedule8 { Expression?: string; Type?: string; } export interface AWSSchedulerSchedule9 { Field?: string; Type?: string; } export interface AWSSchedulerSchedule10 { DetailType: string; Source: string; } export interface AWSSchedulerSchedule11 { PartitionKey: string; } export interface AWSSchedulerSchedule12 { MaximumEventAgeInSeconds?: number; MaximumRetryAttempts?: number; } export interface AWSSchedulerSchedule13 { PipelineParameterList?: AWSSchedulerSchedule14[]; } export interface AWSSchedulerSchedule14 { Name: string; Value: string; } export interface AWSSchedulerSchedule15 { MessageGroupId?: string; } export interface AWSSchedulerScheduleGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Name?: string; Tags?: Tag[]; }; Type: 'AWS::Scheduler::ScheduleGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSecretsManagerResourcePolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BlockPublicPolicy?: boolean; ResourcePolicy: { [k: string]: unknown; }; SecretId: string; }; Type: 'AWS::SecretsManager::ResourcePolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSecretsManagerRotationSchedule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { HostedRotationLambda?: AWSSecretsManagerRotationSchedule1; RotateImmediatelyOnUpdate?: boolean; RotationLambdaARN?: string; RotationRules?: AWSSecretsManagerRotationSchedule2; SecretId: string; }; Type: 'AWS::SecretsManager::RotationSchedule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSecretsManagerRotationSchedule1 { ExcludeCharacters?: string; KmsKeyArn?: string; MasterSecretArn?: string; MasterSecretKmsKeyArn?: string; RotationLambdaName?: string; RotationType: string; SuperuserSecretArn?: string; SuperuserSecretKmsKeyArn?: string; VpcSecurityGroupIds?: string; VpcSubnetIds?: string; } export interface AWSSecretsManagerRotationSchedule2 { AutomaticallyAfterDays?: number; Duration?: string; ScheduleExpression?: string; } export interface AWSSecretsManagerSecret { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; GenerateSecretString?: AWSSecretsManagerSecret1; KmsKeyId?: string; Name?: string; ReplicaRegions?: AWSSecretsManagerSecret2[]; SecretString?: string; Tags?: Tag[]; }; Type: 'AWS::SecretsManager::Secret'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSecretsManagerSecret1 { ExcludeCharacters?: string; ExcludeLowercase?: boolean; ExcludeNumbers?: boolean; ExcludePunctuation?: boolean; ExcludeUppercase?: boolean; GenerateStringKey?: string; IncludeSpace?: boolean; PasswordLength?: number; RequireEachIncludedType?: boolean; SecretStringTemplate?: string; } export interface AWSSecretsManagerSecret2 { KmsKeyId?: string; Region: string; } export interface AWSSecretsManagerSecretTargetAttachment { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { SecretId: string; TargetId: string; TargetType: string; }; Type: 'AWS::SecretsManager::SecretTargetAttachment'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSecurityHubHub { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Tags?: { [k: string]: unknown; }; }; Type: 'AWS::SecurityHub::Hub'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogAcceptedPortfolioShare { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; PortfolioId: string; }; Type: 'AWS::ServiceCatalog::AcceptedPortfolioShare'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogCloudFormationProduct { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; Description?: string; Distributor?: string; Name: string; Owner: string; ProvisioningArtifactParameters: AWSServiceCatalogCloudFormationProduct1[]; ReplaceProvisioningArtifacts?: boolean; SupportDescription?: string; SupportEmail?: string; SupportUrl?: string; Tags?: Tag[]; }; Type: 'AWS::ServiceCatalog::CloudFormationProduct'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogCloudFormationProduct1 { Description?: string; DisableTemplateValidation?: boolean; Info: { [k: string]: unknown; }; Name?: string; } export interface AWSServiceCatalogCloudFormationProvisionedProduct { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { AcceptLanguage?: string; NotificationArns?: string[]; PathId?: string; PathName?: string; ProductId?: string; ProductName?: string; ProvisionedProductName?: string; ProvisioningArtifactId?: string; ProvisioningArtifactName?: string; ProvisioningParameters?: AWSServiceCatalogCloudFormationProvisionedProduct1[]; ProvisioningPreferences?: AWSServiceCatalogCloudFormationProvisionedProduct2; Tags?: Tag[]; }; Type: 'AWS::ServiceCatalog::CloudFormationProvisionedProduct'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogCloudFormationProvisionedProduct1 { Key: string; Value: string; } export interface AWSServiceCatalogCloudFormationProvisionedProduct2 { StackSetAccounts?: string[]; StackSetFailureToleranceCount?: number; StackSetFailureTolerancePercentage?: number; StackSetMaxConcurrencyCount?: number; StackSetMaxConcurrencyPercentage?: number; StackSetOperationType?: string; StackSetRegions?: string[]; } export interface AWSServiceCatalogLaunchNotificationConstraint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; Description?: string; NotificationArns: string[]; PortfolioId: string; ProductId: string; }; Type: 'AWS::ServiceCatalog::LaunchNotificationConstraint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogLaunchRoleConstraint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; Description?: string; LocalRoleName?: string; PortfolioId: string; ProductId: string; RoleArn?: string; }; Type: 'AWS::ServiceCatalog::LaunchRoleConstraint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogLaunchTemplateConstraint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; Description?: string; PortfolioId: string; ProductId: string; Rules: string; }; Type: 'AWS::ServiceCatalog::LaunchTemplateConstraint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogPortfolio { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; Description?: string; DisplayName: string; ProviderName: string; Tags?: Tag[]; }; Type: 'AWS::ServiceCatalog::Portfolio'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogPortfolioPrincipalAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; PortfolioId: string; PrincipalARN: string; PrincipalType: string; }; Type: 'AWS::ServiceCatalog::PortfolioPrincipalAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogPortfolioProductAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; PortfolioId: string; ProductId: string; SourcePortfolioId?: string; }; Type: 'AWS::ServiceCatalog::PortfolioProductAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogPortfolioShare { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; AccountId: string; PortfolioId: string; ShareTagOptions?: boolean; }; Type: 'AWS::ServiceCatalog::PortfolioShare'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogResourceUpdateConstraint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; Description?: string; PortfolioId: string; ProductId: string; TagUpdateOnProvisionedProduct: string; }; Type: 'AWS::ServiceCatalog::ResourceUpdateConstraint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogServiceAction { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; Definition: AWSServiceCatalogServiceAction1[]; DefinitionType: string; Description?: string; Name: string; }; Type: 'AWS::ServiceCatalog::ServiceAction'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogServiceAction1 { Key: string; Value: string; } export interface AWSServiceCatalogServiceActionAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ProductId: string; ProvisioningArtifactId: string; ServiceActionId: string; }; Type: 'AWS::ServiceCatalog::ServiceActionAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogStackSetConstraint { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AcceptLanguage?: string; AccountList: string[]; AdminRole: string; Description: string; ExecutionRole: string; PortfolioId: string; ProductId: string; RegionList: string[]; StackInstanceControl: string; }; Type: 'AWS::ServiceCatalog::StackSetConstraint'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogTagOption { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Active?: boolean; Key: string; Value: string; }; Type: 'AWS::ServiceCatalog::TagOption'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogTagOptionAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResourceId: string; TagOptionId: string; }; Type: 'AWS::ServiceCatalog::TagOptionAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogAppRegistryApplication { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::ServiceCatalogAppRegistry::Application'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogAppRegistryAttributeGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Attributes: { [k: string]: unknown; }; Description?: string; Name: string; Tags?: { [k: string]: unknown; }; }; Type: 'AWS::ServiceCatalogAppRegistry::AttributeGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogAppRegistryAttributeGroupAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Application: string; AttributeGroup: string; }; Type: 'AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceCatalogAppRegistryResourceAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Application: string; Resource: string; ResourceType: string; }; Type: 'AWS::ServiceCatalogAppRegistry::ResourceAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceDiscoveryHttpNamespace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Tags?: Tag[]; }; Type: 'AWS::ServiceDiscovery::HttpNamespace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceDiscoveryInstance { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { InstanceAttributes: { [k: string]: unknown; }; InstanceId?: string; ServiceId: string; }; Type: 'AWS::ServiceDiscovery::Instance'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceDiscoveryPrivateDnsNamespace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Properties?: AWSServiceDiscoveryPrivateDnsNamespace1; Tags?: Tag[]; Vpc: string; }; Type: 'AWS::ServiceDiscovery::PrivateDnsNamespace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceDiscoveryPrivateDnsNamespace1 { DnsProperties?: AWSServiceDiscoveryPrivateDnsNamespace2; } export interface AWSServiceDiscoveryPrivateDnsNamespace2 { SOA?: AWSServiceDiscoveryPrivateDnsNamespace3; } export interface AWSServiceDiscoveryPrivateDnsNamespace3 { TTL?: number; } export interface AWSServiceDiscoveryPublicDnsNamespace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; Properties?: AWSServiceDiscoveryPublicDnsNamespace1; Tags?: Tag[]; }; Type: 'AWS::ServiceDiscovery::PublicDnsNamespace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceDiscoveryPublicDnsNamespace1 { DnsProperties?: AWSServiceDiscoveryPublicDnsNamespace2; } export interface AWSServiceDiscoveryPublicDnsNamespace2 { SOA?: AWSServiceDiscoveryPublicDnsNamespace3; } export interface AWSServiceDiscoveryPublicDnsNamespace3 { TTL?: number; } export interface AWSServiceDiscoveryService { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Description?: string; DnsConfig?: AWSServiceDiscoveryService1; HealthCheckConfig?: AWSServiceDiscoveryService3; HealthCheckCustomConfig?: AWSServiceDiscoveryService4; Name?: string; NamespaceId?: string; Tags?: Tag[]; Type?: string; }; Type: 'AWS::ServiceDiscovery::Service'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSServiceDiscoveryService1 { DnsRecords: AWSServiceDiscoveryService2[]; NamespaceId?: string; RoutingPolicy?: string; } export interface AWSServiceDiscoveryService2 { TTL: number; Type: string; } export interface AWSServiceDiscoveryService3 { FailureThreshold?: number; ResourcePath?: string; Type: string; } export interface AWSServiceDiscoveryService4 { FailureThreshold?: number; } export interface AWSSignerProfilePermission { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Action: string; Principal: string; ProfileName: string; ProfileVersion?: string; StatementId: string; }; Type: 'AWS::Signer::ProfilePermission'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSignerSigningProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { PlatformId: string; SignatureValidityPeriod?: AWSSignerSigningProfile1; Tags?: Tag[]; }; Type: 'AWS::Signer::SigningProfile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSignerSigningProfile1 { Type?: string; Value?: number; } export interface AWSStepFunctionsActivity { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; Tags?: AWSStepFunctionsActivity1[]; }; Type: 'AWS::StepFunctions::Activity'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSStepFunctionsActivity1 { Key: string; Value: string; } export interface AWSStepFunctionsStateMachine { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Definition?: { [k: string]: unknown; }; DefinitionS3Location?: AWSStepFunctionsStateMachine1; DefinitionString?: string; DefinitionSubstitutions?: { [k: string]: unknown; }; LoggingConfiguration?: AWSStepFunctionsStateMachine2; RoleArn: string; StateMachineName?: string; StateMachineType?: string; Tags?: AWSStepFunctionsStateMachine5[]; TracingConfiguration?: AWSStepFunctionsStateMachine6; }; Type: 'AWS::StepFunctions::StateMachine'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSStepFunctionsStateMachine1 { Bucket: string; Key: string; Version?: string; } export interface AWSStepFunctionsStateMachine2 { Destinations?: AWSStepFunctionsStateMachine3[]; IncludeExecutionData?: boolean; Level?: string; } export interface AWSStepFunctionsStateMachine3 { CloudWatchLogsLogGroup?: AWSStepFunctionsStateMachine4; } export interface AWSStepFunctionsStateMachine4 { LogGroupArn?: string; } export interface AWSStepFunctionsStateMachine5 { Key: string; Value: string; } export interface AWSStepFunctionsStateMachine6 { Enabled?: boolean; } export interface AWSSupportAppAccountAlias { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccountAlias: string; }; Type: 'AWS::SupportApp::AccountAlias'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSupportAppSlackChannelConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ChannelId: string; ChannelName?: string; ChannelRoleArn: string; NotifyOnAddCorrespondenceToCase?: boolean; NotifyOnCaseSeverity: string; NotifyOnCreateOrReopenCase?: boolean; NotifyOnResolveCase?: boolean; TeamId: string; }; Type: 'AWS::SupportApp::SlackChannelConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSupportAppSlackWorkspaceConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { TeamId: string; VersionId?: string; }; Type: 'AWS::SupportApp::SlackWorkspaceConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSyntheticsCanary { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ArtifactConfig?: AWSSyntheticsCanary1; ArtifactS3Location: string; Code: AWSSyntheticsCanary3; DeleteLambdaResourcesOnCanaryDeletion?: boolean; ExecutionRoleArn: string; FailureRetentionPeriod?: number; Name: string; RunConfig?: AWSSyntheticsCanary4; RuntimeVersion: string; Schedule: AWSSyntheticsCanary5; StartCanaryAfterCreation: boolean; SuccessRetentionPeriod?: number; Tags?: Tag[]; VPCConfig?: AWSSyntheticsCanary6; VisualReference?: AWSSyntheticsCanary7; }; Type: 'AWS::Synthetics::Canary'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSSyntheticsCanary1 { S3Encryption?: AWSSyntheticsCanary2; } export interface AWSSyntheticsCanary2 { EncryptionMode?: string; KmsKeyArn?: string; } export interface AWSSyntheticsCanary3 { Handler: string; S3Bucket?: string; S3Key?: string; S3ObjectVersion?: string; Script?: string; } export interface AWSSyntheticsCanary4 { ActiveTracing?: boolean; EnvironmentVariables?: { [k: string]: unknown; }; MemoryInMB?: number; TimeoutInSeconds?: number; } export interface AWSSyntheticsCanary5 { DurationInSeconds?: string; Expression: string; } export interface AWSSyntheticsCanary6 { SecurityGroupIds: string[]; SubnetIds: string[]; VpcId?: string; } export interface AWSSyntheticsCanary7 { BaseCanaryRunId: string; BaseScreenshots?: AWSSyntheticsCanary8[]; } export interface AWSSyntheticsCanary8 { IgnoreCoordinates?: string[]; ScreenshotName: string; } export interface AWSSyntheticsGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; ResourceArns?: string[]; Tags?: Tag[]; }; Type: 'AWS::Synthetics::Group'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTimestreamDatabase { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { DatabaseName?: string; KmsKeyId?: string; Tags?: Tag[]; }; Type: 'AWS::Timestream::Database'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTimestreamScheduledQuery { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ClientToken?: string; ErrorReportConfiguration: AWSTimestreamScheduledQuery1; KmsKeyId?: string; NotificationConfiguration: AWSTimestreamScheduledQuery3; QueryString: string; ScheduleConfiguration: AWSTimestreamScheduledQuery5; ScheduledQueryExecutionRoleArn: string; ScheduledQueryName?: string; Tags?: Tag[]; TargetConfiguration?: AWSTimestreamScheduledQuery6; }; Type: 'AWS::Timestream::ScheduledQuery'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTimestreamScheduledQuery1 { S3Configuration: AWSTimestreamScheduledQuery2; } export interface AWSTimestreamScheduledQuery2 { BucketName: string; EncryptionOption?: string; ObjectKeyPrefix?: string; } export interface AWSTimestreamScheduledQuery3 { SnsConfiguration: AWSTimestreamScheduledQuery4; } export interface AWSTimestreamScheduledQuery4 { TopicArn: string; } export interface AWSTimestreamScheduledQuery5 { ScheduleExpression: string; } export interface AWSTimestreamScheduledQuery6 { TimestreamConfiguration: AWSTimestreamScheduledQuery7; } export interface AWSTimestreamScheduledQuery7 { DatabaseName: string; DimensionMappings: AWSTimestreamScheduledQuery8[]; MeasureNameColumn?: string; MixedMeasureMappings?: AWSTimestreamScheduledQuery9[]; MultiMeasureMappings?: AWSTimestreamScheduledQuery11; TableName: string; TimeColumn: string; } export interface AWSTimestreamScheduledQuery8 { DimensionValueType: string; Name: string; } export interface AWSTimestreamScheduledQuery9 { MeasureName?: string; MeasureValueType: string; MultiMeasureAttributeMappings?: AWSTimestreamScheduledQuery10[]; SourceColumn?: string; TargetMeasureName?: string; } export interface AWSTimestreamScheduledQuery10 { MeasureValueType: string; SourceColumn: string; TargetMultiMeasureAttributeName?: string; } export interface AWSTimestreamScheduledQuery11 { MultiMeasureAttributeMappings: AWSTimestreamScheduledQuery10[]; TargetMultiMeasureName?: string; } export interface AWSTimestreamTable { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DatabaseName: string; MagneticStoreWriteProperties?: AWSTimestreamTable1; RetentionProperties?: AWSTimestreamTable4; TableName?: string; Tags?: Tag[]; }; Type: 'AWS::Timestream::Table'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTimestreamTable1 { EnableMagneticStoreWrites: boolean; MagneticStoreRejectedDataLocation?: AWSTimestreamTable2; } export interface AWSTimestreamTable2 { S3Configuration?: AWSTimestreamTable3; } export interface AWSTimestreamTable3 { BucketName: string; EncryptionOption: string; KmsKeyId?: string; ObjectKeyPrefix?: string; } export interface AWSTimestreamTable4 { MagneticStoreRetentionPeriodInDays?: string; MemoryStoreRetentionPeriodInHours?: string; } export interface AWSTransferAgreement { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessRole: string; BaseDirectory: string; Description?: string; LocalProfileId: string; PartnerProfileId: string; ServerId: string; Status?: string; Tags?: Tag[]; }; Type: 'AWS::Transfer::Agreement'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTransferCertificate { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ActiveDate?: string; Certificate: string; CertificateChain?: string; Description?: string; InactiveDate?: string; PrivateKey?: string; Tags?: Tag[]; Usage: string; }; Type: 'AWS::Transfer::Certificate'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTransferConnector { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AccessRole: string; As2Config: AWSTransferConnector1; LoggingRole?: string; Tags?: Tag[]; Url: string; }; Type: 'AWS::Transfer::Connector'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTransferConnector1 { Compression?: string; EncryptionAlgorithm?: string; LocalProfileId?: string; MdnResponse?: string; MdnSigningAlgorithm?: string; MessageSubject?: string; PartnerProfileId?: string; SigningAlgorithm?: string; } export interface AWSTransferProfile { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { As2Id: string; CertificateIds?: string[]; ProfileType: string; Tags?: Tag[]; }; Type: 'AWS::Transfer::Profile'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTransferServer { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { Certificate?: string; Domain?: string; EndpointDetails?: AWSTransferServer1; EndpointType?: string; IdentityProviderDetails?: AWSTransferServer2; IdentityProviderType?: string; LoggingRole?: string; PostAuthenticationLoginBanner?: string; PreAuthenticationLoginBanner?: string; ProtocolDetails?: AWSTransferServer3; Protocols?: AWSTransferServer5[]; SecurityPolicyName?: string; Tags?: Tag[]; WorkflowDetails?: AWSTransferServer6; }; Type: 'AWS::Transfer::Server'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTransferServer1 { AddressAllocationIds?: string[]; SecurityGroupIds?: string[]; SubnetIds?: string[]; VpcEndpointId?: string; VpcId?: string; } export interface AWSTransferServer2 { DirectoryId?: string; Function?: string; InvocationRole?: string; Url?: string; } export interface AWSTransferServer3 { As2Transports?: AWSTransferServer4[]; PassiveIp?: string; SetStatOption?: string; TlsSessionResumptionMode?: string; } export interface AWSTransferServer4 {} export interface AWSTransferServer5 {} export interface AWSTransferServer6 { OnPartialUpload?: AWSTransferServer7[]; OnUpload?: AWSTransferServer7[]; } export interface AWSTransferServer7 { ExecutionRole: string; WorkflowId: string; } export interface AWSTransferUser { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { HomeDirectory?: string; HomeDirectoryMappings?: AWSTransferUser1[]; HomeDirectoryType?: string; Policy?: string; PosixProfile?: AWSTransferUser2; Role: string; ServerId: string; SshPublicKeys?: AWSTransferUser3[]; Tags?: Tag[]; UserName: string; }; Type: 'AWS::Transfer::User'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTransferUser1 { Entry: string; Target: string; } export interface AWSTransferUser2 { Gid: number; SecondaryGids?: number[]; Uid: number; } export interface AWSTransferUser3 {} export interface AWSTransferWorkflow { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; OnExceptionSteps?: AWSTransferWorkflow1[]; Steps: AWSTransferWorkflow1[]; Tags?: Tag[]; }; Type: 'AWS::Transfer::Workflow'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSTransferWorkflow1 { CopyStepDetails?: AWSTransferWorkflow2; CustomStepDetails?: AWSTransferWorkflow5; DeleteStepDetails?: AWSTransferWorkflow6; TagStepDetails?: AWSTransferWorkflow7; Type?: string; } export interface AWSTransferWorkflow2 { DestinationFileLocation?: AWSTransferWorkflow3; Name?: string; OverwriteExisting?: string; SourceFileLocation?: string; } export interface AWSTransferWorkflow3 { S3FileLocation?: AWSTransferWorkflow4; } export interface AWSTransferWorkflow4 { Bucket?: string; Key?: string; } export interface AWSTransferWorkflow5 { Name?: string; SourceFileLocation?: string; Target?: string; TimeoutSeconds?: number; } export interface AWSTransferWorkflow6 { Name?: string; SourceFileLocation?: string; } export interface AWSTransferWorkflow7 { Name?: string; SourceFileLocation?: string; Tags?: AWSTransferWorkflow8[]; } export interface AWSTransferWorkflow8 { Key: string; Value: string; } export interface AWSVoiceIDDomain { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; ServerSideEncryptionConfiguration: AWSVoiceIDDomain1; Tags?: Tag[]; }; Type: 'AWS::VoiceID::Domain'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSVoiceIDDomain1 { KmsKeyId: string; } export interface AWSWAFByteMatchSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ByteMatchTuples?: AWSWAFByteMatchSet1[]; Name: string; }; Type: 'AWS::WAF::ByteMatchSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFByteMatchSet1 { FieldToMatch: AWSWAFByteMatchSet2; PositionalConstraint: string; TargetString?: string; TargetStringBase64?: string; TextTransformation: string; } export interface AWSWAFByteMatchSet2 { Data?: string; Type: string; } export interface AWSWAFIPSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { IPSetDescriptors?: AWSWAFIPSet1[]; Name: string; }; Type: 'AWS::WAF::IPSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFIPSet1 { Type: string; Value: string; } export interface AWSWAFRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MetricName: string; Name: string; Predicates?: AWSWAFRule1[]; }; Type: 'AWS::WAF::Rule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRule1 { DataId: string; Negated: boolean; Type: string; } export interface AWSWAFSizeConstraintSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; SizeConstraints: AWSWAFSizeConstraintSet1[]; }; Type: 'AWS::WAF::SizeConstraintSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFSizeConstraintSet1 { ComparisonOperator: string; FieldToMatch: AWSWAFSizeConstraintSet2; Size: number; TextTransformation: string; } export interface AWSWAFSizeConstraintSet2 { Data?: string; Type: string; } export interface AWSWAFSqlInjectionMatchSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; SqlInjectionMatchTuples?: AWSWAFSqlInjectionMatchSet1[]; }; Type: 'AWS::WAF::SqlInjectionMatchSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFSqlInjectionMatchSet1 { FieldToMatch: AWSWAFSqlInjectionMatchSet2; TextTransformation: string; } export interface AWSWAFSqlInjectionMatchSet2 { Data?: string; Type: string; } export interface AWSWAFWebACL { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DefaultAction: AWSWAFWebACL1; MetricName: string; Name: string; Rules?: AWSWAFWebACL2[]; }; Type: 'AWS::WAF::WebACL'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFWebACL1 { Type: string; } export interface AWSWAFWebACL2 { Action?: AWSWAFWebACL1; Priority: number; RuleId: string; } export interface AWSWAFXssMatchSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; XssMatchTuples: AWSWAFXssMatchSet1[]; }; Type: 'AWS::WAF::XssMatchSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFXssMatchSet1 { FieldToMatch: AWSWAFXssMatchSet2; TextTransformation: string; } export interface AWSWAFXssMatchSet2 { Data?: string; Type: string; } export interface AWSWAFRegionalByteMatchSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ByteMatchTuples?: AWSWAFRegionalByteMatchSet1[]; Name: string; }; Type: 'AWS::WAFRegional::ByteMatchSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalByteMatchSet1 { FieldToMatch: AWSWAFRegionalByteMatchSet2; PositionalConstraint: string; TargetString?: string; TargetStringBase64?: string; TextTransformation: string; } export interface AWSWAFRegionalByteMatchSet2 { Data?: string; Type: string; } export interface AWSWAFRegionalGeoMatchSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { GeoMatchConstraints?: AWSWAFRegionalGeoMatchSet1[]; Name: string; }; Type: 'AWS::WAFRegional::GeoMatchSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalGeoMatchSet1 { Type: string; Value: string; } export interface AWSWAFRegionalIPSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { IPSetDescriptors?: AWSWAFRegionalIPSet1[]; Name: string; }; Type: 'AWS::WAFRegional::IPSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalIPSet1 { Type: string; Value: string; } export interface AWSWAFRegionalRateBasedRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MatchPredicates?: AWSWAFRegionalRateBasedRule1[]; MetricName: string; Name: string; RateKey: string; RateLimit: number; }; Type: 'AWS::WAFRegional::RateBasedRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalRateBasedRule1 { DataId: string; Negated: boolean; Type: string; } export interface AWSWAFRegionalRegexPatternSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; RegexPatternStrings: string[]; }; Type: 'AWS::WAFRegional::RegexPatternSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { MetricName: string; Name: string; Predicates?: AWSWAFRegionalRule1[]; }; Type: 'AWS::WAFRegional::Rule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalRule1 { DataId: string; Negated: boolean; Type: string; } export interface AWSWAFRegionalSizeConstraintSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; SizeConstraints?: AWSWAFRegionalSizeConstraintSet1[]; }; Type: 'AWS::WAFRegional::SizeConstraintSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalSizeConstraintSet1 { ComparisonOperator: string; FieldToMatch: AWSWAFRegionalSizeConstraintSet2; Size: number; TextTransformation: string; } export interface AWSWAFRegionalSizeConstraintSet2 { Data?: string; Type: string; } export interface AWSWAFRegionalSqlInjectionMatchSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; SqlInjectionMatchTuples?: AWSWAFRegionalSqlInjectionMatchSet1[]; }; Type: 'AWS::WAFRegional::SqlInjectionMatchSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalSqlInjectionMatchSet1 { FieldToMatch: AWSWAFRegionalSqlInjectionMatchSet2; TextTransformation: string; } export interface AWSWAFRegionalSqlInjectionMatchSet2 { Data?: string; Type: string; } export interface AWSWAFRegionalWebACL { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { DefaultAction: AWSWAFRegionalWebACL1; MetricName: string; Name: string; Rules?: AWSWAFRegionalWebACL2[]; }; Type: 'AWS::WAFRegional::WebACL'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalWebACL1 { Type: string; } export interface AWSWAFRegionalWebACL2 { Action: AWSWAFRegionalWebACL1; Priority: number; RuleId: string; } export interface AWSWAFRegionalWebACLAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResourceArn: string; WebACLId: string; }; Type: 'AWS::WAFRegional::WebACLAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalXssMatchSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Name: string; XssMatchTuples?: AWSWAFRegionalXssMatchSet1[]; }; Type: 'AWS::WAFRegional::XssMatchSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFRegionalXssMatchSet1 { FieldToMatch: AWSWAFRegionalXssMatchSet2; TextTransformation: string; } export interface AWSWAFRegionalXssMatchSet2 { Data?: string; Type: string; } export interface AWSWAFv2IPSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Addresses: string[]; Description?: string; IPAddressVersion: string; Name?: string; Scope: string; Tags?: Tag[]; }; Type: 'AWS::WAFv2::IPSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFv2LoggingConfiguration { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { LogDestinationConfigs: string[]; LoggingFilter?: AWSWAFv2LoggingConfiguration1; RedactedFields?: AWSWAFv2LoggingConfiguration6[]; ResourceArn: string; }; Type: 'AWS::WAFv2::LoggingConfiguration'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFv2LoggingConfiguration1 { DefaultBehavior: string; Filters: AWSWAFv2LoggingConfiguration2[]; } export interface AWSWAFv2LoggingConfiguration2 { Behavior: string; Conditions: AWSWAFv2LoggingConfiguration3[]; Requirement: string; } export interface AWSWAFv2LoggingConfiguration3 { ActionCondition?: AWSWAFv2LoggingConfiguration4; LabelNameCondition?: AWSWAFv2LoggingConfiguration5; } export interface AWSWAFv2LoggingConfiguration4 { Action: string; } export interface AWSWAFv2LoggingConfiguration5 { LabelName: string; } export interface AWSWAFv2LoggingConfiguration6 { JsonBody?: AWSWAFv2LoggingConfiguration7; Method?: { [k: string]: unknown; }; QueryString?: { [k: string]: unknown; }; SingleHeader?: AWSWAFv2LoggingConfiguration9; UriPath?: { [k: string]: unknown; }; } export interface AWSWAFv2LoggingConfiguration7 { InvalidFallbackBehavior?: string; MatchPattern: AWSWAFv2LoggingConfiguration8; MatchScope: string; } export interface AWSWAFv2LoggingConfiguration8 { All?: { [k: string]: unknown; }; IncludedPaths?: string[]; } export interface AWSWAFv2LoggingConfiguration9 { Name: string; } export interface AWSWAFv2RegexPatternSet { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name?: string; RegularExpressionList: string[]; Scope: string; Tags?: Tag[]; }; Type: 'AWS::WAFv2::RegexPatternSet'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFv2RuleGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AvailableLabels?: AWSWAFv2RuleGroup1[]; Capacity: number; ConsumedLabels?: AWSWAFv2RuleGroup1[]; CustomResponseBodies?: { [k: string]: AWSWAFv2RuleGroup2; }; Description?: string; Name?: string; Rules?: AWSWAFv2RuleGroup3[]; Scope: string; Tags?: Tag[]; VisibilityConfig: AWSWAFv2RuleGroup44; }; Type: 'AWS::WAFv2::RuleGroup'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFv2RuleGroup1 { Name?: string; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSWAFv2RuleGroup2 { Content: string; ContentType: string; } export interface AWSWAFv2RuleGroup3 { Action?: AWSWAFv2RuleGroup4; CaptchaConfig?: AWSWAFv2RuleGroup13; ChallengeConfig?: AWSWAFv2RuleGroup15; Name: string; Priority: number; RuleLabels?: AWSWAFv2RuleGroup16[]; Statement: AWSWAFv2RuleGroup17; VisibilityConfig: AWSWAFv2RuleGroup44; } export interface AWSWAFv2RuleGroup4 { Allow?: AWSWAFv2RuleGroup5; Block?: AWSWAFv2RuleGroup8; Captcha?: AWSWAFv2RuleGroup10; Challenge?: AWSWAFv2RuleGroup11; Count?: AWSWAFv2RuleGroup12; } export interface AWSWAFv2RuleGroup5 { CustomRequestHandling?: AWSWAFv2RuleGroup6; } export interface AWSWAFv2RuleGroup6 { InsertHeaders: AWSWAFv2RuleGroup7[]; } export interface AWSWAFv2RuleGroup7 { Name: string; Value: string; } export interface AWSWAFv2RuleGroup8 { CustomResponse?: AWSWAFv2RuleGroup9; } export interface AWSWAFv2RuleGroup9 { CustomResponseBodyKey?: string; ResponseCode: number; ResponseHeaders?: AWSWAFv2RuleGroup7[]; } export interface AWSWAFv2RuleGroup10 { CustomRequestHandling?: AWSWAFv2RuleGroup6; } export interface AWSWAFv2RuleGroup11 { CustomRequestHandling?: AWSWAFv2RuleGroup6; } export interface AWSWAFv2RuleGroup12 { CustomRequestHandling?: AWSWAFv2RuleGroup6; } export interface AWSWAFv2RuleGroup13 { ImmunityTimeProperty?: AWSWAFv2RuleGroup14; } export interface AWSWAFv2RuleGroup14 { ImmunityTime: number; } export interface AWSWAFv2RuleGroup15 { ImmunityTimeProperty?: AWSWAFv2RuleGroup14; } export interface AWSWAFv2RuleGroup16 { Name: string; } export interface AWSWAFv2RuleGroup17 { AndStatement?: AWSWAFv2RuleGroup18; ByteMatchStatement?: AWSWAFv2RuleGroup19; GeoMatchStatement?: AWSWAFv2RuleGroup31; IPSetReferenceStatement?: AWSWAFv2RuleGroup33; LabelMatchStatement?: AWSWAFv2RuleGroup35; NotStatement?: AWSWAFv2RuleGroup36; OrStatement?: AWSWAFv2RuleGroup37; RateBasedStatement?: AWSWAFv2RuleGroup38; RegexMatchStatement?: AWSWAFv2RuleGroup39; RegexPatternSetReferenceStatement?: AWSWAFv2RuleGroup40; SizeConstraintStatement?: AWSWAFv2RuleGroup41; SqliMatchStatement?: AWSWAFv2RuleGroup42; XssMatchStatement?: AWSWAFv2RuleGroup43; } export interface AWSWAFv2RuleGroup18 { Statements: AWSWAFv2RuleGroup17[]; } export interface AWSWAFv2RuleGroup19 { FieldToMatch: AWSWAFv2RuleGroup20; PositionalConstraint: string; SearchString?: string; SearchStringBase64?: string; TextTransformations: AWSWAFv2RuleGroup30[]; } export interface AWSWAFv2RuleGroup20 { AllQueryArguments?: { [k: string]: unknown; }; Body?: AWSWAFv2RuleGroup21; Cookies?: AWSWAFv2RuleGroup22; Headers?: AWSWAFv2RuleGroup24; JsonBody?: AWSWAFv2RuleGroup26; Method?: { [k: string]: unknown; }; QueryString?: { [k: string]: unknown; }; SingleHeader?: AWSWAFv2RuleGroup28; SingleQueryArgument?: AWSWAFv2RuleGroup29; UriPath?: { [k: string]: unknown; }; } export interface AWSWAFv2RuleGroup21 { OversizeHandling?: string; } export interface AWSWAFv2RuleGroup22 { MatchPattern: AWSWAFv2RuleGroup23; MatchScope: string; OversizeHandling: string; } export interface AWSWAFv2RuleGroup23 { All?: { [k: string]: unknown; }; ExcludedCookies?: string[]; IncludedCookies?: string[]; } export interface AWSWAFv2RuleGroup24 { MatchPattern: AWSWAFv2RuleGroup25; MatchScope: string; OversizeHandling: string; } export interface AWSWAFv2RuleGroup25 { All?: { [k: string]: unknown; }; ExcludedHeaders?: string[]; IncludedHeaders?: string[]; } export interface AWSWAFv2RuleGroup26 { InvalidFallbackBehavior?: string; MatchPattern: AWSWAFv2RuleGroup27; MatchScope: string; OversizeHandling?: string; } export interface AWSWAFv2RuleGroup27 { All?: { [k: string]: unknown; }; IncludedPaths?: string[]; } export interface AWSWAFv2RuleGroup28 { Name: string; } export interface AWSWAFv2RuleGroup29 { Name: string; } export interface AWSWAFv2RuleGroup30 { Priority: number; Type: string; } export interface AWSWAFv2RuleGroup31 { CountryCodes?: string[]; ForwardedIPConfig?: AWSWAFv2RuleGroup32; } export interface AWSWAFv2RuleGroup32 { FallbackBehavior: string; HeaderName: string; } export interface AWSWAFv2RuleGroup33 { Arn: string; IPSetForwardedIPConfig?: AWSWAFv2RuleGroup34; } export interface AWSWAFv2RuleGroup34 { FallbackBehavior: string; HeaderName: string; Position: string; } export interface AWSWAFv2RuleGroup35 { Key: string; Scope: string; } export interface AWSWAFv2RuleGroup36 { Statement: AWSWAFv2RuleGroup17; } export interface AWSWAFv2RuleGroup37 { Statements: AWSWAFv2RuleGroup17[]; } export interface AWSWAFv2RuleGroup38 { AggregateKeyType: string; ForwardedIPConfig?: AWSWAFv2RuleGroup32; Limit: number; ScopeDownStatement?: AWSWAFv2RuleGroup17; } export interface AWSWAFv2RuleGroup39 { FieldToMatch: AWSWAFv2RuleGroup20; RegexString: string; TextTransformations: AWSWAFv2RuleGroup30[]; } export interface AWSWAFv2RuleGroup40 { Arn: string; FieldToMatch: AWSWAFv2RuleGroup20; TextTransformations: AWSWAFv2RuleGroup30[]; } export interface AWSWAFv2RuleGroup41 { ComparisonOperator: string; FieldToMatch: AWSWAFv2RuleGroup20; Size: number; TextTransformations: AWSWAFv2RuleGroup30[]; } export interface AWSWAFv2RuleGroup42 { FieldToMatch: AWSWAFv2RuleGroup20; SensitivityLevel?: string; TextTransformations: AWSWAFv2RuleGroup30[]; } export interface AWSWAFv2RuleGroup43 { FieldToMatch: AWSWAFv2RuleGroup20; TextTransformations: AWSWAFv2RuleGroup30[]; } export interface AWSWAFv2RuleGroup44 { CloudWatchMetricsEnabled: boolean; MetricName: string; SampledRequestsEnabled: boolean; } export interface AWSWAFv2WebACL { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { CaptchaConfig?: AWSWAFv2WebACL1; ChallengeConfig?: AWSWAFv2WebACL3; CustomResponseBodies?: { [k: string]: AWSWAFv2WebACL4; }; DefaultAction: AWSWAFv2WebACL5; Description?: string; Name?: string; Rules?: AWSWAFv2WebACL11[]; Scope: string; Tags?: Tag[]; TokenDomains?: string[]; VisibilityConfig: AWSWAFv2WebACL52; }; Type: 'AWS::WAFv2::WebACL'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWAFv2WebACL1 { ImmunityTimeProperty?: AWSWAFv2WebACL2; } export interface AWSWAFv2WebACL2 { ImmunityTime: number; } export interface AWSWAFv2WebACL3 { ImmunityTimeProperty?: AWSWAFv2WebACL2; } /** * This interface was referenced by `undefined`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9]+$". */ export interface AWSWAFv2WebACL4 { Content: string; ContentType: string; } export interface AWSWAFv2WebACL5 { Allow?: AWSWAFv2WebACL6; Block?: AWSWAFv2WebACL9; } export interface AWSWAFv2WebACL6 { CustomRequestHandling?: AWSWAFv2WebACL7; } export interface AWSWAFv2WebACL7 { InsertHeaders: AWSWAFv2WebACL8[]; } export interface AWSWAFv2WebACL8 { Name: string; Value: string; } export interface AWSWAFv2WebACL9 { CustomResponse?: AWSWAFv2WebACL10; } export interface AWSWAFv2WebACL10 { CustomResponseBodyKey?: string; ResponseCode: number; ResponseHeaders?: AWSWAFv2WebACL8[]; } export interface AWSWAFv2WebACL11 { Action?: AWSWAFv2WebACL12; CaptchaConfig?: AWSWAFv2WebACL1; ChallengeConfig?: AWSWAFv2WebACL3; Name: string; OverrideAction?: AWSWAFv2WebACL16; Priority: number; RuleLabels?: AWSWAFv2WebACL17[]; Statement: AWSWAFv2WebACL18; VisibilityConfig: AWSWAFv2WebACL52; } export interface AWSWAFv2WebACL12 { Allow?: AWSWAFv2WebACL6; Block?: AWSWAFv2WebACL9; Captcha?: AWSWAFv2WebACL13; Challenge?: AWSWAFv2WebACL14; Count?: AWSWAFv2WebACL15; } export interface AWSWAFv2WebACL13 { CustomRequestHandling?: AWSWAFv2WebACL7; } export interface AWSWAFv2WebACL14 { CustomRequestHandling?: AWSWAFv2WebACL7; } export interface AWSWAFv2WebACL15 { CustomRequestHandling?: AWSWAFv2WebACL7; } export interface AWSWAFv2WebACL16 { Count?: { [k: string]: unknown; }; None?: { [k: string]: unknown; }; } export interface AWSWAFv2WebACL17 { Name: string; } export interface AWSWAFv2WebACL18 { AndStatement?: AWSWAFv2WebACL19; ByteMatchStatement?: AWSWAFv2WebACL20; GeoMatchStatement?: AWSWAFv2WebACL32; IPSetReferenceStatement?: AWSWAFv2WebACL34; LabelMatchStatement?: AWSWAFv2WebACL36; ManagedRuleGroupStatement?: AWSWAFv2WebACL37; NotStatement?: AWSWAFv2WebACL43; OrStatement?: AWSWAFv2WebACL44; RateBasedStatement?: AWSWAFv2WebACL45; RegexMatchStatement?: AWSWAFv2WebACL46; RegexPatternSetReferenceStatement?: AWSWAFv2WebACL47; RuleGroupReferenceStatement?: AWSWAFv2WebACL48; SizeConstraintStatement?: AWSWAFv2WebACL49; SqliMatchStatement?: AWSWAFv2WebACL50; XssMatchStatement?: AWSWAFv2WebACL51; } export interface AWSWAFv2WebACL19 { Statements: AWSWAFv2WebACL18[]; } export interface AWSWAFv2WebACL20 { FieldToMatch: AWSWAFv2WebACL21; PositionalConstraint: string; SearchString?: string; SearchStringBase64?: string; TextTransformations: AWSWAFv2WebACL31[]; } export interface AWSWAFv2WebACL21 { AllQueryArguments?: { [k: string]: unknown; }; Body?: AWSWAFv2WebACL22; Cookies?: AWSWAFv2WebACL23; Headers?: AWSWAFv2WebACL25; JsonBody?: AWSWAFv2WebACL27; Method?: { [k: string]: unknown; }; QueryString?: { [k: string]: unknown; }; SingleHeader?: AWSWAFv2WebACL29; SingleQueryArgument?: AWSWAFv2WebACL30; UriPath?: { [k: string]: unknown; }; } export interface AWSWAFv2WebACL22 { OversizeHandling?: string; } export interface AWSWAFv2WebACL23 { MatchPattern: AWSWAFv2WebACL24; MatchScope: string; OversizeHandling: string; } export interface AWSWAFv2WebACL24 { All?: { [k: string]: unknown; }; ExcludedCookies?: string[]; IncludedCookies?: string[]; } export interface AWSWAFv2WebACL25 { MatchPattern: AWSWAFv2WebACL26; MatchScope: string; OversizeHandling: string; } export interface AWSWAFv2WebACL26 { All?: { [k: string]: unknown; }; ExcludedHeaders?: string[]; IncludedHeaders?: string[]; } export interface AWSWAFv2WebACL27 { InvalidFallbackBehavior?: string; MatchPattern: AWSWAFv2WebACL28; MatchScope: string; OversizeHandling?: string; } export interface AWSWAFv2WebACL28 { All?: { [k: string]: unknown; }; IncludedPaths?: string[]; } export interface AWSWAFv2WebACL29 { Name: string; } export interface AWSWAFv2WebACL30 { Name: string; } export interface AWSWAFv2WebACL31 { Priority: number; Type: string; } export interface AWSWAFv2WebACL32 { CountryCodes?: string[]; ForwardedIPConfig?: AWSWAFv2WebACL33; } export interface AWSWAFv2WebACL33 { FallbackBehavior: string; HeaderName: string; } export interface AWSWAFv2WebACL34 { Arn: string; IPSetForwardedIPConfig?: AWSWAFv2WebACL35; } export interface AWSWAFv2WebACL35 { FallbackBehavior: string; HeaderName: string; Position: string; } export interface AWSWAFv2WebACL36 { Key: string; Scope: string; } export interface AWSWAFv2WebACL37 { ExcludedRules?: AWSWAFv2WebACL38[]; ManagedRuleGroupConfigs?: AWSWAFv2WebACL39[]; Name: string; RuleActionOverrides?: AWSWAFv2WebACL42[]; ScopeDownStatement?: AWSWAFv2WebACL18; VendorName: string; Version?: string; } export interface AWSWAFv2WebACL38 { Name: string; } export interface AWSWAFv2WebACL39 { AWSManagedRulesBotControlRuleSet?: AWSWAFv2WebACL40; LoginPath?: string; PasswordField?: AWSWAFv2WebACL41; PayloadType?: string; UsernameField?: AWSWAFv2WebACL41; } export interface AWSWAFv2WebACL40 { InspectionLevel: string; } export interface AWSWAFv2WebACL41 { Identifier: string; } export interface AWSWAFv2WebACL42 { ActionToUse: AWSWAFv2WebACL12; Name: string; } export interface AWSWAFv2WebACL43 { Statement: AWSWAFv2WebACL18; } export interface AWSWAFv2WebACL44 { Statements: AWSWAFv2WebACL18[]; } export interface AWSWAFv2WebACL45 { AggregateKeyType: string; ForwardedIPConfig?: AWSWAFv2WebACL33; Limit: number; ScopeDownStatement?: AWSWAFv2WebACL18; } export interface AWSWAFv2WebACL46 { FieldToMatch: AWSWAFv2WebACL21; RegexString: string; TextTransformations: AWSWAFv2WebACL31[]; } export interface AWSWAFv2WebACL47 { Arn: string; FieldToMatch: AWSWAFv2WebACL21; TextTransformations: AWSWAFv2WebACL31[]; } export interface AWSWAFv2WebACL48 { Arn: string; ExcludedRules?: AWSWAFv2WebACL38[]; RuleActionOverrides?: AWSWAFv2WebACL42[]; } export interface AWSWAFv2WebACL49 { ComparisonOperator: string; FieldToMatch: AWSWAFv2WebACL21; Size: number; TextTransformations: AWSWAFv2WebACL31[]; } export interface AWSWAFv2WebACL50 { FieldToMatch: AWSWAFv2WebACL21; SensitivityLevel?: string; TextTransformations: AWSWAFv2WebACL31[]; } export interface AWSWAFv2WebACL51 { FieldToMatch: AWSWAFv2WebACL21; TextTransformations: AWSWAFv2WebACL31[]; } export interface AWSWAFv2WebACL52 { CloudWatchMetricsEnabled: boolean; MetricName: string; SampledRequestsEnabled: boolean; } export interface AWSWAFv2WebACLAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ResourceArn: string; WebACLArn: string; }; Type: 'AWS::WAFv2::WebACLAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWisdomAssistant { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; Name: string; ServerSideEncryptionConfiguration?: AWSWisdomAssistant1; Tags?: Tag[]; Type: string; }; Type: 'AWS::Wisdom::Assistant'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWisdomAssistant1 { KmsKeyId?: string; } export interface AWSWisdomAssistantAssociation { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AssistantId: string; Association: AWSWisdomAssistantAssociation1; AssociationType: string; Tags?: Tag[]; }; Type: 'AWS::Wisdom::AssistantAssociation'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWisdomAssistantAssociation1 { KnowledgeBaseId: string; } export interface AWSWisdomKnowledgeBase { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { Description?: string; KnowledgeBaseType: string; Name: string; RenderingConfiguration?: AWSWisdomKnowledgeBase1; ServerSideEncryptionConfiguration?: AWSWisdomKnowledgeBase2; SourceConfiguration?: AWSWisdomKnowledgeBase3; Tags?: Tag[]; }; Type: 'AWS::Wisdom::KnowledgeBase'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWisdomKnowledgeBase1 { TemplateUri?: string; } export interface AWSWisdomKnowledgeBase2 { KmsKeyId?: string; } export interface AWSWisdomKnowledgeBase3 { AppIntegrations: AWSWisdomKnowledgeBase4; } export interface AWSWisdomKnowledgeBase4 { AppIntegrationArn: string; ObjectFields: string[]; } export interface AWSWorkSpacesConnectionAlias { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { ConnectionString: string; Tags?: Tag[]; }; Type: 'AWS::WorkSpaces::ConnectionAlias'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWorkSpacesWorkspace { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BundleId: string; DirectoryId: string; RootVolumeEncryptionEnabled?: boolean; Tags?: Tag[]; UserName: string; UserVolumeEncryptionEnabled?: boolean; VolumeEncryptionKey?: string; WorkspaceProperties?: AWSWorkSpacesWorkspace1; }; Type: 'AWS::WorkSpaces::Workspace'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSWorkSpacesWorkspace1 { ComputeTypeName?: string; RootVolumeSizeGib?: number; RunningMode?: string; RunningModeAutoStopTimeoutInMinutes?: number; UserVolumeSizeGib?: number; } export interface AWSXRayGroup { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { FilterExpression?: string; GroupName?: string; InsightsConfiguration?: AWSXRayGroup1; Tags?: AWSXRayGroup2[]; }; Type: 'AWS::XRay::Group'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSXRayGroup1 { InsightsEnabled?: boolean; NotificationsEnabled?: boolean; } export interface AWSXRayGroup2 { Key: string; Value: string; } export interface AWSXRayResourcePolicy { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { BypassPolicyLockoutCheck?: boolean; PolicyDocument: string; PolicyName: string; }; Type: 'AWS::XRay::ResourcePolicy'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSXRaySamplingRule { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties?: { RuleName?: string; SamplingRule?: AWSXRaySamplingRule1; SamplingRuleRecord?: AWSXRaySamplingRule2; SamplingRuleUpdate?: AWSXRaySamplingRule3; Tags?: AWSXRaySamplingRule4[]; }; Type: 'AWS::XRay::SamplingRule'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AWSXRaySamplingRule1 { Attributes?: { [k: string]: unknown; }; FixedRate?: number; HTTPMethod?: string; Host?: string; Priority?: number; ReservoirSize?: number; ResourceARN?: string; RuleARN?: string; RuleName?: string; ServiceName?: string; ServiceType?: string; URLPath?: string; Version?: number; } export interface AWSXRaySamplingRule2 { CreatedAt?: string; ModifiedAt?: string; SamplingRule?: AWSXRaySamplingRule1; } export interface AWSXRaySamplingRule3 { Attributes?: { [k: string]: unknown; }; FixedRate?: number; HTTPMethod?: string; Host?: string; Priority?: number; ReservoirSize?: number; ResourceARN?: string; RuleARN?: string; RuleName?: string; ServiceName?: string; ServiceType?: string; URLPath?: string; } export interface AWSXRaySamplingRule4 { Key: string; Value: string; } export interface AlexaASKSkill { Condition?: string; DeletionPolicy?: 'Delete' | 'Retain' | 'Snapshot'; DependsOn?: string | string[]; Metadata?: { [k: string]: unknown; }; Properties: { AuthenticationConfiguration: AlexaASKSkill1; SkillPackage: AlexaASKSkill2; VendorId: string; }; Type: 'Alexa::ASK::Skill'; UpdateReplacePolicy?: 'Delete' | 'Retain' | 'Snapshot'; } export interface AlexaASKSkill1 { ClientId: string; ClientSecret: string; RefreshToken: string; } export interface AlexaASKSkill2 { Overrides?: AlexaASKSkill3; S3Bucket: string; S3BucketRole?: string; S3Key: string; S3ObjectVersion?: string; } export interface AlexaASKSkill3 { Manifest?: { [k: string]: unknown; }; } export interface CustomResource { Properties: { ServiceToken: string; [k: string]: unknown; }; Type: string; }