@awboost/cfntypes 0.100.38 → 0.100.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2013,9 +2013,6 @@ export type AmplifyUIBuilderThemeThemeValues = {
2013
2013
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html}
2014
2014
  */
2015
2015
  export type ApiGatewayAccountProps = {
2016
- /**
2017
- * The ARN of an Amazon CloudWatch role for the current Account.
2018
- */
2019
2016
  CloudWatchRoleArn?: string;
2020
2017
  };
2021
2018
  /**
@@ -2030,38 +2027,17 @@ export type ApiGatewayAccountAttributes = {
2030
2027
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html}
2031
2028
  */
2032
2029
  export type ApiGatewayApiKeyProps = {
2033
- /**
2034
- * An MKT customer identifier, when integrating with the AWS SaaS Marketplace.
2035
- */
2036
2030
  CustomerId?: string;
2037
- /**
2038
- * The description of the ApiKey.
2039
- */
2040
2031
  Description?: string;
2041
- /**
2042
- * Specifies whether the ApiKey can be used by callers.
2043
- */
2044
2032
  Enabled?: boolean;
2045
- /**
2046
- * Specifies whether (``true``) or not (``false``) the key identifier is distinct from the created API key value. This parameter is deprecated and should not be used.
2047
- */
2048
2033
  GenerateDistinctId?: boolean;
2049
2034
  /**
2050
2035
  * A name for the API key. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the API key name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).
2051
2036
  If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
2052
2037
  */
2053
2038
  Name?: string;
2054
- /**
2055
- * DEPRECATED FOR USAGE PLANS - Specifies stages associated with the API key.
2056
- */
2057
2039
  StageKeys?: ApiGatewayApiKeyStageKey[];
2058
- /**
2059
- * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters.
2060
- */
2061
2040
  Tags?: ApiGatewayApiKeyTag[];
2062
- /**
2063
- * Specifies a value of the API key.
2064
- */
2065
2041
  Value?: string;
2066
2042
  };
2067
2043
  /**
@@ -2077,13 +2053,7 @@ export type ApiGatewayApiKeyAttributes = {
2077
2053
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-apikey-stagekey.html}
2078
2054
  */
2079
2055
  export type ApiGatewayApiKeyStageKey = {
2080
- /**
2081
- * The string identifier of the associated RestApi.
2082
- */
2083
2056
  RestApiId?: string;
2084
- /**
2085
- * The stage name associated with the stage key.
2086
- */
2087
2057
  StageName?: string;
2088
2058
  };
2089
2059
  /**
@@ -2108,45 +2078,15 @@ export type ApiGatewayApiKeyTag = {
2108
2078
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html}
2109
2079
  */
2110
2080
  export type ApiGatewayAuthorizerProps = {
2111
- /**
2112
- * Optional customer-defined field, used in OpenAPI imports and exports without functional impact.
2113
- */
2114
2081
  AuthType?: string;
2115
- /**
2116
- * Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.
2117
- */
2118
2082
  AuthorizerCredentials?: string;
2119
- /**
2120
- * The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.
2121
- */
2122
2083
  AuthorizerResultTtlInSeconds?: number;
2123
- /**
2124
- * Specifies the authorizer's Uniform Resource Identifier (URI). For ``TOKEN`` or ``REQUEST`` authorizers, this must be a well-formed Lambda function URI, for example, ``arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations``. In general, the URI has this form ``arn:aws:apigateway:{region}:lambda:path/{service_api}``, where ``{region}`` is the same as the region hosting the Lambda function, ``path`` indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial ``/``. For Lambda functions, this is usually of the form ``/2015-03-31/functions/[FunctionARN]/invocations``.
2125
- */
2126
2084
  AuthorizerUri?: string;
2127
- /**
2128
- * The identity source for which authorization is requested. For a ``TOKEN`` or ``COGNITO_USER_POOLS`` authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is ``Auth``, the header mapping expression is ``method.request.header.Auth``. For the ``REQUEST`` authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an ``Auth`` header, a ``Name`` query string parameter are defined as identity sources, this value is ``method.request.header.Auth, method.request.querystring.Name``. These parameters will be used to derive the authorization caching key and to perform runtime validation of the ``REQUEST`` authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.
2129
- */
2130
2085
  IdentitySource?: string;
2131
- /**
2132
- * A validation expression for the incoming identity token. For ``TOKEN`` authorizers, this value is a regular expression. For ``COGNITO_USER_POOLS`` authorizers, API Gateway will match the ``aud`` field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the ``REQUEST`` authorizer.
2133
- */
2134
2086
  IdentityValidationExpression?: string;
2135
- /**
2136
- * The name of the authorizer.
2137
- */
2138
2087
  Name: string;
2139
- /**
2140
- * A list of the Amazon Cognito user pool ARNs for the ``COGNITO_USER_POOLS`` authorizer. Each element is of this format: ``arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}``. For a ``TOKEN`` or ``REQUEST`` authorizer, this is not defined.
2141
- */
2142
2088
  ProviderARNs?: string[];
2143
- /**
2144
- * The string identifier of the associated RestApi.
2145
- */
2146
2089
  RestApiId: string;
2147
- /**
2148
- * The authorizer type. Valid values are ``TOKEN`` for a Lambda function using a single authorization token submitted in a custom header, ``REQUEST`` for a Lambda function using incoming request parameters, and ``COGNITO_USER_POOLS`` for using an Amazon Cognito user pool.
2149
- */
2150
2090
  Type: string;
2151
2091
  };
2152
2092
  /**
@@ -2161,21 +2101,9 @@ export type ApiGatewayAuthorizerAttributes = {
2161
2101
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html}
2162
2102
  */
2163
2103
  export type ApiGatewayBasePathMappingProps = {
2164
- /**
2165
- * The base path name that callers of the API must provide as part of the URL after the domain name.
2166
- */
2167
2104
  BasePath?: string;
2168
- /**
2169
- * The domain name of the BasePathMapping resource to be described.
2170
- */
2171
2105
  DomainName: string;
2172
- /**
2173
- * The string identifier of the associated RestApi.
2174
- */
2175
2106
  RestApiId?: string;
2176
- /**
2177
- * The name of the associated stage.
2178
- */
2179
2107
  Stage?: string;
2180
2108
  };
2181
2109
  /**
@@ -2183,13 +2111,7 @@ export type ApiGatewayBasePathMappingProps = {
2183
2111
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html}
2184
2112
  */
2185
2113
  export type ApiGatewayClientCertificateProps = {
2186
- /**
2187
- * The description of the client certificate.
2188
- */
2189
2114
  Description?: string;
2190
- /**
2191
- * The collection of tags. Each tag element is associated with a given resource.
2192
- */
2193
2115
  Tags?: ApiGatewayClientCertificateTag[];
2194
2116
  };
2195
2117
  /**
@@ -2213,24 +2135,15 @@ export type ApiGatewayClientCertificateTag = {
2213
2135
  */
2214
2136
  export type ApiGatewayDeploymentProps = {
2215
2137
  /**
2216
- * The input configuration for a canary deployment.
2138
+ * The ``DeploymentCanarySettings`` property type specifies settings for the canary deployment.
2217
2139
  */
2218
2140
  DeploymentCanarySettings?: ApiGatewayDeploymentDeploymentCanarySettings;
2219
- /**
2220
- * The description for the Deployment resource to create.
2221
- */
2222
2141
  Description?: string;
2223
- /**
2224
- * The string identifier of the associated RestApi.
2225
- */
2226
2142
  RestApiId: string;
2227
2143
  /**
2228
2144
  * The description of the Stage resource for the Deployment resource to create. To specify a stage description, you must also provide a stage name.
2229
2145
  */
2230
2146
  StageDescription?: ApiGatewayDeploymentStageDescription;
2231
- /**
2232
- * The name of the Stage resource for the Deployment resource to create.
2233
- */
2234
2147
  StageName?: string;
2235
2148
  };
2236
2149
  /**
@@ -2247,13 +2160,7 @@ export type ApiGatewayDeploymentAttributes = {
2247
2160
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-accesslogsetting.html}
2248
2161
  */
2249
2162
  export type ApiGatewayDeploymentAccessLogSetting = {
2250
- /**
2251
- * The Amazon Resource Name (ARN) of the CloudWatch Logs log group or Kinesis Data Firehose delivery stream to receive access logs. If you specify a Kinesis Data Firehose delivery stream, the stream name must begin with ``amazon-apigateway-``.
2252
- */
2253
2163
  DestinationArn?: string;
2254
- /**
2255
- * A single line format of the access logs of data, as specified by selected $context variables. The format must include at least ``$context.requestId``.
2256
- */
2257
2164
  Format?: string;
2258
2165
  };
2259
2166
  /**
@@ -2263,17 +2170,8 @@ export type ApiGatewayDeploymentAccessLogSetting = {
2263
2170
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-canarysetting.html}
2264
2171
  */
2265
2172
  export type ApiGatewayDeploymentCanarySetting = {
2266
- /**
2267
- * The percent (0-100) of traffic diverted to a canary deployment.
2268
- */
2269
2173
  PercentTraffic?: number;
2270
- /**
2271
- * Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values.
2272
- */
2273
2174
  StageVariableOverrides?: Record<string, string>;
2274
- /**
2275
- * A Boolean flag to indicate whether the canary deployment uses the stage cache or not.
2276
- */
2277
2175
  UseStageCache?: boolean;
2278
2176
  };
2279
2177
  /**
@@ -2282,17 +2180,8 @@ export type ApiGatewayDeploymentCanarySetting = {
2282
2180
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-deploymentcanarysettings.html}
2283
2181
  */
2284
2182
  export type ApiGatewayDeploymentDeploymentCanarySettings = {
2285
- /**
2286
- * The percentage (0.0-100.0) of traffic routed to the canary deployment.
2287
- */
2288
2183
  PercentTraffic?: number;
2289
- /**
2290
- * A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values.
2291
- */
2292
2184
  StageVariableOverrides?: Record<string, string>;
2293
- /**
2294
- * A Boolean flag to indicate whether the canary release deployment uses the stage cache or not.
2295
- */
2296
2185
  UseStageCache?: boolean;
2297
2186
  };
2298
2187
  /**
@@ -2302,45 +2191,21 @@ export type ApiGatewayDeploymentDeploymentCanarySettings = {
2302
2191
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-methodsetting.html}
2303
2192
  */
2304
2193
  export type ApiGatewayDeploymentMethodSetting = {
2305
- /**
2306
- * Specifies whether the cached responses are encrypted.
2307
- */
2308
2194
  CacheDataEncrypted?: boolean;
2309
- /**
2310
- * Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.
2311
- */
2312
2195
  CacheTtlInSeconds?: number;
2313
- /**
2314
- * Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.
2315
- */
2316
2196
  CachingEnabled?: boolean;
2317
- /**
2318
- * Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs.
2319
- */
2320
2197
  DataTraceEnabled?: boolean;
2321
2198
  /**
2322
2199
  * The HTTP method.
2323
2200
  */
2324
2201
  HttpMethod?: string;
2325
- /**
2326
- * Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events.
2327
- */
2328
2202
  LoggingLevel?: string;
2329
- /**
2330
- * Specifies whether Amazon CloudWatch metrics are enabled for this method.
2331
- */
2332
2203
  MetricsEnabled?: boolean;
2333
2204
  /**
2334
2205
  * The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``).
2335
2206
  */
2336
2207
  ResourcePath?: string;
2337
- /**
2338
- * Specifies the throttling burst limit.
2339
- */
2340
2208
  ThrottlingBurstLimit?: number;
2341
- /**
2342
- * Specifies the throttling rate limit.
2343
- */
2344
2209
  ThrottlingRateLimit?: number;
2345
2210
  };
2346
2211
  /**
@@ -2353,9 +2218,6 @@ export type ApiGatewayDeploymentStageDescription = {
2353
2218
  * Specifies settings for logging access in this stage.
2354
2219
  */
2355
2220
  AccessLogSetting?: ApiGatewayDeploymentAccessLogSetting;
2356
- /**
2357
- * Specifies whether a cache cluster is enabled for the stage.
2358
- */
2359
2221
  CacheClusterEnabled?: boolean;
2360
2222
  /**
2361
2223
  * The size of the stage's cache cluster. For more information, see [cacheClusterSize](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateStage.html#apigw-CreateStage-request-cacheClusterSize) in the *API Gateway API Reference*.
@@ -2447,16 +2309,11 @@ export type ApiGatewayDeploymentTag = {
2447
2309
  */
2448
2310
  export type ApiGatewayDocumentationPartProps = {
2449
2311
  /**
2450
- * The location of the targeted API entity of the to-be-created documentation part.
2451
- */
2312
+ * The ``Location`` property specifies the location of the Amazon API Gateway API entity that the documentation applies to. ``Location`` is a property of the [AWS::ApiGateway::DocumentationPart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html) resource.
2313
+ For more information about each property, including constraints and valid values, see [DocumentationPart](https://docs.aws.amazon.com/apigateway/latest/api/API_DocumentationPartLocation.html) in the *Amazon API Gateway REST API Reference*.
2314
+ */
2452
2315
  Location: ApiGatewayDocumentationPartLocation;
2453
- /**
2454
- * The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published.
2455
- */
2456
2316
  Properties: string;
2457
- /**
2458
- * The string identifier of the associated RestApi.
2459
- */
2460
2317
  RestApiId: string;
2461
2318
  };
2462
2319
  /**
@@ -2473,25 +2330,10 @@ export type ApiGatewayDocumentationPartAttributes = {
2473
2330
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-documentationpart-location.html}
2474
2331
  */
2475
2332
  export type ApiGatewayDocumentationPartLocation = {
2476
- /**
2477
- * The HTTP verb of a method. It is a valid field for the API entity types of ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``method`` attribute must match that of the parent entity exactly.
2478
- */
2479
2333
  Method?: string;
2480
- /**
2481
- * The name of the targeted API entity. It is a valid and required field for the API entity types of ``AUTHORIZER``, ``MODEL``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY`` and ``RESPONSE_HEADER``. It is an invalid field for any other entity type.
2482
- */
2483
2334
  Name?: string;
2484
- /**
2485
- * The URL path of the target. It is a valid field for the API entity types of ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``/`` for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``path`` attribute must match that of the parent entity as a prefix.
2486
- */
2487
2335
  Path?: string;
2488
- /**
2489
- * The HTTP status code of a response. It is a valid field for the API entity types of ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. The default value is ``*`` for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other ``location`` attributes, the child entity's ``statusCode`` attribute must match that of the parent entity exactly.
2490
- */
2491
2336
  StatusCode?: string;
2492
- /**
2493
- * The type of API entity to which the documentation content applies. Valid values are ``API``, ``AUTHORIZER``, ``MODEL``, ``RESOURCE``, ``METHOD``, ``PATH_PARAMETER``, ``QUERY_PARAMETER``, ``REQUEST_HEADER``, ``REQUEST_BODY``, ``RESPONSE``, ``RESPONSE_HEADER``, and ``RESPONSE_BODY``. Content inheritance does not apply to any entity of the ``API``, ``AUTHORIZER``, ``METHOD``, ``MODEL``, ``REQUEST_BODY``, or ``RESOURCE`` type.
2494
- */
2495
2337
  Type?: "API" | "AUTHORIZER" | "MODEL" | "RESOURCE" | "METHOD" | "PATH_PARAMETER" | "QUERY_PARAMETER" | "REQUEST_HEADER" | "REQUEST_BODY" | "RESPONSE" | "RESPONSE_HEADER" | "RESPONSE_BODY";
2496
2338
  };
2497
2339
  /**
@@ -2499,17 +2341,12 @@ export type ApiGatewayDocumentationPartLocation = {
2499
2341
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html}
2500
2342
  */
2501
2343
  export type ApiGatewayDocumentationVersionProps = {
2502
- /**
2503
- * A description about the new documentation snapshot.
2504
- */
2505
2344
  Description?: string;
2506
2345
  /**
2507
- * The version identifier of the to-be-updated documentation version.
2508
2346
  * @minLength `1`
2509
2347
  */
2510
2348
  DocumentationVersion: string;
2511
2349
  /**
2512
- * The string identifier of the associated RestApi.
2513
2350
  * @minLength `1`
2514
2351
  */
2515
2352
  RestApiId: string;
@@ -2566,25 +2403,10 @@ export type ApiGatewayDomainNameTag = {
2566
2403
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html}
2567
2404
  */
2568
2405
  export type ApiGatewayGatewayResponseProps = {
2569
- /**
2570
- * Response parameters (paths, query strings and headers) of the GatewayResponse as a string-to-string map of key-value pairs.
2571
- */
2572
2406
  ResponseParameters?: Record<string, string>;
2573
- /**
2574
- * Response templates of the GatewayResponse as a string-to-string map of key-value pairs.
2575
- */
2576
2407
  ResponseTemplates?: Record<string, string>;
2577
- /**
2578
- * The response type of the associated GatewayResponse.
2579
- */
2580
2408
  ResponseType: string;
2581
- /**
2582
- * The string identifier of the associated RestApi.
2583
- */
2584
2409
  RestApiId: string;
2585
- /**
2586
- * The HTTP status code for this GatewayResponse.
2587
- */
2588
2410
  StatusCode?: string;
2589
2411
  };
2590
2412
  /**
@@ -2599,58 +2421,25 @@ export type ApiGatewayGatewayResponseAttributes = {
2599
2421
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html}
2600
2422
  */
2601
2423
  export type ApiGatewayMethodProps = {
2602
- /**
2603
- * A boolean flag specifying whether a valid ApiKey is required to invoke this method.
2604
- */
2605
2424
  ApiKeyRequired?: boolean;
2606
- /**
2607
- * A list of authorization scopes configured on the method. The scopes are used with a ``COGNITO_USER_POOLS`` authorizer to authorize the method invocation. The authorization works by matching the method scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any method scopes matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the method scope is configured, the client must provide an access token instead of an identity token for authorization purposes.
2608
- */
2609
2425
  AuthorizationScopes?: string[];
2610
2426
  /**
2611
2427
  * The method's authorization type. This parameter is required. For valid values, see [Method](https://docs.aws.amazon.com/apigateway/latest/api/API_Method.html) in the *API Gateway API Reference*.
2612
2428
  If you specify the ``AuthorizerId`` property, specify ``CUSTOM`` or ``COGNITO_USER_POOLS`` for this property.
2613
2429
  */
2614
2430
  AuthorizationType?: string;
2615
- /**
2616
- * The identifier of an authorizer to use on this method. The method's authorization type must be ``CUSTOM`` or ``COGNITO_USER_POOLS``.
2617
- */
2618
2431
  AuthorizerId?: string;
2619
- /**
2620
- * The method's HTTP verb.
2621
- */
2622
2432
  HttpMethod: string;
2623
2433
  /**
2624
- * Represents an ``HTTP``, ``HTTP_PROXY``, ``AWS``, ``AWS_PROXY``, or Mock integration.
2434
+ * ``Integration`` is a property of the [AWS::ApiGateway::Method](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html) resource that specifies information about the target backend that a method calls.
2625
2435
  */
2626
2436
  Integration?: ApiGatewayMethodIntegration;
2627
- /**
2628
- * Gets a method response associated with a given HTTP status code.
2629
- */
2630
2437
  MethodResponses?: ApiGatewayMethodMethodResponse[];
2631
- /**
2632
- * A human-friendly operation identifier for the method. For example, you can assign the ``operationName`` of ``ListPets`` for the ``GET /pets`` method in the ``PetStore`` example.
2633
- */
2634
2438
  OperationName?: string;
2635
- /**
2636
- * A key-value map specifying data schemas, represented by Model resources, (as the mapped value) of the request payloads of given content types (as the mapping key).
2637
- */
2638
2439
  RequestModels?: Record<string, string>;
2639
- /**
2640
- * A key-value map defining required or optional method request parameters that can be accepted by API Gateway. A key is a method request parameter name matching the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` is a valid and unique parameter name. The value associated with the key is a Boolean flag indicating whether the parameter is required (``true``) or optional (``false``). The method request parameter names defined here are available in Integration to be mapped to integration request parameters or templates.
2641
- */
2642
2440
  RequestParameters?: Record<string, boolean | string>;
2643
- /**
2644
- * The identifier of a RequestValidator for request validation.
2645
- */
2646
2441
  RequestValidatorId?: string;
2647
- /**
2648
- * The Resource identifier for the MethodResponse resource.
2649
- */
2650
2442
  ResourceId: string;
2651
- /**
2652
- * The string identifier of the associated RestApi.
2653
- */
2654
2443
  RestApiId: string;
2655
2444
  };
2656
2445
  /**
@@ -2659,65 +2448,22 @@ export type ApiGatewayMethodProps = {
2659
2448
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integration.html}
2660
2449
  */
2661
2450
  export type ApiGatewayMethodIntegration = {
2662
- /**
2663
- * A list of request parameters whose values API Gateway caches. To be valid values for ``cacheKeyParameters``, these parameters must also be specified for Method ``requestParameters``.
2664
- */
2665
2451
  CacheKeyParameters?: string[];
2666
- /**
2667
- * Specifies a group of related cached parameters. By default, API Gateway uses the resource ID as the ``cacheNamespace``. You can specify the same ``cacheNamespace`` across resources to return the same cached data for requests to different resources.
2668
- */
2669
2452
  CacheNamespace?: string;
2670
- /**
2671
- * The ID of the VpcLink used for the integration when ``connectionType=VPC_LINK`` and undefined, otherwise.
2672
- */
2673
2453
  ConnectionId?: string;
2674
- /**
2675
- * The type of the network connection to the integration endpoint. The valid value is ``INTERNET`` for connections through the public routable internet or ``VPC_LINK`` for private connections between API Gateway and a network load balancer in a VPC. The default value is ``INTERNET``.
2676
- */
2677
2454
  ConnectionType?: "INTERNET" | "VPC_LINK";
2678
- /**
2679
- * Specifies how to handle request payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:
2680
- If this property is not defined, the request payload will be passed through from the method request to integration request without modification, provided that the ``passthroughBehavior`` is configured to support payload pass-through.
2681
- */
2682
2455
  ContentHandling?: "CONVERT_TO_BINARY" | "CONVERT_TO_TEXT";
2683
- /**
2684
- * Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string ``arn:aws:iam::\*:user/\*``. To use resource-based permissions on supported AWS services, specify null.
2685
- */
2686
2456
  Credentials?: string;
2687
- /**
2688
- * Specifies the integration's HTTP method type. For the Type property, if you specify ``MOCK``, this property is optional. For Lambda integrations, you must set the integration method to ``POST``. For all other types, you must specify this property.
2689
- */
2690
2457
  IntegrationHttpMethod?: string;
2691
- /**
2692
- * Specifies the integration's responses.
2693
- */
2694
2458
  IntegrationResponses?: ApiGatewayMethodIntegrationResponse[];
2695
- /**
2696
- * Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates``. The valid value is one of the following: ``WHEN_NO_MATCH``: passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES``: passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER``: rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.
2697
- */
2698
2459
  PassthroughBehavior?: "WHEN_NO_MATCH" | "WHEN_NO_TEMPLATES" | "NEVER";
2699
- /**
2700
- * A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}``, where ``location`` is ``querystring``, ``path``, or ``header`` and ``name`` must be a valid and unique method request parameter name.
2701
- */
2702
2460
  RequestParameters?: Record<string, string>;
2703
- /**
2704
- * Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value.
2705
- */
2706
2461
  RequestTemplates?: Record<string, string>;
2707
2462
  /**
2708
- * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.
2709
2463
  * @min `50`
2710
2464
  */
2711
2465
  TimeoutInMillis?: number;
2712
- /**
2713
- * Specifies an API method integration type. The valid value is one of the following:
2714
- For the HTTP and HTTP proxy integrations, each integration can specify a protocol (``http/https``), port and path. Standard 80 and 443 ports are supported as well as custom ports above 1024. An HTTP or HTTP proxy integration with a ``connectionType`` of ``VPC_LINK`` is referred to as a private integration and uses a VpcLink to connect API Gateway to a network load balancer of a VPC.
2715
- */
2716
2466
  Type: "AWS" | "AWS_PROXY" | "HTTP" | "HTTP_PROXY" | "MOCK";
2717
- /**
2718
- * Specifies Uniform Resource Identifier (URI) of the integration endpoint.
2719
- For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}``. Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``
2720
- */
2721
2467
  Uri?: string;
2722
2468
  };
2723
2469
  /**
@@ -2726,45 +2472,19 @@ export type ApiGatewayMethodIntegration = {
2726
2472
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integrationresponse.html}
2727
2473
  */
2728
2474
  export type ApiGatewayMethodIntegrationResponse = {
2729
- /**
2730
- * Specifies how to handle response payload content type conversions. Supported values are ``CONVERT_TO_BINARY`` and ``CONVERT_TO_TEXT``, with the following behaviors:
2731
- If this property is not defined, the response payload will be passed through from the integration response to the method response without modification.
2732
- */
2733
2475
  ContentHandling?: "CONVERT_TO_BINARY" | "CONVERT_TO_TEXT";
2734
- /**
2735
- * A key-value map specifying response parameters that are passed to the method response from the back end. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of ``method.response.header.{name}``, where ``name`` is a valid and unique header name. The mapped non-static value must match the pattern of ``integration.response.header.{name}`` or ``integration.response.body.{JSON-expression}``, where ``name`` is a valid and unique response header name and ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.
2736
- */
2737
2476
  ResponseParameters?: Record<string, string>;
2738
- /**
2739
- * Specifies the templates used to transform the integration response body. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.
2740
- */
2741
2477
  ResponseTemplates?: Record<string, string>;
2742
- /**
2743
- * Specifies the regular expression (regex) pattern used to choose an integration response based on the response from the back end. For example, if the success response returns nothing and the error response returns some string, you could use the ``.+`` regex to match error response. However, make sure that the error response does not contain any newline (``\n``) character in such cases. If the back end is an LAMlong function, the LAMlong function error header is matched. For all other HTTP and AWS back ends, the HTTP status code is matched.
2744
- */
2745
2478
  SelectionPattern?: string;
2746
- /**
2747
- * Specifies the status code that is used to map the integration response to an existing MethodResponse.
2748
- */
2749
2479
  StatusCode: string;
2750
2480
  };
2751
2481
  /**
2752
2482
  * Type definition for `AWS::ApiGateway::Method.MethodResponse`.
2753
- * Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template.
2754
2483
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-methodresponse.html}
2755
2484
  */
2756
2485
  export type ApiGatewayMethodMethodResponse = {
2757
- /**
2758
- * Specifies the Model resources used for the response's content-type. Response models are represented as a key/value map, with a content-type as the key and a Model name as the value.
2759
- */
2760
2486
  ResponseModels?: Record<string, string>;
2761
- /**
2762
- * A key-value map specifying required or optional response parameters that API Gateway can send back to the caller. A key defines a method response header and the value specifies whether the associated method response header is required or not. The expression of the key must match the pattern ``method.response.header.{name}``, where ``name`` is a valid and unique header name. API Gateway passes certain integration response data to the method response headers specified here according to the mapping you prescribe in the API's IntegrationResponse. The integration response data that can be mapped include an integration response header expressed in ``integration.response.header.{name}``, a static value enclosed within a pair of single quotes (e.g., ``'application/json'``), or a JSON expression from the back-end response payload in the form of ``integration.response.body.{JSON-expression}``, where ``JSON-expression`` is a valid JSON expression without the ``$`` prefix.)
2763
- */
2764
2487
  ResponseParameters?: Record<string, boolean | string>;
2765
- /**
2766
- * The method response's status code.
2767
- */
2768
2488
  StatusCode: string;
2769
2489
  };
2770
2490
  /**
@@ -2772,26 +2492,14 @@ export type ApiGatewayMethodMethodResponse = {
2772
2492
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html}
2773
2493
  */
2774
2494
  export type ApiGatewayModelProps = {
2775
- /**
2776
- * The content-type for the model.
2777
- */
2778
2495
  ContentType?: string;
2779
- /**
2780
- * The description of the model.
2781
- */
2782
2496
  Description?: string;
2783
2497
  /**
2784
2498
  * A name for the model. If you don't specify a name, CFN generates a unique physical ID and uses that ID for the model name. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).
2785
2499
  If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
2786
2500
  */
2787
2501
  Name?: string;
2788
- /**
2789
- * The string identifier of the associated RestApi.
2790
- */
2791
2502
  RestApiId: string;
2792
- /**
2793
- * The schema for the model. For ``application/json`` models, this should be JSON schema draft 4 model. Do not include "\/‍*" characters in the description of any properties because such "\/‍*" characters may be interpreted as the closing marker for comments in some languages, such as Java or JavaScript, causing the installation of your API's SDK generated by API Gateway to fail.
2794
- */
2795
2503
  Schema?: Record<string, any> | string;
2796
2504
  };
2797
2505
  /**
@@ -2799,21 +2507,9 @@ export type ApiGatewayModelProps = {
2799
2507
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html}
2800
2508
  */
2801
2509
  export type ApiGatewayRequestValidatorProps = {
2802
- /**
2803
- * The name of this RequestValidator
2804
- */
2805
2510
  Name?: string;
2806
- /**
2807
- * The string identifier of the associated RestApi.
2808
- */
2809
2511
  RestApiId: string;
2810
- /**
2811
- * A Boolean flag to indicate whether to validate a request body according to the configured Model schema.
2812
- */
2813
2512
  ValidateRequestBody?: boolean;
2814
- /**
2815
- * A Boolean flag to indicate whether to validate request parameters (``true``) or not (``false``).
2816
- */
2817
2513
  ValidateRequestParameters?: boolean;
2818
2514
  };
2819
2515
  /**
@@ -2828,17 +2524,8 @@ export type ApiGatewayRequestValidatorAttributes = {
2828
2524
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html}
2829
2525
  */
2830
2526
  export type ApiGatewayResourceProps = {
2831
- /**
2832
- * The parent resource's identifier.
2833
- */
2834
2527
  ParentId: string;
2835
- /**
2836
- * The last path segment for this resource.
2837
- */
2838
2528
  PathPart: string;
2839
- /**
2840
- * The string identifier of the associated RestApi.
2841
- */
2842
2529
  RestApiId: string;
2843
2530
  };
2844
2531
  /**
@@ -2854,13 +2541,7 @@ export type ApiGatewayResourceAttributes = {
2854
2541
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html}
2855
2542
  */
2856
2543
  export type ApiGatewayRestApiProps = {
2857
- /**
2858
- * The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer.
2859
- */
2860
2544
  ApiKeySourceType?: string;
2861
- /**
2862
- * The list of binary media types supported by the RestApi. By default, the RestApi supports only UTF-8-encoded text payloads.
2863
- */
2864
2545
  BinaryMediaTypes?: string[];
2865
2546
  /**
2866
2547
  * An OpenAPI specification that defines a set of RESTful APIs in JSON format. For YAML templates, you can also provide the specification in YAML format.
@@ -2870,29 +2551,14 @@ export type ApiGatewayRestApiProps = {
2870
2551
  * The Amazon Simple Storage Service (Amazon S3) location that points to an OpenAPI file, which defines a set of RESTful APIs in JSON or YAML format.
2871
2552
  */
2872
2553
  BodyS3Location?: ApiGatewayRestApiS3Location;
2873
- /**
2874
- * The ID of the RestApi that you want to clone from.
2875
- */
2876
2554
  CloneFrom?: string;
2877
- /**
2878
- * The description of the RestApi.
2879
- */
2880
2555
  Description?: string;
2881
- /**
2882
- * Specifies whether clients can invoke your API by using the default ``execute-api`` endpoint. By default, clients can invoke your API with the default ``https://{api_id}.execute-api.{region}.amazonaws.com`` endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint
2883
- */
2884
2556
  DisableExecuteApiEndpoint?: boolean;
2885
2557
  /**
2886
2558
  * A list of the endpoint types of the API. Use this property when creating an API. When importing an existing API, specify the endpoint configuration types using the ``Parameters`` property.
2887
2559
  */
2888
2560
  EndpointConfiguration?: ApiGatewayRestApiEndpointConfiguration;
2889
- /**
2890
- * A query parameter to indicate whether to rollback the API update (``true``) or not (``false``) when a warning is encountered. The default value is ``false``.
2891
- */
2892
2561
  FailOnWarnings?: boolean;
2893
- /**
2894
- * A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size.
2895
- */
2896
2562
  MinimumCompressionSize?: number;
2897
2563
  /**
2898
2564
  * This property applies only when you use OpenAPI to define your REST API. The ``Mode`` determines how API Gateway handles resource updates.
@@ -2907,17 +2573,11 @@ export type ApiGatewayRestApiProps = {
2907
2573
  * The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification.
2908
2574
  */
2909
2575
  Name?: string;
2910
- /**
2911
- * Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'``.
2912
- */
2913
2576
  Parameters?: Record<string, string> | string;
2914
2577
  /**
2915
2578
  * A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"``.
2916
2579
  */
2917
2580
  Policy?: Record<string, any> | string;
2918
- /**
2919
- * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:``. The tag value can be up to 256 characters.
2920
- */
2921
2581
  Tags?: ApiGatewayRestApiTag[];
2922
2582
  };
2923
2583
  /**
@@ -2935,13 +2595,7 @@ export type ApiGatewayRestApiAttributes = {
2935
2595
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html}
2936
2596
  */
2937
2597
  export type ApiGatewayRestApiEndpointConfiguration = {
2938
- /**
2939
- * A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"``. For a regional API and its custom domain name, the endpoint type is ``REGIONAL``. For a private API, the endpoint type is ``PRIVATE``.
2940
- */
2941
2598
  Types?: string[];
2942
- /**
2943
- * A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for ``PRIVATE`` endpoint type.
2944
- */
2945
2599
  VpcEndpointIds?: string[];
2946
2600
  };
2947
2601
  /**
@@ -2982,56 +2636,21 @@ export type ApiGatewayRestApiTag = {
2982
2636
  */
2983
2637
  export type ApiGatewayStageProps = {
2984
2638
  /**
2985
- * Access log settings, including the access log format and access log destination ARN.
2986
- */
2639
+ * The ``AccessLogSetting`` property type specifies settings for logging access in this stage.
2640
+ ``AccessLogSetting`` is a property of the [AWS::ApiGateway::Stage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html) resource.
2641
+ */
2987
2642
  AccessLogSetting?: ApiGatewayStageAccessLogSetting;
2988
- /**
2989
- * Specifies whether a cache cluster is enabled for the stage.
2990
- */
2991
2643
  CacheClusterEnabled?: boolean;
2992
- /**
2993
- * The stage's cache capacity in GB. For more information about choosing a cache size, see [Enabling API caching to enhance responsiveness](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html).
2994
- */
2995
2644
  CacheClusterSize?: string;
2996
- /**
2997
- * Settings for the canary deployment in this stage.
2998
- */
2999
2645
  CanarySetting?: ApiGatewayStageCanarySetting;
3000
- /**
3001
- * The identifier of a client certificate for an API stage.
3002
- */
3003
2646
  ClientCertificateId?: string;
3004
- /**
3005
- * The identifier of the Deployment that the stage points to.
3006
- */
3007
2647
  DeploymentId?: string;
3008
- /**
3009
- * The stage's description.
3010
- */
3011
2648
  Description?: string;
3012
- /**
3013
- * The version of the associated API documentation.
3014
- */
3015
2649
  DocumentationVersion?: string;
3016
- /**
3017
- * A map that defines the method settings for a Stage resource. Keys (designated as ``/{method_setting_key`` below) are method paths defined as ``{resource_path}/{http_method}`` for an individual method override, or ``/\/‍*\*`` for overriding all methods in the stage.
3018
- */
3019
2650
  MethodSettings?: ApiGatewayStageMethodSetting[];
3020
- /**
3021
- * The string identifier of the associated RestApi.
3022
- */
3023
2651
  RestApiId: string;
3024
- /**
3025
- * The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.
3026
- */
3027
2652
  StageName?: string;
3028
- /**
3029
- * The collection of tags. Each tag element is associated with a given resource.
3030
- */
3031
2653
  Tags?: ApiGatewayStageTag[];
3032
- /**
3033
- * Specifies whether active tracing with X-ray is enabled for the Stage.
3034
- */
3035
2654
  TracingEnabled?: boolean;
3036
2655
  /**
3037
2656
  * A map (string-to-string map) that defines the stage variables, where the variable name is the key and the variable value is the value. Variable names are limited to alphanumeric characters. Values must match the following regular expression: ``[A-Za-z0-9-._~:/?#&=,]+``.
@@ -3056,27 +2675,16 @@ export type ApiGatewayStageAccessLogSetting = {
3056
2675
  };
3057
2676
  /**
3058
2677
  * Type definition for `AWS::ApiGateway::Stage.CanarySetting`.
3059
- * Configuration settings of a canary deployment.
3060
2678
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-canarysetting.html}
3061
2679
  */
3062
2680
  export type ApiGatewayStageCanarySetting = {
3063
- /**
3064
- * The ID of the canary deployment.
3065
- */
3066
2681
  DeploymentId?: string;
3067
2682
  /**
3068
- * The percent (0-100) of traffic diverted to a canary deployment.
3069
2683
  * @min `0`
3070
2684
  * @max `100`
3071
2685
  */
3072
2686
  PercentTraffic?: number;
3073
- /**
3074
- * Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values.
3075
- */
3076
2687
  StageVariableOverrides?: Record<string, string>;
3077
- /**
3078
- * A Boolean flag to indicate whether the canary deployment uses the stage cache or not.
3079
- */
3080
2688
  UseStageCache?: boolean;
3081
2689
  };
3082
2690
  /**
@@ -3086,45 +2694,25 @@ export type ApiGatewayStageCanarySetting = {
3086
2694
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-methodsetting.html}
3087
2695
  */
3088
2696
  export type ApiGatewayStageMethodSetting = {
3089
- /**
3090
- * Specifies whether the cached responses are encrypted.
3091
- */
3092
2697
  CacheDataEncrypted?: boolean;
3093
- /**
3094
- * Specifies the time to live (TTL), in seconds, for cached responses. The higher the TTL, the longer the response will be cached.
3095
- */
3096
2698
  CacheTtlInSeconds?: number;
3097
- /**
3098
- * Specifies whether responses should be cached and returned for requests. A cache cluster must be enabled on the stage for responses to be cached.
3099
- */
3100
2699
  CachingEnabled?: boolean;
3101
- /**
3102
- * Specifies whether data trace logging is enabled for this method, which affects the log entries pushed to Amazon CloudWatch Logs. This can be useful to troubleshoot APIs, but can result in logging sensitive data. We recommend that you don't enable this option for production APIs.
3103
- */
3104
2700
  DataTraceEnabled?: boolean;
3105
2701
  /**
3106
2702
  * The HTTP method. To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``.
3107
2703
  */
3108
2704
  HttpMethod?: string;
3109
- /**
3110
- * Specifies the logging level for this method, which affects the log entries pushed to Amazon CloudWatch Logs. Valid values are ``OFF``, ``ERROR``, and ``INFO``. Choose ``ERROR`` to write only error-level entries to CloudWatch Logs, or choose ``INFO`` to include all ``ERROR`` events as well as extra informational events.
3111
- */
3112
2705
  LoggingLevel?: string;
3113
- /**
3114
- * Specifies whether Amazon CloudWatch metrics are enabled for this method.
3115
- */
3116
2706
  MetricsEnabled?: boolean;
3117
2707
  /**
3118
2708
  * The resource path for this method. Forward slashes (``/``) are encoded as ``~1`` and the initial slash must include a forward slash. For example, the path value ``/resource/subresource`` must be encoded as ``/~1resource~1subresource``. To specify the root path, use only a slash (``/``). To apply settings to multiple resources and methods, specify an asterisk (``*``) for the ``HttpMethod`` and ``/*`` for the ``ResourcePath``. This parameter is required when you specify a ``MethodSetting``.
3119
2709
  */
3120
2710
  ResourcePath?: string;
3121
2711
  /**
3122
- * Specifies the throttling burst limit.
3123
2712
  * @min `0`
3124
2713
  */
3125
2714
  ThrottlingBurstLimit?: number;
3126
2715
  /**
3127
- * Specifies the throttling rate limit.
3128
2716
  * @min `0`
3129
2717
  */
3130
2718
  ThrottlingRateLimit?: number;
@@ -3153,29 +2741,18 @@ export type ApiGatewayStageTag = {
3153
2741
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html}
3154
2742
  */
3155
2743
  export type ApiGatewayUsagePlanProps = {
3156
- /**
3157
- * The associated API stages of a usage plan.
3158
- */
3159
2744
  ApiStages?: ApiGatewayUsagePlanApiStage[];
3160
- /**
3161
- * The description of a usage plan.
3162
- */
3163
2745
  Description?: string;
3164
2746
  /**
3165
- * The target maximum number of permitted requests per a given unit time interval.
3166
- */
2747
+ * ``QuotaSettings`` is a property of the [AWS::ApiGateway::UsagePlan](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html) resource that specifies a target for the maximum number of requests users can make to your REST APIs.
2748
+ In some cases clients can exceed the targets that you set. Don’t rely on usage plans to control costs. Consider using [](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-managing-costs.html) to monitor costs and [](https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html) to manage API requests.
2749
+ */
3167
2750
  Quota?: ApiGatewayUsagePlanQuotaSettings;
3168
- /**
3169
- * The collection of tags. Each tag element is associated with a given resource.
3170
- */
3171
2751
  Tags?: ApiGatewayUsagePlanTag[];
3172
2752
  /**
3173
- * A map containing method level throttling information for API stage in a usage plan.
2753
+ * ``ThrottleSettings`` is a property of the [AWS::ApiGateway::UsagePlan](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html) resource that specifies the overall request rate (average requests per second) and burst capacity when users call your REST APIs.
3174
2754
  */
3175
2755
  Throttle?: ApiGatewayUsagePlanThrottleSettings;
3176
- /**
3177
- * The name of a usage plan.
3178
- */
3179
2756
  UsagePlanName?: string;
3180
2757
  };
3181
2758
  /**
@@ -3187,21 +2764,11 @@ export type ApiGatewayUsagePlanAttributes = {
3187
2764
  };
3188
2765
  /**
3189
2766
  * Type definition for `AWS::ApiGateway::UsagePlan.ApiStage`.
3190
- * API stage name of the associated API stage in a usage plan.
3191
2767
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html}
3192
2768
  */
3193
2769
  export type ApiGatewayUsagePlanApiStage = {
3194
- /**
3195
- * API Id of the associated API stage in a usage plan.
3196
- */
3197
2770
  ApiId?: string;
3198
- /**
3199
- * API stage name of the associated API stage in a usage plan.
3200
- */
3201
2771
  Stage?: string;
3202
- /**
3203
- * Map containing method level throttling information for API stage in a usage plan.
3204
- */
3205
2772
  Throttle?: Record<string, ApiGatewayUsagePlanThrottleSettings>;
3206
2773
  };
3207
2774
  /**
@@ -3212,18 +2779,13 @@ export type ApiGatewayUsagePlanApiStage = {
3212
2779
  */
3213
2780
  export type ApiGatewayUsagePlanQuotaSettings = {
3214
2781
  /**
3215
- * The target maximum number of requests that can be made in a given time period.
3216
2782
  * @min `0`
3217
2783
  */
3218
2784
  Limit?: number;
3219
2785
  /**
3220
- * The number of requests subtracted from the given limit in the initial time period.
3221
2786
  * @min `0`
3222
2787
  */
3223
2788
  Offset?: number;
3224
- /**
3225
- * The time period in which the limit applies. Valid values are "DAY", "WEEK" or "MONTH".
3226
- */
3227
2789
  Period?: string;
3228
2790
  };
3229
2791
  /**
@@ -3251,12 +2813,10 @@ export type ApiGatewayUsagePlanTag = {
3251
2813
  */
3252
2814
  export type ApiGatewayUsagePlanThrottleSettings = {
3253
2815
  /**
3254
- * The API target request burst rate limit. This allows more requests through for a period of time than the target rate limit.
3255
2816
  * @min `0`
3256
2817
  */
3257
2818
  BurstLimit?: number;
3258
2819
  /**
3259
- * The API target request rate limit.
3260
2820
  * @min `0`
3261
2821
  */
3262
2822
  RateLimit?: number;
@@ -3270,9 +2830,6 @@ export type ApiGatewayUsagePlanKeyProps = {
3270
2830
  * The Id of the UsagePlanKey resource.
3271
2831
  */
3272
2832
  KeyId: string;
3273
- /**
3274
- * The type of a UsagePlanKey resource for a plan customer.
3275
- */
3276
2833
  KeyType: "API_KEY";
3277
2834
  /**
3278
2835
  * The Id of the UsagePlan resource representing the usage plan containing the UsagePlanKey resource representing a plan customer.
@@ -107246,51 +106803,18 @@ export type NetworkManagerVpcAttachmentVpcOptions = {
107246
106803
  Ipv6Support?: boolean;
107247
106804
  };
107248
106805
  /**
107249
- * Resource type definition for `AWS::NimbleStudio::LaunchProfile`.
107250
- * Represents a launch profile which delegates access to a collection of studio components to studio users
106806
+ * Resource Type definition for AWS::NimbleStudio::LaunchProfile
107251
106807
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-nimblestudio-launchprofile.html}
107252
106808
  */
107253
106809
  export type NimbleStudioLaunchProfileProps = {
107254
- /**
107255
- * <p>The description.</p>
107256
- * @minLength `0`
107257
- * @maxLength `256`
107258
- */
107259
106810
  Description?: string;
107260
- /**
107261
- * <p>Specifies the IDs of the EC2 subnets where streaming sessions will be accessible from.
107262
- These subnets must support the specified instance types. </p>
107263
- * @minLength `0`
107264
- * @maxLength `6`
107265
- */
107266
106811
  Ec2SubnetIds: string[];
107267
- /**
107268
- * <p>The version number of the protocol that is used by the launch profile. The only valid
107269
- version is "2021-03-31".</p>
107270
- */
107271
106812
  LaunchProfileProtocolVersions: string[];
107272
- /**
107273
- * <p>The name for the launch profile.</p>
107274
- * @minLength `1`
107275
- * @maxLength `64`
107276
- */
107277
106813
  Name: string;
107278
- /**
107279
- * <p>A configuration for a streaming session.</p>
107280
- */
107281
106814
  StreamConfiguration: NimbleStudioLaunchProfileStreamConfiguration;
107282
- /**
107283
- * <p>Unique identifiers for a collection of studio components that can be used with this
107284
- launch profile.</p>
107285
- * @minLength `1`
107286
- * @maxLength `100`
107287
- */
107288
106815
  StudioComponentIds: string[];
107289
- /**
107290
- * <p>The studio ID. </p>
107291
- */
107292
106816
  StudioId: string;
107293
- Tags?: NimbleStudioLaunchProfileTags;
106817
+ Tags?: Record<string, string>;
107294
106818
  };
107295
106819
  /**
107296
106820
  * Attribute type definition for `AWS::NimbleStudio::LaunchProfile`.
@@ -107299,321 +106823,92 @@ export type NimbleStudioLaunchProfileProps = {
107299
106823
  export type NimbleStudioLaunchProfileAttributes = {
107300
106824
  LaunchProfileId: string;
107301
106825
  };
107302
- /**
107303
- * Type definition for `AWS::NimbleStudio::LaunchProfile.AutomaticTerminationMode`.
107304
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-automaticterminationmode.html}
107305
- */
107306
- export type NimbleStudioLaunchProfileAutomaticTerminationMode = "DEACTIVATED" | "ACTIVATED";
107307
- /**
107308
- * Type definition for `AWS::NimbleStudio::LaunchProfile.SessionBackupMode`.
107309
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-sessionbackupmode.html}
107310
- */
107311
- export type NimbleStudioLaunchProfileSessionBackupMode = "AUTOMATIC" | "DEACTIVATED";
107312
- /**
107313
- * Type definition for `AWS::NimbleStudio::LaunchProfile.SessionPersistenceMode`.
107314
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-sessionpersistencemode.html}
107315
- */
107316
- export type NimbleStudioLaunchProfileSessionPersistenceMode = "DEACTIVATED" | "ACTIVATED";
107317
106826
  /**
107318
106827
  * Type definition for `AWS::NimbleStudio::LaunchProfile.StreamConfiguration`.
107319
- * <p>A configuration for a streaming session.</p>
107320
106828
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-streamconfiguration.html}
107321
106829
  */
107322
106830
  export type NimbleStudioLaunchProfileStreamConfiguration = {
107323
- AutomaticTerminationMode?: NimbleStudioLaunchProfileAutomaticTerminationMode;
107324
- ClipboardMode: NimbleStudioLaunchProfileStreamingClipboardMode;
107325
- /**
107326
- * <p>The EC2 instance types that users can select from when launching a streaming session
107327
- with this launch profile.</p>
107328
- * @minLength `1`
107329
- * @maxLength `30`
107330
- */
107331
- Ec2InstanceTypes: NimbleStudioLaunchProfileStreamingInstanceType[];
107332
- /**
107333
- * <p>The length of time, in minutes, that a streaming session can be active before it is
107334
- stopped or terminated. After this point, Nimble Studio automatically terminates or
107335
- stops the session. The default length of time is 690 minutes, and the maximum length of
107336
- time is 30 days.</p>
107337
- * @min `1`
107338
- * @max `43200`
107339
- */
106831
+ AutomaticTerminationMode?: string;
106832
+ ClipboardMode: string;
106833
+ Ec2InstanceTypes: string[];
107340
106834
  MaxSessionLengthInMinutes?: number;
107341
- /**
107342
- * <p>Integer that determines if you can start and stop your sessions and how long a session
107343
- can stay in the <code>STOPPED</code> state. The default value is 0. The maximum value is
107344
- 5760.</p>
107345
- <p>This field is allowed only when <code>sessionPersistenceMode</code> is
107346
- <code>ACTIVATED</code> and <code>automaticTerminationMode</code> is
107347
- <code>ACTIVATED</code>.</p>
107348
- <p>If the value is set to 0, your sessions can’t be <code>STOPPED</code>. If you then
107349
- call <code>StopStreamingSession</code>, the session fails. If the time that a session
107350
- stays in the <code>READY</code> state exceeds the <code>maxSessionLengthInMinutes</code>
107351
- value, the session will automatically be terminated (instead of
107352
- <code>STOPPED</code>).</p>
107353
- <p>If the value is set to a positive number, the session can be stopped. You can call
107354
- <code>StopStreamingSession</code> to stop sessions in the <code>READY</code> state.
107355
- If the time that a session stays in the <code>READY</code> state exceeds the
107356
- <code>maxSessionLengthInMinutes</code> value, the session will automatically be
107357
- stopped (instead of terminated).</p>
107358
- * @min `0`
107359
- * @max `5760`
107360
- */
107361
106835
  MaxStoppedSessionLengthInMinutes?: number;
107362
- /**
107363
- * <p>Configures how streaming sessions are backed up when launched from this launch
107364
- profile.</p>
107365
- */
107366
106836
  SessionBackup?: NimbleStudioLaunchProfileStreamConfigurationSessionBackup;
107367
- SessionPersistenceMode?: NimbleStudioLaunchProfileSessionPersistenceMode;
107368
- /**
107369
- * <p>The configuration for a streaming session’s upload storage.</p>
107370
- */
106837
+ SessionPersistenceMode?: string;
107371
106838
  SessionStorage?: NimbleStudioLaunchProfileStreamConfigurationSessionStorage;
107372
- /**
107373
- * <p>The streaming images that users can select from when launching a streaming session
107374
- with this launch profile.</p>
107375
- * @minLength `1`
107376
- * @maxLength `20`
107377
- */
107378
106839
  StreamingImageIds: string[];
107379
- /**
107380
- * <p>Custom volume configuration for the root volumes that are attached to streaming
107381
- sessions.</p>
107382
- <p>This parameter is only allowed when <code>sessionPersistenceMode</code> is
107383
- <code>ACTIVATED</code>.</p>
107384
- */
107385
106840
  VolumeConfiguration?: NimbleStudioLaunchProfileVolumeConfiguration;
107386
106841
  };
107387
106842
  /**
107388
106843
  * Type definition for `AWS::NimbleStudio::LaunchProfile.StreamConfigurationSessionBackup`.
107389
- * <p>Configures how streaming sessions are backed up when launched from this launch
107390
- profile.</p>
107391
106844
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-streamconfigurationsessionbackup.html}
107392
106845
  */
107393
106846
  export type NimbleStudioLaunchProfileStreamConfigurationSessionBackup = {
107394
- /**
107395
- * <p>The maximum number of backups that each streaming session created from this launch
107396
- profile can have.</p>
107397
- * @min `0`
107398
- * @max `10`
107399
- */
107400
106847
  MaxBackupsToRetain?: number;
107401
- Mode?: NimbleStudioLaunchProfileSessionBackupMode;
106848
+ Mode?: string;
107402
106849
  };
107403
106850
  /**
107404
106851
  * Type definition for `AWS::NimbleStudio::LaunchProfile.StreamConfigurationSessionStorage`.
107405
- * <p>The configuration for a streaming session’s upload storage.</p>
107406
106852
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-streamconfigurationsessionstorage.html}
107407
106853
  */
107408
106854
  export type NimbleStudioLaunchProfileStreamConfigurationSessionStorage = {
107409
- /**
107410
- * <p>Allows artists to upload files to their workstations. The only valid option is
107411
- <code>UPLOAD</code>.</p>
107412
- * @minLength `1`
107413
- */
107414
- Mode: NimbleStudioLaunchProfileStreamingSessionStorageMode[];
107415
- /**
107416
- * <p>The upload storage root location (folder) on streaming workstations where files are
107417
- uploaded.</p>
107418
- */
106855
+ Mode: string[];
107419
106856
  Root?: NimbleStudioLaunchProfileStreamingSessionStorageRoot;
107420
106857
  };
107421
- /**
107422
- * Type definition for `AWS::NimbleStudio::LaunchProfile.StreamingClipboardMode`.
107423
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-streamingclipboardmode.html}
107424
- */
107425
- export type NimbleStudioLaunchProfileStreamingClipboardMode = "ENABLED" | "DISABLED";
107426
- /**
107427
- * Type definition for `AWS::NimbleStudio::LaunchProfile.StreamingInstanceType`.
107428
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-streaminginstancetype.html}
107429
- */
107430
- export type NimbleStudioLaunchProfileStreamingInstanceType = "g4dn.xlarge" | "g4dn.2xlarge" | "g4dn.4xlarge" | "g4dn.8xlarge" | "g4dn.12xlarge" | "g4dn.16xlarge" | "g3.4xlarge" | "g3s.xlarge" | "g5.xlarge" | "g5.2xlarge" | "g5.4xlarge" | "g5.8xlarge" | "g5.16xlarge";
107431
- /**
107432
- * Type definition for `AWS::NimbleStudio::LaunchProfile.StreamingSessionStorageMode`.
107433
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-streamingsessionstoragemode.html}
107434
- */
107435
- export type NimbleStudioLaunchProfileStreamingSessionStorageMode = "UPLOAD";
107436
106858
  /**
107437
106859
  * Type definition for `AWS::NimbleStudio::LaunchProfile.StreamingSessionStorageRoot`.
107438
- * <p>The upload storage root location (folder) on streaming workstations where files are
107439
- uploaded.</p>
107440
106860
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-streamingsessionstorageroot.html}
107441
106861
  */
107442
106862
  export type NimbleStudioLaunchProfileStreamingSessionStorageRoot = {
107443
- /**
107444
- * <p>The folder path in Linux workstations where files are uploaded.</p>
107445
- * @minLength `1`
107446
- * @maxLength `128`
107447
- * @pattern `^(\$HOME|/)[/]?([A-Za-z0-9-_]+/)*([A-Za-z0-9_-]+)$`
107448
- */
107449
106863
  Linux?: string;
107450
- /**
107451
- * <p>The folder path in Windows workstations where files are uploaded.</p>
107452
- * @minLength `1`
107453
- * @maxLength `128`
107454
- * @pattern `^((\%HOMEPATH\%)|[a-zA-Z]:)[\\/](?:[a-zA-Z0-9_-]+[\\/])*[a-zA-Z0-9_-]+$`
107455
- */
107456
106864
  Windows?: string;
107457
106865
  };
107458
- /**
107459
- * Type definition for `AWS::NimbleStudio::LaunchProfile.Tags`.
107460
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-tags.html}
107461
- */
107462
- export type NimbleStudioLaunchProfileTags = Record<string, string>;
107463
106866
  /**
107464
106867
  * Type definition for `AWS::NimbleStudio::LaunchProfile.VolumeConfiguration`.
107465
- * <p>Custom volume configuration for the root volumes that are attached to streaming
107466
- sessions.</p>
107467
- <p>This parameter is only allowed when <code>sessionPersistenceMode</code> is
107468
- <code>ACTIVATED</code>.</p>
107469
106868
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-launchprofile-volumeconfiguration.html}
107470
106869
  */
107471
106870
  export type NimbleStudioLaunchProfileVolumeConfiguration = {
107472
- /**
107473
- * <p>The number of I/O operations per second for the root volume that is attached to
107474
- streaming session.</p>
107475
- * @min `3000`
107476
- * @max `16000`
107477
- */
107478
106871
  Iops?: number;
107479
- /**
107480
- * <p>The size of the root volume that is attached to the streaming session. The root volume
107481
- size is measured in GiBs.</p>
107482
- * @min `100`
107483
- * @max `16000`
107484
- */
107485
106872
  Size?: number;
107486
- /**
107487
- * <p>The throughput to provision for the root volume that is attached to the streaming
107488
- session. The throughput is measured in MiB/s.</p>
107489
- * @min `125`
107490
- * @max `1000`
107491
- */
107492
106873
  Throughput?: number;
107493
106874
  };
107494
106875
  /**
107495
- * Resource type definition for `AWS::NimbleStudio::StreamingImage`.
107496
- * Represents a streaming session machine image that can be used to launch a streaming session
106876
+ * Resource Type definition for AWS::NimbleStudio::StreamingImage
107497
106877
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-nimblestudio-streamingimage.html}
107498
106878
  */
107499
106879
  export type NimbleStudioStreamingImageProps = {
107500
- /**
107501
- * <p>A human-readable description of the streaming image.</p>
107502
- * @minLength `0`
107503
- * @maxLength `256`
107504
- */
107505
106880
  Description?: string;
107506
- /**
107507
- * <p>The ID of an EC2 machine image with which to create this streaming image.</p>
107508
- * @pattern `^ami-[0-9A-z]+$`
107509
- */
107510
106881
  Ec2ImageId: string;
107511
- /**
107512
- * <p>A friendly name for a streaming image resource.</p>
107513
- * @minLength `0`
107514
- * @maxLength `64`
107515
- */
106882
+ EncryptionConfigurationKeyArn?: string;
106883
+ EncryptionConfigurationKeyType?: string;
107516
106884
  Name: string;
107517
- /**
107518
- * <p>The studioId. </p>
107519
- */
107520
106885
  StudioId: string;
107521
- Tags?: NimbleStudioStreamingImageTags;
106886
+ Tags?: Record<string, string>;
107522
106887
  };
107523
106888
  /**
107524
106889
  * Attribute type definition for `AWS::NimbleStudio::StreamingImage`.
107525
106890
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-nimblestudio-streamingimage.html#aws-resource-nimblestudio-streamingimage-return-values}
107526
106891
  */
107527
106892
  export type NimbleStudioStreamingImageAttributes = {
107528
- /**
107529
- * <p>TODO</p>
107530
- */
107531
106893
  EncryptionConfiguration: {
107532
- /**
107533
- * <p>The ARN for a KMS key that is used to encrypt studio data.</p>
107534
- * @minLength `4`
107535
- * @pattern `^arn:.*`
107536
- */
107537
106894
  KeyArn: string;
107538
- /**
107539
- * <p/>
107540
- */
107541
- KeyType: NimbleStudioStreamingImageStreamingImageEncryptionConfigurationKeyType;
106895
+ KeyType: string;
107542
106896
  };
107543
- /**
107544
- * <p>The list of EULAs that must be accepted before a Streaming Session can be started using this streaming image.</p>
107545
- */
107546
106897
  EulaIds: string[];
107547
- /**
107548
- * <p>The owner of the streaming image, either the studioId that contains the streaming image, or 'amazon' for images that are provided by Amazon Nimble Studio.</p>
107549
- */
107550
106898
  Owner: string;
107551
- /**
107552
- * <p>The platform of the streaming image, either WINDOWS or LINUX.</p>
107553
- * @pattern `^[a-zA-Z]*$`
107554
- */
107555
106899
  Platform: string;
107556
106900
  StreamingImageId: string;
107557
106901
  };
107558
106902
  /**
107559
- * Type definition for `AWS::NimbleStudio::StreamingImage.StreamingImageEncryptionConfiguration`.
107560
- * <p>TODO</p>
107561
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-streamingimage-streamingimageencryptionconfiguration.html}
107562
- */
107563
- export type NimbleStudioStreamingImageStreamingImageEncryptionConfiguration = {
107564
- /**
107565
- * <p>The ARN for a KMS key that is used to encrypt studio data.</p>
107566
- * @minLength `4`
107567
- * @pattern `^arn:.*`
107568
- */
107569
- KeyArn?: string;
107570
- /**
107571
- * <p/>
107572
- */
107573
- KeyType: NimbleStudioStreamingImageStreamingImageEncryptionConfigurationKeyType;
107574
- };
107575
- /**
107576
- * Type definition for `AWS::NimbleStudio::StreamingImage.StreamingImageEncryptionConfigurationKeyType`.
107577
- * <p/>
107578
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-streamingimage-streamingimageencryptionconfigurationkeytype.html}
107579
- */
107580
- export type NimbleStudioStreamingImageStreamingImageEncryptionConfigurationKeyType = "CUSTOMER_MANAGED_KEY";
107581
- /**
107582
- * Type definition for `AWS::NimbleStudio::StreamingImage.Tags`.
107583
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-streamingimage-tags.html}
107584
- */
107585
- export type NimbleStudioStreamingImageTags = Record<string, string>;
107586
- /**
107587
- * Resource type definition for `AWS::NimbleStudio::Studio`.
107588
- * Represents a studio that contains other Nimble Studio resources
106903
+ * Resource Type definition for AWS::NimbleStudio::Studio
107589
106904
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-nimblestudio-studio.html}
107590
106905
  */
107591
106906
  export type NimbleStudioStudioProps = {
107592
- /**
107593
- * <p>The IAM role that Studio Admins will assume when logging in to the Nimble Studio portal.</p>
107594
- */
107595
106907
  AdminRoleArn: string;
107596
- /**
107597
- * <p>A friendly name for the studio.</p>
107598
- * @minLength `0`
107599
- * @maxLength `64`
107600
- */
107601
106908
  DisplayName: string;
107602
- /**
107603
- * <p>Configuration of the encryption method that is used for the studio.</p>
107604
- */
107605
106909
  StudioEncryptionConfiguration?: NimbleStudioStudioStudioEncryptionConfiguration;
107606
- /**
107607
- * <p>The studio name that is used in the URL of the Nimble Studio portal when accessed by Nimble Studio users.</p>
107608
- * @minLength `3`
107609
- * @maxLength `64`
107610
- * @pattern `^[a-z0-9]*$`
107611
- */
107612
106910
  StudioName: string;
107613
- Tags?: NimbleStudioStudioTags;
107614
- /**
107615
- * <p>The IAM role that Studio Users will assume when logging in to the Nimble Studio portal.</p>
107616
- */
106911
+ Tags?: Record<string, string>;
107617
106912
  UserRoleArn: string;
107618
106913
  };
107619
106914
  /**
@@ -107621,106 +106916,34 @@ export type NimbleStudioStudioProps = {
107621
106916
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-nimblestudio-studio.html#aws-resource-nimblestudio-studio-return-values}
107622
106917
  */
107623
106918
  export type NimbleStudioStudioAttributes = {
107624
- /**
107625
- * <p>The Amazon Web Services Region where the studio resource is located.</p>
107626
- * @minLength `0`
107627
- * @maxLength `50`
107628
- * @pattern `[a-z]{2}-?(iso|gov)?-{1}[a-z]*-{1}[0-9]`
107629
- */
107630
106919
  HomeRegion: string;
107631
- /**
107632
- * <p>The Amazon Web Services SSO application client ID used to integrate with Amazon Web Services SSO to enable Amazon Web Services SSO users to log in to Nimble Studio portal.</p>
107633
- */
107634
106920
  SsoClientId: string;
107635
106921
  StudioId: string;
107636
- /**
107637
- * <p>The address of the web page for the studio.</p>
107638
- */
107639
106922
  StudioUrl: string;
107640
106923
  };
107641
106924
  /**
107642
106925
  * Type definition for `AWS::NimbleStudio::Studio.StudioEncryptionConfiguration`.
107643
- * <p>Configuration of the encryption method that is used for the studio.</p>
107644
106926
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studio-studioencryptionconfiguration.html}
107645
106927
  */
107646
106928
  export type NimbleStudioStudioStudioEncryptionConfiguration = {
107647
- /**
107648
- * <p>The ARN for a KMS key that is used to encrypt studio data.</p>
107649
- * @minLength `4`
107650
- * @pattern `^arn:.*`
107651
- */
107652
106929
  KeyArn?: string;
107653
- /**
107654
- * <p>The type of KMS key that is used to encrypt studio data.</p>
107655
- */
107656
- KeyType: NimbleStudioStudioStudioEncryptionConfigurationKeyType;
106930
+ KeyType: string;
107657
106931
  };
107658
106932
  /**
107659
- * Type definition for `AWS::NimbleStudio::Studio.StudioEncryptionConfigurationKeyType`.
107660
- * <p>The type of KMS key that is used to encrypt studio data.</p>
107661
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studio-studioencryptionconfigurationkeytype.html}
107662
- */
107663
- export type NimbleStudioStudioStudioEncryptionConfigurationKeyType = "AWS_OWNED_KEY" | "CUSTOMER_MANAGED_KEY";
107664
- /**
107665
- * Type definition for `AWS::NimbleStudio::Studio.Tags`.
107666
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studio-tags.html}
107667
- */
107668
- export type NimbleStudioStudioTags = Record<string, string>;
107669
- /**
107670
- * Resource type definition for `AWS::NimbleStudio::StudioComponent`.
107671
- * Represents a studio component that connects a non-Nimble Studio resource in your account to your studio
106933
+ * Resource Type definition for AWS::NimbleStudio::StudioComponent
107672
106934
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-nimblestudio-studiocomponent.html}
107673
106935
  */
107674
106936
  export type NimbleStudioStudioComponentProps = {
107675
- /**
107676
- * <p>The configuration of the studio component, based on component type.</p>
107677
- */
107678
106937
  Configuration?: NimbleStudioStudioComponentStudioComponentConfiguration;
107679
- /**
107680
- * <p>The description.</p>
107681
- * @minLength `0`
107682
- * @maxLength `256`
107683
- */
107684
106938
  Description?: string;
107685
- /**
107686
- * <p>The EC2 security groups that control access to the studio component.</p>
107687
- * @minLength `0`
107688
- * @maxLength `30`
107689
- */
107690
106939
  Ec2SecurityGroupIds?: string[];
107691
- /**
107692
- * <p>Initialization scripts for studio components.</p>
107693
- */
107694
106940
  InitializationScripts?: NimbleStudioStudioComponentStudioComponentInitializationScript[];
107695
- /**
107696
- * <p>The name for the studio component.</p>
107697
- * @minLength `0`
107698
- * @maxLength `64`
107699
- */
107700
106941
  Name: string;
107701
- /**
107702
- * @minLength `0`
107703
- * @maxLength `2048`
107704
- */
107705
- RuntimeRoleArn?: string;
107706
- /**
107707
- * <p>Parameters for the studio component scripts.</p>
107708
- * @minLength `0`
107709
- * @maxLength `30`
107710
- */
107711
106942
  ScriptParameters?: NimbleStudioStudioComponentScriptParameterKeyValue[];
107712
- /**
107713
- * @minLength `0`
107714
- * @maxLength `2048`
107715
- */
107716
- SecureInitializationRoleArn?: string;
107717
- /**
107718
- * <p>The studio ID. </p>
107719
- */
107720
106943
  StudioId: string;
107721
- Subtype?: NimbleStudioStudioComponentStudioComponentSubtype;
107722
- Tags?: NimbleStudioStudioComponentTags;
107723
- Type: NimbleStudioStudioComponentStudioComponentType;
106944
+ Subtype?: string;
106945
+ Tags?: Record<string, string>;
106946
+ Type: string;
107724
106947
  };
107725
106948
  /**
107726
106949
  * Attribute type definition for `AWS::NimbleStudio::StudioComponent`.
@@ -107731,210 +106954,75 @@ export type NimbleStudioStudioComponentAttributes = {
107731
106954
  };
107732
106955
  /**
107733
106956
  * Type definition for `AWS::NimbleStudio::StudioComponent.ActiveDirectoryComputerAttribute`.
107734
- * <p>An LDAP attribute of an Active Directory computer account, in the form of a name:value
107735
- pair.</p>
107736
106957
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-activedirectorycomputerattribute.html}
107737
106958
  */
107738
106959
  export type NimbleStudioStudioComponentActiveDirectoryComputerAttribute = {
107739
- /**
107740
- * <p>The name for the LDAP attribute.</p>
107741
- * @minLength `1`
107742
- * @maxLength `40`
107743
- */
107744
106960
  Name?: string;
107745
- /**
107746
- * <p>The value for the LDAP attribute.</p>
107747
- * @minLength `1`
107748
- * @maxLength `64`
107749
- */
107750
106961
  Value?: string;
107751
106962
  };
107752
106963
  /**
107753
106964
  * Type definition for `AWS::NimbleStudio::StudioComponent.ActiveDirectoryConfiguration`.
107754
- * <p>The configuration for a Microsoft Active Directory (Microsoft AD) studio
107755
- resource.</p>
107756
106965
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-activedirectoryconfiguration.html}
107757
106966
  */
107758
106967
  export type NimbleStudioStudioComponentActiveDirectoryConfiguration = {
107759
- /**
107760
- * <p>A collection of custom attributes for an Active Directory computer.</p>
107761
- * @minLength `0`
107762
- * @maxLength `50`
107763
- */
107764
106968
  ComputerAttributes?: NimbleStudioStudioComponentActiveDirectoryComputerAttribute[];
107765
- /**
107766
- * <p>The directory ID of the Directory Service for Microsoft Active Directory to access
107767
- using this studio component.</p>
107768
- */
107769
106969
  DirectoryId?: string;
107770
- /**
107771
- * <p>The distinguished name (DN) and organizational unit (OU) of an Active Directory
107772
- computer.</p>
107773
- * @minLength `1`
107774
- * @maxLength `2000`
107775
- */
107776
106970
  OrganizationalUnitDistinguishedName?: string;
107777
106971
  };
107778
106972
  /**
107779
106973
  * Type definition for `AWS::NimbleStudio::StudioComponent.ComputeFarmConfiguration`.
107780
- * <p>The configuration for a render farm that is associated with a studio resource.</p>
107781
106974
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-computefarmconfiguration.html}
107782
106975
  */
107783
106976
  export type NimbleStudioStudioComponentComputeFarmConfiguration = {
107784
- /**
107785
- * <p>The name of an Active Directory user that is used on ComputeFarm worker
107786
- instances.</p>
107787
- */
107788
106977
  ActiveDirectoryUser?: string;
107789
- /**
107790
- * <p>The endpoint of the ComputeFarm that is accessed by the studio component
107791
- resource.</p>
107792
- */
107793
106978
  Endpoint?: string;
107794
106979
  };
107795
- /**
107796
- * Type definition for `AWS::NimbleStudio::StudioComponent.LaunchProfilePlatform`.
107797
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-launchprofileplatform.html}
107798
- */
107799
- export type NimbleStudioStudioComponentLaunchProfilePlatform = "LINUX" | "WINDOWS";
107800
106980
  /**
107801
106981
  * Type definition for `AWS::NimbleStudio::StudioComponent.LicenseServiceConfiguration`.
107802
- * <p>The configuration for a license service that is associated with a studio
107803
- resource.</p>
107804
106982
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-licenseserviceconfiguration.html}
107805
106983
  */
107806
106984
  export type NimbleStudioStudioComponentLicenseServiceConfiguration = {
107807
- /**
107808
- * <p>The endpoint of the license service that is accessed by the studio component
107809
- resource.</p>
107810
- */
107811
106985
  Endpoint?: string;
107812
106986
  };
107813
106987
  /**
107814
106988
  * Type definition for `AWS::NimbleStudio::StudioComponent.ScriptParameterKeyValue`.
107815
- * <p>A parameter for a studio component script, in the form of a key:value pair.</p>
107816
106989
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-scriptparameterkeyvalue.html}
107817
106990
  */
107818
106991
  export type NimbleStudioStudioComponentScriptParameterKeyValue = {
107819
- /**
107820
- * <p>A script parameter key.</p>
107821
- * @minLength `1`
107822
- * @maxLength `64`
107823
- * @pattern `^[a-zA-Z_][a-zA-Z0-9_]+$`
107824
- */
107825
106992
  Key?: string;
107826
- /**
107827
- * <p>A script parameter value.</p>
107828
- * @minLength `1`
107829
- * @maxLength `256`
107830
- */
107831
106993
  Value?: string;
107832
106994
  };
107833
106995
  /**
107834
106996
  * Type definition for `AWS::NimbleStudio::StudioComponent.SharedFileSystemConfiguration`.
107835
- * <p>The configuration for a shared file storage system that is associated with a studio
107836
- resource.</p>
107837
106997
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-sharedfilesystemconfiguration.html}
107838
106998
  */
107839
106999
  export type NimbleStudioStudioComponentSharedFileSystemConfiguration = {
107840
- /**
107841
- * <p>The endpoint of the shared file system that is accessed by the studio component
107842
- resource.</p>
107843
- */
107844
107000
  Endpoint?: string;
107845
- /**
107846
- * <p>The unique identifier for a file system.</p>
107847
- */
107848
107001
  FileSystemId?: string;
107849
- /**
107850
- * <p>The mount location for a shared file system on a Linux virtual workstation.</p>
107851
- * @minLength `0`
107852
- * @maxLength `128`
107853
- * @pattern `^(/?|(\$HOME)?(/[^/\n\s\\]+)*)$`
107854
- */
107855
107002
  LinuxMountPoint?: string;
107856
- /**
107857
- * <p>The name of the file share.</p>
107858
- */
107859
107003
  ShareName?: string;
107860
- /**
107861
- * <p>The mount location for a shared file system on a Windows virtual workstation.</p>
107862
- * @pattern `^[A-Z]$`
107863
- */
107864
107004
  WindowsMountDrive?: string;
107865
107005
  };
107866
107006
  /**
107867
107007
  * Type definition for `AWS::NimbleStudio::StudioComponent.StudioComponentConfiguration`.
107868
- * <p>The configuration of the studio component, based on component type.</p>
107869
107008
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-studiocomponentconfiguration.html}
107870
107009
  */
107871
107010
  export type NimbleStudioStudioComponentStudioComponentConfiguration = {
107872
- /**
107873
- * <p>The configuration for a Microsoft Active Directory (Microsoft AD) studio
107874
- resource.</p>
107875
- */
107876
- ActiveDirectoryConfiguration: NimbleStudioStudioComponentActiveDirectoryConfiguration;
107877
- } | {
107878
- /**
107879
- * <p>The configuration for a render farm that is associated with a studio resource.</p>
107880
- */
107881
- ComputeFarmConfiguration: NimbleStudioStudioComponentComputeFarmConfiguration;
107882
- } | {
107883
- /**
107884
- * <p>The configuration for a license service that is associated with a studio
107885
- resource.</p>
107886
- */
107887
- LicenseServiceConfiguration: NimbleStudioStudioComponentLicenseServiceConfiguration;
107888
- } | {
107889
- /**
107890
- * <p>The configuration for a shared file storage system that is associated with a studio
107891
- resource.</p>
107892
- */
107893
- SharedFileSystemConfiguration: NimbleStudioStudioComponentSharedFileSystemConfiguration;
107011
+ ActiveDirectoryConfiguration?: NimbleStudioStudioComponentActiveDirectoryConfiguration;
107012
+ ComputeFarmConfiguration?: NimbleStudioStudioComponentComputeFarmConfiguration;
107013
+ LicenseServiceConfiguration?: NimbleStudioStudioComponentLicenseServiceConfiguration;
107014
+ SharedFileSystemConfiguration?: NimbleStudioStudioComponentSharedFileSystemConfiguration;
107894
107015
  };
107895
107016
  /**
107896
107017
  * Type definition for `AWS::NimbleStudio::StudioComponent.StudioComponentInitializationScript`.
107897
- * <p>Initialization scripts for studio components.</p>
107898
107018
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-studiocomponentinitializationscript.html}
107899
107019
  */
107900
107020
  export type NimbleStudioStudioComponentStudioComponentInitializationScript = {
107901
- /**
107902
- * <p>The version number of the protocol that is used by the launch profile. The only valid
107903
- version is "2021-03-31".</p>
107904
- * @minLength `0`
107905
- * @maxLength `10`
107906
- * @pattern `^2021\-03\-31$`
107907
- */
107908
107021
  LaunchProfileProtocolVersion?: string;
107909
- Platform?: NimbleStudioStudioComponentLaunchProfilePlatform;
107910
- RunContext?: NimbleStudioStudioComponentStudioComponentInitializationScriptRunContext;
107911
- /**
107912
- * <p>The initialization script.</p>
107913
- * @minLength `1`
107914
- * @maxLength `5120`
107915
- */
107022
+ Platform?: string;
107023
+ RunContext?: string;
107916
107024
  Script?: string;
107917
107025
  };
107918
- /**
107919
- * Type definition for `AWS::NimbleStudio::StudioComponent.StudioComponentInitializationScriptRunContext`.
107920
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-studiocomponentinitializationscriptruncontext.html}
107921
- */
107922
- export type NimbleStudioStudioComponentStudioComponentInitializationScriptRunContext = "SYSTEM_INITIALIZATION" | "USER_INITIALIZATION";
107923
- /**
107924
- * Type definition for `AWS::NimbleStudio::StudioComponent.StudioComponentSubtype`.
107925
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-studiocomponentsubtype.html}
107926
- */
107927
- export type NimbleStudioStudioComponentStudioComponentSubtype = "AWS_MANAGED_MICROSOFT_AD" | "AMAZON_FSX_FOR_WINDOWS" | "AMAZON_FSX_FOR_LUSTRE" | "CUSTOM";
107928
- /**
107929
- * Type definition for `AWS::NimbleStudio::StudioComponent.StudioComponentType`.
107930
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-studiocomponenttype.html}
107931
- */
107932
- export type NimbleStudioStudioComponentStudioComponentType = "ACTIVE_DIRECTORY" | "SHARED_FILE_SYSTEM" | "COMPUTE_FARM" | "LICENSE_SERVICE" | "CUSTOM";
107933
- /**
107934
- * Type definition for `AWS::NimbleStudio::StudioComponent.Tags`.
107935
- * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-nimblestudio-studiocomponent-tags.html}
107936
- */
107937
- export type NimbleStudioStudioComponentTags = Record<string, string>;
107938
107026
  /**
107939
107027
  * Definition of AWS::Oam::Link Resource Type
107940
107028
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html}
@@ -175745,6 +174833,211 @@ export type WAFv2WebACLAssociationProps = {
175745
174833
  */
175746
174834
  WebACLArn: string;
175747
174835
  };
174836
+ /**
174837
+ * Definition of AWS::Wisdom::AIAgent Resource Type
174838
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagent.html}
174839
+ */
174840
+ export type WisdomAIAgentProps = {
174841
+ /**
174842
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$|^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}$`
174843
+ */
174844
+ AssistantId: string;
174845
+ Configuration: WisdomAIAgentAIAgentConfiguration;
174846
+ /**
174847
+ * @minLength `1`
174848
+ * @maxLength `255`
174849
+ * @pattern `^[a-zA-Z0-9\s_.,-]+`
174850
+ */
174851
+ Description?: string;
174852
+ /**
174853
+ * @minLength `1`
174854
+ * @maxLength `255`
174855
+ * @pattern `^[a-zA-Z0-9\s_.,-]+`
174856
+ */
174857
+ Name?: string;
174858
+ Tags?: WisdomAIAgentTags;
174859
+ Type: WisdomAIAgentAIAgentType;
174860
+ };
174861
+ /**
174862
+ * Attribute type definition for `AWS::Wisdom::AIAgent`.
174863
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagent.html#aws-resource-wisdom-aiagent-return-values}
174864
+ */
174865
+ export type WisdomAIAgentAttributes = {
174866
+ /**
174867
+ * @pattern `^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}$`
174868
+ */
174869
+ AIAgentArn: string;
174870
+ /**
174871
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(:[A-Z0-9_$]+){0,1}$|^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}(:[A-Z0-9_$]+){0,1}$`
174872
+ */
174873
+ AIAgentId: string;
174874
+ /**
174875
+ * @pattern `^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}$`
174876
+ */
174877
+ AssistantArn: string;
174878
+ };
174879
+ /**
174880
+ * Type definition for `AWS::Wisdom::AIAgent.AIAgentAssociationConfigurationType`.
174881
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-aiagentassociationconfigurationtype.html}
174882
+ */
174883
+ export type WisdomAIAgentAIAgentAssociationConfigurationType = "KNOWLEDGE_BASE";
174884
+ /**
174885
+ * Type definition for `AWS::Wisdom::AIAgent.AIAgentConfiguration`.
174886
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-aiagentconfiguration.html}
174887
+ */
174888
+ export type WisdomAIAgentAIAgentConfiguration = {
174889
+ ManualSearchAIAgentConfiguration: WisdomAIAgentManualSearchAIAgentConfiguration;
174890
+ } | {
174891
+ AnswerRecommendationAIAgentConfiguration: WisdomAIAgentAnswerRecommendationAIAgentConfiguration;
174892
+ };
174893
+ /**
174894
+ * Type definition for `AWS::Wisdom::AIAgent.AIAgentType`.
174895
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-aiagenttype.html}
174896
+ */
174897
+ export type WisdomAIAgentAIAgentType = "MANUAL_SEARCH" | "ANSWER_RECOMMENDATION";
174898
+ /**
174899
+ * Type definition for `AWS::Wisdom::AIAgent.AnswerRecommendationAIAgentConfiguration`.
174900
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-answerrecommendationaiagentconfiguration.html}
174901
+ */
174902
+ export type WisdomAIAgentAnswerRecommendationAIAgentConfiguration = {
174903
+ /**
174904
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(:[A-Z0-9_$]+){0,1}$`
174905
+ */
174906
+ AnswerGenerationAIPromptId?: string;
174907
+ AssociationConfigurations?: WisdomAIAgentAssociationConfiguration[];
174908
+ /**
174909
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(:[A-Z0-9_$]+){0,1}$`
174910
+ */
174911
+ IntentLabelingGenerationAIPromptId?: string;
174912
+ /**
174913
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(:[A-Z0-9_$]+){0,1}$`
174914
+ */
174915
+ QueryReformulationAIPromptId?: string;
174916
+ };
174917
+ /**
174918
+ * Type definition for `AWS::Wisdom::AIAgent.AssociationConfiguration`.
174919
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-associationconfiguration.html}
174920
+ */
174921
+ export type WisdomAIAgentAssociationConfiguration = {
174922
+ AssociationConfigurationData?: WisdomAIAgentAssociationConfigurationData;
174923
+ /**
174924
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$`
174925
+ */
174926
+ AssociationId?: string;
174927
+ AssociationType?: WisdomAIAgentAIAgentAssociationConfigurationType;
174928
+ };
174929
+ /**
174930
+ * Type definition for `AWS::Wisdom::AIAgent.AssociationConfigurationData`.
174931
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-associationconfigurationdata.html}
174932
+ */
174933
+ export type WisdomAIAgentAssociationConfigurationData = {
174934
+ KnowledgeBaseAssociationConfigurationData: WisdomAIAgentKnowledgeBaseAssociationConfigurationData;
174935
+ };
174936
+ /**
174937
+ * Type definition for `AWS::Wisdom::AIAgent.KnowledgeBaseAssociationConfigurationData`.
174938
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-knowledgebaseassociationconfigurationdata.html}
174939
+ */
174940
+ export type WisdomAIAgentKnowledgeBaseAssociationConfigurationData = {
174941
+ ContentTagFilter?: WisdomAIAgentTagFilter;
174942
+ /**
174943
+ * @min `1`
174944
+ * @max `100`
174945
+ */
174946
+ MaxResults?: number;
174947
+ OverrideKnowledgeBaseSearchType?: WisdomAIAgentKnowledgeBaseSearchType;
174948
+ };
174949
+ /**
174950
+ * Type definition for `AWS::Wisdom::AIAgent.KnowledgeBaseSearchType`.
174951
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-knowledgebasesearchtype.html}
174952
+ */
174953
+ export type WisdomAIAgentKnowledgeBaseSearchType = "HYBRID" | "SEMANTIC";
174954
+ /**
174955
+ * Type definition for `AWS::Wisdom::AIAgent.ManualSearchAIAgentConfiguration`.
174956
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-manualsearchaiagentconfiguration.html}
174957
+ */
174958
+ export type WisdomAIAgentManualSearchAIAgentConfiguration = {
174959
+ /**
174960
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(:[A-Z0-9_$]+){0,1}$`
174961
+ */
174962
+ AnswerGenerationAIPromptId?: string;
174963
+ AssociationConfigurations?: WisdomAIAgentAssociationConfiguration[];
174964
+ };
174965
+ /**
174966
+ * Type definition for `AWS::Wisdom::AIAgent.OrCondition`.
174967
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-orcondition.html}
174968
+ */
174969
+ export type WisdomAIAgentOrCondition = {
174970
+ AndConditions: WisdomAIAgentTagCondition[];
174971
+ } | {
174972
+ TagCondition: WisdomAIAgentTagCondition;
174973
+ };
174974
+ /**
174975
+ * Type definition for `AWS::Wisdom::AIAgent.TagCondition`.
174976
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-tagcondition.html}
174977
+ */
174978
+ export type WisdomAIAgentTagCondition = {
174979
+ /**
174980
+ * @minLength `1`
174981
+ * @maxLength `128`
174982
+ * @pattern `^(?!aws:)[a-zA-Z+-=._:/]+$`
174983
+ */
174984
+ Key: string;
174985
+ /**
174986
+ * @minLength `1`
174987
+ * @maxLength `256`
174988
+ */
174989
+ Value?: string;
174990
+ };
174991
+ /**
174992
+ * Type definition for `AWS::Wisdom::AIAgent.TagFilter`.
174993
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-tagfilter.html}
174994
+ */
174995
+ export type WisdomAIAgentTagFilter = {
174996
+ TagCondition: WisdomAIAgentTagCondition;
174997
+ } | {
174998
+ AndConditions: WisdomAIAgentTagCondition[];
174999
+ } | {
175000
+ OrConditions: WisdomAIAgentOrCondition[];
175001
+ };
175002
+ /**
175003
+ * Type definition for `AWS::Wisdom::AIAgent.Tags`.
175004
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiagent-tags.html}
175005
+ */
175006
+ export type WisdomAIAgentTags = Record<string, string>;
175007
+ /**
175008
+ * Definition of AWS::Wisdom::AIAgentVersion Resource Type
175009
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagentversion.html}
175010
+ */
175011
+ export type WisdomAIAgentVersionProps = {
175012
+ /**
175013
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$`
175014
+ */
175015
+ AIAgentId: string;
175016
+ /**
175017
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$`
175018
+ */
175019
+ AssistantId: string;
175020
+ ModifiedTimeSeconds?: number;
175021
+ };
175022
+ /**
175023
+ * Attribute type definition for `AWS::Wisdom::AIAgentVersion`.
175024
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagentversion.html#aws-resource-wisdom-aiagentversion-return-values}
175025
+ */
175026
+ export type WisdomAIAgentVersionAttributes = {
175027
+ /**
175028
+ * @pattern `^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})?$`
175029
+ */
175030
+ AIAgentArn: string;
175031
+ /**
175032
+ * @pattern `^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(:[A-Z0-9_$]+){0,1}$`
175033
+ */
175034
+ AIAgentVersionId: string;
175035
+ /**
175036
+ * @pattern `^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})?$`
175037
+ */
175038
+ AssistantArn: string;
175039
+ VersionNumber: number;
175040
+ };
175748
175041
  /**
175749
175042
  * Definition of AWS::Wisdom::AIPrompt Resource Type
175750
175043
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiprompt.html}
@@ -178706,6 +177999,8 @@ export interface ResourceTypes {
178706
177999
  "AWS::WAFv2::RuleGroup": WAFv2RuleGroupProps;
178707
178000
  "AWS::WAFv2::WebACL": WAFv2WebACLProps;
178708
178001
  "AWS::WAFv2::WebACLAssociation": WAFv2WebACLAssociationProps;
178002
+ "AWS::Wisdom::AIAgent": WisdomAIAgentProps;
178003
+ "AWS::Wisdom::AIAgentVersion": WisdomAIAgentVersionProps;
178709
178004
  "AWS::Wisdom::AIPrompt": WisdomAIPromptProps;
178710
178005
  "AWS::Wisdom::AIPromptVersion": WisdomAIPromptVersionProps;
178711
178006
  "AWS::Wisdom::Assistant": WisdomAssistantProps;
@@ -179884,6 +179179,8 @@ export interface AttributeTypes {
179884
179179
  "AWS::WAFv2::RegexPatternSet": WAFv2RegexPatternSetAttributes;
179885
179180
  "AWS::WAFv2::RuleGroup": WAFv2RuleGroupAttributes;
179886
179181
  "AWS::WAFv2::WebACL": WAFv2WebACLAttributes;
179182
+ "AWS::Wisdom::AIAgent": WisdomAIAgentAttributes;
179183
+ "AWS::Wisdom::AIAgentVersion": WisdomAIAgentVersionAttributes;
179887
179184
  "AWS::Wisdom::AIPrompt": WisdomAIPromptAttributes;
179888
179185
  "AWS::Wisdom::AIPromptVersion": WisdomAIPromptVersionAttributes;
179889
179186
  "AWS::Wisdom::Assistant": WisdomAssistantAttributes;
@@ -181206,6 +180503,8 @@ export declare const ResourceType: {
181206
180503
  readonly WAFv2RuleGroup: "AWS::WAFv2::RuleGroup";
181207
180504
  readonly WAFv2WebACL: "AWS::WAFv2::WebACL";
181208
180505
  readonly WAFv2WebACLAssociation: "AWS::WAFv2::WebACLAssociation";
180506
+ readonly WisdomAIAgent: "AWS::Wisdom::AIAgent";
180507
+ readonly WisdomAIAgentVersion: "AWS::Wisdom::AIAgentVersion";
181209
180508
  readonly WisdomAIPrompt: "AWS::Wisdom::AIPrompt";
181210
180509
  readonly WisdomAIPromptVersion: "AWS::Wisdom::AIPromptVersion";
181211
180510
  readonly WisdomAssistant: "AWS::Wisdom::Assistant";