@awboost/cfn-resource-types 0.1.310 → 0.1.312

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.
@@ -6,26 +6,13 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
6
6
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-bot.html}
7
7
  */
8
8
  export type LexBotProperties = {
9
- /**
10
- * Specifies whether to build the bot locales after bot creation completes.
11
- */
12
9
  AutoBuildBotLocales?: boolean;
13
- /**
14
- * S3 location of bot definitions zip file, if it's not defined inline in CloudFormation.
15
- */
16
10
  BotFileS3Location?: S3Location;
17
- /**
18
- * List of bot locales
19
- */
20
11
  BotLocales?: BotLocale[];
21
12
  /**
22
- * A list of tags to add to the bot, which can only be added at bot creation.
23
13
  * @maxLength `200`
24
14
  */
25
15
  BotTags?: Tag[];
26
- /**
27
- * Data privacy setting of the Bot.
28
- */
29
16
  DataPrivacy: {
30
17
  ChildDirected: boolean;
31
18
  };
@@ -35,35 +22,25 @@ export type LexBotProperties = {
35
22
  */
36
23
  Description?: string;
37
24
  /**
38
- * IdleSessionTTLInSeconds of the resource
39
25
  * @min `60`
40
26
  * @max `86400`
41
27
  */
42
28
  IdleSessionTTLInSeconds: number;
43
29
  /**
44
- * Unique name for a resource.
45
30
  * @minLength `1`
46
31
  * @maxLength `100`
47
32
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
48
33
  */
49
34
  Name: string;
50
- /**
51
- * Parameter used to create a replication of the source bot in the secondary region.
52
- */
53
35
  Replication?: Replication;
54
36
  /**
55
- * The Amazon Resource Name (ARN) of an IAM role that has permission to access the bot.
56
37
  * @minLength `32`
57
38
  * @maxLength `2048`
58
39
  * @pattern `^arn:aws[a-zA-Z-]*:iam::[0-9]{12}:role/.*$`
59
40
  */
60
41
  RoleArn: string;
61
- /**
62
- * Configuring the test bot alias settings for a given bot
63
- */
64
42
  TestBotAliasSettings?: TestBotAliasSettings;
65
43
  /**
66
- * A list of tags to add to the test alias for a bot, , which can only be added at bot/bot alias creation.
67
44
  * @maxLength `200`
68
45
  */
69
46
  TestBotAliasTags?: Tag[];
@@ -80,7 +57,6 @@ export type LexBotAttributes = {
80
57
  */
81
58
  Arn: string;
82
59
  /**
83
- * Unique ID of resource
84
60
  * @minLength `10`
85
61
  * @maxLength `10`
86
62
  * @pattern `^[0-9a-zA-Z]+$`
@@ -89,131 +65,115 @@ export type LexBotAttributes = {
89
65
  };
90
66
  /**
91
67
  * Type definition for `AWS::Lex::Bot.AdvancedRecognitionSetting`.
92
- * Provides settings that enable advanced recognition settings for slot values.
93
68
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-advancedrecognitionsetting.html}
94
69
  */
95
70
  export type AdvancedRecognitionSetting = {
96
- /**
97
- * Enables using slot values as a custom vocabulary when recognizing user utterances.
98
- */
99
71
  AudioRecognitionStrategy?: AudioRecognitionStrategy;
100
72
  };
101
73
  /**
102
74
  * Type definition for `AWS::Lex::Bot.AllowedInputTypes`.
103
- * Specifies the allowed input types.
104
75
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-allowedinputtypes.html}
105
76
  */
106
77
  export type AllowedInputTypes = {
107
- /**
108
- * Indicates whether audio input is allowed.
109
- */
110
78
  AllowAudioInput: boolean;
111
- /**
112
- * Indicates whether DTMF input is allowed.
113
- */
114
79
  AllowDTMFInput: boolean;
115
80
  };
116
81
  /**
117
82
  * Type definition for `AWS::Lex::Bot.AudioAndDTMFInputSpecification`.
118
- * Specifies the audio and DTMF input specification.
119
83
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-audioanddtmfinputspecification.html}
120
84
  */
121
85
  export type AudioAndDTMFInputSpecification = {
122
- /**
123
- * Specifies the audio input specifications.
124
- */
125
86
  AudioSpecification?: AudioSpecification;
126
- /**
127
- * Specifies the settings on DTMF input.
128
- */
129
87
  DTMFSpecification?: DTMFSpecification;
130
88
  /**
131
- * Time for which a bot waits before assuming that the customer isn't going to speak or press a key. This timeout is shared between Audio and DTMF inputs.
132
89
  * @min `1`
133
90
  */
134
91
  StartTimeoutMs: number;
135
92
  };
136
93
  /**
137
94
  * Type definition for `AWS::Lex::Bot.AudioLogDestination`.
138
- * The location of audio log files collected when conversation logging is enabled for a bot.
139
95
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-audiologdestination.html}
140
96
  */
141
97
  export type AudioLogDestination = {
142
- /**
143
- * Specifies an Amazon S3 bucket for logging audio conversations
144
- */
145
98
  S3Bucket: S3BucketLogDestination;
146
99
  };
147
100
  /**
148
101
  * Type definition for `AWS::Lex::Bot.AudioLogSetting`.
149
- * Settings for logging audio of conversations between Amazon Lex and a user. You specify whether to log audio and the Amazon S3 bucket where the audio file is stored.
150
102
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-audiologsetting.html}
151
103
  */
152
104
  export type AudioLogSetting = {
153
- /**
154
- * The location of audio log files collected when conversation logging is enabled for a bot.
155
- */
156
105
  Destination: AudioLogDestination;
157
106
  Enabled: boolean;
158
107
  };
159
108
  /**
160
109
  * Type definition for `AWS::Lex::Bot.AudioRecognitionStrategy`.
161
- * Enables using slot values as a custom vocabulary when recognizing user utterances.
162
110
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-audiorecognitionstrategy.html}
163
111
  */
164
112
  export type AudioRecognitionStrategy = "UseSlotValuesAsCustomVocabulary";
165
113
  /**
166
114
  * Type definition for `AWS::Lex::Bot.AudioSpecification`.
167
- * Specifies the audio input specifications.
168
115
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-audiospecification.html}
169
116
  */
170
117
  export type AudioSpecification = {
171
118
  /**
172
- * Time for which a bot waits after the customer stops speaking to assume the utterance is finished.
173
119
  * @min `1`
174
120
  */
175
121
  EndTimeoutMs: number;
176
122
  /**
177
- * Time for how long Amazon Lex waits before speech input is truncated and the speech is returned to application.
178
123
  * @min `1`
179
124
  */
180
125
  MaxLengthMs: number;
181
126
  };
127
+ /**
128
+ * Type definition for `AWS::Lex::Bot.BedrockAgentIntentConfiguration`.
129
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-bedrockagentintentconfiguration.html}
130
+ */
131
+ export type BedrockAgentIntentConfiguration = {
132
+ BedrockAgentConfiguration?: {
133
+ /**
134
+ * @minLength `1`
135
+ * @maxLength `5000`
136
+ */
137
+ BedrockAgentAliasId?: string;
138
+ /**
139
+ * @minLength `1`
140
+ * @maxLength `5000`
141
+ */
142
+ BedrockAgentId?: string;
143
+ };
144
+ BedrockAgentIntentKnowledgeBaseConfiguration?: {
145
+ /**
146
+ * @minLength `1`
147
+ * @maxLength `5000`
148
+ */
149
+ BedrockKnowledgeBaseArn: string;
150
+ BedrockModelConfiguration: BedrockModelSpecification;
151
+ };
152
+ };
182
153
  /**
183
154
  * Type definition for `AWS::Lex::Bot.BedrockModelSpecification`.
184
- * Contains information about the Amazon Bedrock model used to interpret the prompt used in descriptive bot building.
185
155
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-bedrockmodelspecification.html}
186
156
  */
187
157
  export type BedrockModelSpecification = {
188
- /**
189
- * The guardrail configuration in the Bedrock model specification details.
190
- */
191
158
  BedrockGuardrailConfiguration?: {
192
159
  /**
193
- * The unique guardrail id for the Bedrock guardrail configuration.
194
160
  * @minLength `1`
195
161
  * @maxLength `5000`
196
162
  */
197
163
  BedrockGuardrailIdentifier?: string;
198
164
  /**
199
- * The guardrail version for the Bedrock guardrail configuration.
200
165
  * @minLength `1`
201
166
  * @maxLength `5000`
202
167
  */
203
168
  BedrockGuardrailVersion?: string;
204
169
  };
205
170
  /**
206
- * The custom prompt used in the Bedrock model specification details.
207
171
  * @minLength `1`
208
172
  * @maxLength `5000`
209
173
  */
210
174
  BedrockModelCustomPrompt?: string;
211
- /**
212
- * The Bedrock trace status in the Bedrock model specification details.
213
- */
214
175
  BedrockTraceStatus?: "ENABLED" | "DISABLED";
215
176
  /**
216
- * The ARN of the foundation model used in descriptive bot building.
217
177
  * @minLength `1`
218
178
  * @maxLength `5000`
219
179
  */
@@ -221,31 +181,19 @@ export type BedrockModelSpecification = {
221
181
  };
222
182
  /**
223
183
  * Type definition for `AWS::Lex::Bot.BotAliasLocaleSettings`.
224
- * You can use this parameter to specify a specific Lambda function to run different functions in different locales.
225
184
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-botaliaslocalesettings.html}
226
185
  */
227
186
  export type BotAliasLocaleSettings = {
228
- /**
229
- * Contains information about code hooks that Amazon Lex calls during a conversation.
230
- */
231
187
  CodeHookSpecification?: CodeHookSpecification;
232
- /**
233
- * Whether the Lambda code hook is enabled
234
- */
235
188
  Enabled: boolean;
236
189
  };
237
190
  /**
238
191
  * Type definition for `AWS::Lex::Bot.BotAliasLocaleSettingsItem`.
239
- * A locale setting in alias
240
192
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-botaliaslocalesettingsitem.html}
241
193
  */
242
194
  export type BotAliasLocaleSettingsItem = {
243
- /**
244
- * You can use this parameter to specify a specific Lambda function to run different functions in different locales.
245
- */
246
195
  BotAliasLocaleSetting: BotAliasLocaleSettings;
247
196
  /**
248
- * A string used to identify the locale
249
197
  * @minLength `1`
250
198
  * @maxLength `128`
251
199
  */
@@ -253,13 +201,9 @@ export type BotAliasLocaleSettingsItem = {
253
201
  };
254
202
  /**
255
203
  * Type definition for `AWS::Lex::Bot.BotLocale`.
256
- * A locale in the bot, which contains the intents and slot types that the bot uses in conversations with users in the specified language and locale.
257
204
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-botlocale.html}
258
205
  */
259
206
  export type BotLocale = {
260
- /**
261
- * A custom vocabulary is a list of specific phrases that you want Amazon Lex V2 to recognize in the audio input.
262
- */
263
207
  CustomVocabulary?: CustomVocabulary;
264
208
  /**
265
209
  * A description of the resource
@@ -267,44 +211,32 @@ export type BotLocale = {
267
211
  */
268
212
  Description?: string;
269
213
  /**
270
- * List of intents
271
214
  * @maxLength `1000`
272
215
  */
273
216
  Intents?: Intent[];
274
- /**
275
- * The identifier of the language and locale that the bot will be used in.
276
- */
277
217
  LocaleId: string;
278
218
  /**
279
- * The specified confidence threshold for inserting the AMAZON.FallbackIntent, AMAZON.KendraSearchIntent intents and AMAZON.QnAIntent.
280
219
  * @min `0`
281
220
  * @max `1`
282
221
  */
283
222
  NluConfidenceThreshold: number;
284
223
  /**
285
- * List of SlotTypes
286
224
  * @maxLength `250`
287
225
  */
288
226
  SlotTypes?: SlotType[];
289
- /**
290
- * Settings for using an Amazon Polly voice to communicate with a user.
291
- */
292
227
  VoiceSettings?: VoiceSettings;
293
228
  };
294
229
  /**
295
230
  * Type definition for `AWS::Lex::Bot.Button`.
296
- * A button to use on a response card used to gather slot values from a user.
297
231
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-button.html}
298
232
  */
299
233
  export type Button = {
300
234
  /**
301
- * The text that appears on the button.
302
235
  * @minLength `1`
303
236
  * @maxLength `50`
304
237
  */
305
238
  Text: string;
306
239
  /**
307
- * The value returned to Amazon Lex when the user chooses this button.
308
240
  * @minLength `1`
309
241
  * @maxLength `50`
310
242
  */
@@ -316,13 +248,11 @@ export type Button = {
316
248
  */
317
249
  export type CloudWatchLogGroupLogDestination = {
318
250
  /**
319
- * A string used to identify the groupArn for the Cloudwatch Log Group
320
251
  * @minLength `1`
321
252
  * @maxLength `2048`
322
253
  */
323
254
  CloudWatchLogGroupArn: string;
324
255
  /**
325
- * A string containing the value for the Log Prefix
326
256
  * @minLength `0`
327
257
  * @maxLength `1024`
328
258
  */
@@ -330,23 +260,28 @@ export type CloudWatchLogGroupLogDestination = {
330
260
  };
331
261
  /**
332
262
  * Type definition for `AWS::Lex::Bot.CodeHookSpecification`.
333
- * Contains information about code hooks that Amazon Lex calls during a conversation.
334
263
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-codehookspecification.html}
335
264
  */
336
265
  export type CodeHookSpecification = {
266
+ LambdaCodeHook: LambdaCodeHook;
267
+ };
268
+ /**
269
+ * Type definition for `AWS::Lex::Bot.CompositeSlotTypeSetting`.
270
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-compositeslottypesetting.html}
271
+ */
272
+ export type CompositeSlotTypeSetting = {
337
273
  /**
338
- * Contains information about code hooks that Amazon Lex calls during a conversation.
274
+ * @minLength `1`
275
+ * @maxLength `6`
339
276
  */
340
- LambdaCodeHook: LambdaCodeHook;
277
+ SubSlots?: SubSlotTypeComposition[];
341
278
  };
342
279
  /**
343
280
  * Type definition for `AWS::Lex::Bot.Condition`.
344
- * Provides an expression that evaluates to true or false.
345
281
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-condition.html}
346
282
  */
347
283
  export type Condition = {
348
284
  /**
349
- * The expression string that is evaluated.
350
285
  * @minLength `1`
351
286
  * @maxLength `1024`
352
287
  */
@@ -354,76 +289,52 @@ export type Condition = {
354
289
  };
355
290
  /**
356
291
  * Type definition for `AWS::Lex::Bot.ConditionalBranch`.
357
- * A set of actions that Amazon Lex should run if the condition is matched.
358
292
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-conditionalbranch.html}
359
293
  */
360
294
  export type ConditionalBranch = {
361
- /**
362
- * Contains the expression to evaluate. If the condition is true, the branch's actions are taken.
363
- */
364
295
  Condition: Condition;
365
296
  /**
366
- * The name of the branch.
367
297
  * @minLength `1`
368
298
  * @maxLength `100`
369
299
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
370
300
  */
371
301
  Name: string;
372
- /**
373
- * The next step in the conversation.
374
- */
375
302
  NextStep: DialogState;
376
- /**
377
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
378
- */
379
303
  Response?: ResponseSpecification;
380
304
  };
381
305
  /**
382
306
  * Type definition for `AWS::Lex::Bot.ConditionalSpecification`.
383
- * Provides a list of conditional branches. Branches are evaluated in the order that they are entered in the list. The first branch with a condition that evaluates to true is executed. The last branch in the list is the default branch. The default branch should not have any condition expression. The default branch is executed if no other branch has a matching condition.
384
307
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-conditionalspecification.html}
385
308
  */
386
309
  export type ConditionalSpecification = {
387
310
  /**
388
- * A list of conditional branches. A conditional branch is made up of a condition, a response and a next step. The response and next step are executed when the condition is true.
389
311
  * @minLength `1`
390
312
  * @maxLength `4`
391
313
  */
392
314
  ConditionalBranches: ConditionalBranch[];
393
- /**
394
- * The conditional branch that should be followed when the conditions for other branches are not satisfied. A conditional branch is made up of a condition, a response and a next step.
395
- */
396
315
  DefaultBranch: DefaultConditionalBranch;
397
- /**
398
- * Determines whether a conditional branch is active. When active is false, the conditions are not evaluated.
399
- */
400
316
  IsActive: boolean;
401
317
  };
402
318
  /**
403
319
  * Type definition for `AWS::Lex::Bot.ConversationLogSettings`.
404
- * Contains information about code hooks that Amazon Lex calls during a conversation.
405
320
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-conversationlogsettings.html}
406
321
  */
407
322
  export type ConversationLogSettings = {
408
323
  /**
409
- * List of audio log settings that pertain to the conversation log settings for the bot's TestBotAlias.
410
324
  * @maxLength `1`
411
325
  */
412
326
  AudioLogSettings?: AudioLogSetting[];
413
327
  /**
414
- * List of text log settings that pertain to the conversation log settings for the bot's TestBotAlias
415
328
  * @maxLength `1`
416
329
  */
417
330
  TextLogSettings?: TextLogSetting[];
418
331
  };
419
332
  /**
420
333
  * Type definition for `AWS::Lex::Bot.CustomPayload`.
421
- * A message in a custom format defined by the client application.
422
334
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-custompayload.html}
423
335
  */
424
336
  export type CustomPayload = {
425
337
  /**
426
- * The string that is sent to your application.
427
338
  * @minLength `1`
428
339
  * @maxLength `1000`
429
340
  */
@@ -431,7 +342,6 @@ export type CustomPayload = {
431
342
  };
432
343
  /**
433
344
  * Type definition for `AWS::Lex::Bot.CustomVocabulary`.
434
- * A custom vocabulary is a list of specific phrases that you want Amazon Lex V2 to recognize in the audio input.
435
345
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-customvocabulary.html}
436
346
  */
437
347
  export type CustomVocabulary = {
@@ -442,24 +352,20 @@ export type CustomVocabulary = {
442
352
  };
443
353
  /**
444
354
  * Type definition for `AWS::Lex::Bot.CustomVocabularyItem`.
445
- * A custom vocabulary item that contains the phrase to recognize and a weight to give the boost.
446
355
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-customvocabularyitem.html}
447
356
  */
448
357
  export type CustomVocabularyItem = {
449
358
  /**
450
- * Defines how you want your phrase to look in your transcription output.
451
359
  * @minLength `1`
452
360
  * @maxLength `100`
453
361
  */
454
362
  DisplayAs?: string;
455
363
  /**
456
- * Phrase that should be recognized.
457
364
  * @minLength `1`
458
365
  * @maxLength `100`
459
366
  */
460
367
  Phrase: string;
461
368
  /**
462
- * The degree to which the phrase recognition is boosted. The weight 0 means that no boosting will be applied and the entry will only be used for performing replacements using the displayAs field.
463
369
  * @min `0`
464
370
  * @max `3`
465
371
  */
@@ -467,76 +373,48 @@ export type CustomVocabularyItem = {
467
373
  };
468
374
  /**
469
375
  * Type definition for `AWS::Lex::Bot.DefaultConditionalBranch`.
470
- * A set of actions that Amazon Lex should run if none of the other conditions are met.
471
376
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-defaultconditionalbranch.html}
472
377
  */
473
378
  export type DefaultConditionalBranch = {
474
- /**
475
- * The next step in the conversation.
476
- */
477
379
  NextStep?: DialogState;
478
- /**
479
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
480
- */
481
380
  Response?: ResponseSpecification;
482
381
  };
483
382
  /**
484
383
  * Type definition for `AWS::Lex::Bot.DialogAction`.
485
- * Defines the action that the bot executes at runtime when the conversation reaches this step.
486
384
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-dialogaction.html}
487
385
  */
488
386
  export type DialogAction = {
489
387
  /**
490
- * If the dialog action is ElicitSlot, defines the slot to elicit from the user.
491
388
  * @minLength `1`
492
389
  * @maxLength `100`
493
390
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
494
391
  */
495
392
  SlotToElicit?: string;
496
- /**
497
- * When true the next message for the intent is not used.
498
- */
499
393
  SuppressNextMessage?: boolean;
500
- /**
501
- * The action that the bot should execute.
502
- */
503
394
  Type: DialogActionType;
504
395
  };
505
396
  /**
506
397
  * Type definition for `AWS::Lex::Bot.DialogActionType`.
507
- * The possible values of actions that the conversation can take.
508
398
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-dialogactiontype.html}
509
399
  */
510
400
  export type DialogActionType = "CloseIntent" | "ConfirmIntent" | "ElicitIntent" | "ElicitSlot" | "StartIntent" | "FulfillIntent" | "EndConversation" | "EvaluateConditional" | "InvokeDialogCodeHook";
511
401
  /**
512
402
  * Type definition for `AWS::Lex::Bot.DialogCodeHookInvocationSetting`.
513
- * Settings that specify the dialog code hook that is called by Amazon Lex at a step of the conversation.
514
403
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-dialogcodehookinvocationsetting.html}
515
404
  */
516
405
  export type DialogCodeHookInvocationSetting = {
517
- /**
518
- * Indicates whether a Lambda function should be invoked for the dialog.
519
- */
520
406
  EnableCodeHookInvocation: boolean;
521
407
  /**
522
- * A label that indicates the dialog step from which the dialog code hook is happening.
523
408
  * @minLength `1`
524
409
  * @maxLength `100`
525
410
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
526
411
  */
527
412
  InvocationLabel?: string;
528
- /**
529
- * Determines whether a dialog code hook is used when the intent is activated.
530
- */
531
413
  IsActive: boolean;
532
- /**
533
- * Contains the responses and actions that Amazon Lex takes after the Lambda function is complete.
534
- */
535
414
  PostCodeHookSpecification: PostDialogCodeHookInvocationSpecification;
536
415
  };
537
416
  /**
538
417
  * Type definition for `AWS::Lex::Bot.DialogCodeHookSetting`.
539
- * Settings that determine the Lambda function that Amazon Lex uses for processing user responses.
540
418
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-dialogcodehooksetting.html}
541
419
  */
542
420
  export type DialogCodeHookSetting = {
@@ -544,46 +422,31 @@ export type DialogCodeHookSetting = {
544
422
  };
545
423
  /**
546
424
  * Type definition for `AWS::Lex::Bot.DialogState`.
547
- * The current state of the conversation with the user.
548
425
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-dialogstate.html}
549
426
  */
550
427
  export type DialogState = {
551
- /**
552
- * Defines the action that the bot executes at runtime when the conversation reaches this step.
553
- */
554
428
  DialogAction?: DialogAction;
555
- /**
556
- * Override settings to configure the intent state.
557
- */
558
429
  Intent?: IntentOverride;
559
- /**
560
- * List of session attributes to be applied when the conversation reaches this step.
561
- */
562
430
  SessionAttributes?: SessionAttribute[];
563
431
  };
564
432
  /**
565
433
  * Type definition for `AWS::Lex::Bot.DTMFSpecification`.
566
- * Specifies the settings on DTMF input.
567
434
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-dtmfspecification.html}
568
435
  */
569
436
  export type DTMFSpecification = {
570
437
  /**
571
- * The DTMF character that clears the accumulated DTMF digits and immediately ends the input.
572
438
  * @pattern `^[A-D0-9#*]{1}$`
573
439
  */
574
440
  DeletionCharacter: string;
575
441
  /**
576
- * The DTMF character that immediately ends input. If the user does not press this character, the input ends after the end timeout.
577
442
  * @pattern `^[A-D0-9#*]{1}$`
578
443
  */
579
444
  EndCharacter: string;
580
445
  /**
581
- * How long the bot should wait after the last DTMF character input before assuming that the input has concluded.
582
446
  * @min `1`
583
447
  */
584
448
  EndTimeoutMs: number;
585
449
  /**
586
- * The maximum number of DTMF digits allowed in an utterance.
587
450
  * @min `1`
588
451
  * @max `1024`
589
452
  */
@@ -591,16 +454,11 @@ export type DTMFSpecification = {
591
454
  };
592
455
  /**
593
456
  * Type definition for `AWS::Lex::Bot.ElicitationCodeHookInvocationSetting`.
594
- * Settings that specify the dialog code hook that is called by Amazon Lex between eliciting slot values.
595
457
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-elicitationcodehookinvocationsetting.html}
596
458
  */
597
459
  export type ElicitationCodeHookInvocationSetting = {
598
- /**
599
- * Indicates whether a Lambda function should be invoked for the dialog.
600
- */
601
460
  EnableCodeHookInvocation: boolean;
602
461
  /**
603
- * A label that indicates the dialog step from which the dialog code hook is happening.
604
462
  * @minLength `1`
605
463
  * @maxLength `100`
606
464
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
@@ -609,53 +467,33 @@ export type ElicitationCodeHookInvocationSetting = {
609
467
  };
610
468
  /**
611
469
  * Type definition for `AWS::Lex::Bot.ExternalSourceSetting`.
612
- * Provides information about the external source of the slot type's definition.
613
470
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-externalsourcesetting.html}
614
471
  */
615
472
  export type ExternalSourceSetting = {
616
- /**
617
- * Settings required for a slot type based on a grammar that you provide.
618
- */
619
473
  GrammarSlotTypeSetting?: GrammarSlotTypeSetting;
620
474
  };
621
475
  /**
622
476
  * Type definition for `AWS::Lex::Bot.FulfillmentCodeHookSetting`.
623
- * Settings that determine if a Lambda function should be invoked to fulfill a specific intent.
624
477
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-fulfillmentcodehooksetting.html}
625
478
  */
626
479
  export type FulfillmentCodeHookSetting = {
627
480
  Enabled: boolean;
628
- /**
629
- * Provides information for updating the user on the progress of fulfilling an intent.
630
- */
631
481
  FulfillmentUpdatesSpecification?: FulfillmentUpdatesSpecification;
632
- /**
633
- * Determines whether the fulfillment code hook is used. When active is false, the code hook doesn't run.
634
- */
635
482
  IsActive?: boolean;
636
- /**
637
- * Provides a setting that determines whether the post-fulfillment response is sent to the user.
638
- */
639
483
  PostFulfillmentStatusSpecification?: PostFulfillmentStatusSpecification;
640
484
  };
641
485
  /**
642
486
  * Type definition for `AWS::Lex::Bot.FulfillmentStartResponseSpecification`.
643
- * Provides settings for a message that is sent to the user when a fulfillment Lambda function starts running.
644
487
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-fulfillmentstartresponsespecification.html}
645
488
  */
646
489
  export type FulfillmentStartResponseSpecification = {
647
- /**
648
- * Determines whether the user can interrupt the start message while it is playing.
649
- */
650
490
  AllowInterrupt?: boolean;
651
491
  /**
652
- * The delay between when the Lambda fulfillment function starts running and the start message is played. If the Lambda function returns before the delay is over, the start message isn't played.
653
492
  * @min `1`
654
493
  * @max `900`
655
494
  */
656
495
  DelayInSeconds: number;
657
496
  /**
658
- * One to 5 message groups that contain update messages. Amazon Lex chooses one of the messages to play to the user.
659
497
  * @minLength `1`
660
498
  * @maxLength `5`
661
499
  */
@@ -663,22 +501,16 @@ export type FulfillmentStartResponseSpecification = {
663
501
  };
664
502
  /**
665
503
  * Type definition for `AWS::Lex::Bot.FulfillmentUpdateResponseSpecification`.
666
- * Provides settings for a message that is sent periodically to the user while a fulfillment Lambda function is running.
667
504
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-fulfillmentupdateresponsespecification.html}
668
505
  */
669
506
  export type FulfillmentUpdateResponseSpecification = {
670
- /**
671
- * Determines whether the user can interrupt an update message while it is playing.
672
- */
673
507
  AllowInterrupt?: boolean;
674
508
  /**
675
- * The frequency that a message is sent to the user. When the period ends, Amazon Lex chooses a message from the message groups and plays it to the user. If the fulfillment Lambda returns before the first period ends, an update message is not played to the user.
676
509
  * @min `1`
677
510
  * @max `900`
678
511
  */
679
512
  FrequencyInSeconds: number;
680
513
  /**
681
- * One to 5 message groups that contain update messages. Amazon Lex chooses one of the messages to play to the user.
682
514
  * @minLength `1`
683
515
  * @maxLength `5`
684
516
  */
@@ -686,62 +518,43 @@ export type FulfillmentUpdateResponseSpecification = {
686
518
  };
687
519
  /**
688
520
  * Type definition for `AWS::Lex::Bot.FulfillmentUpdatesSpecification`.
689
- * Provides information for updating the user on the progress of fulfilling an intent.
690
521
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-fulfillmentupdatesspecification.html}
691
522
  */
692
523
  export type FulfillmentUpdatesSpecification = {
693
- /**
694
- * Determines whether fulfillment updates are sent to the user. When this field is true, updates are sent.
695
- */
696
524
  Active: boolean;
697
- /**
698
- * Provides settings for a message that is sent to the user when a fulfillment Lambda function starts running.
699
- */
700
525
  StartResponse?: FulfillmentStartResponseSpecification;
701
526
  /**
702
- * The length of time that the fulfillment Lambda function should run before it times out.
703
527
  * @min `1`
704
528
  * @max `900`
705
529
  */
706
530
  TimeoutInSeconds?: number;
707
- /**
708
- * Provides settings for a message that is sent periodically to the user while a fulfillment Lambda function is running.
709
- */
710
531
  UpdateResponse?: FulfillmentUpdateResponseSpecification;
711
532
  };
712
533
  /**
713
534
  * Type definition for `AWS::Lex::Bot.GrammarSlotTypeSetting`.
714
- * Settings required for a slot type based on a grammar that you provide.
715
535
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-grammarslottypesetting.html}
716
536
  */
717
537
  export type GrammarSlotTypeSetting = {
718
- /**
719
- * Describes the Amazon S3 bucket name and location for the grammar that is the source for the slot type.
720
- */
721
538
  Source?: GrammarSlotTypeSource;
722
539
  };
723
540
  /**
724
541
  * Type definition for `AWS::Lex::Bot.GrammarSlotTypeSource`.
725
- * Describes the Amazon S3 bucket name and location for the grammar that is the source for the slot type.
726
542
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-grammarslottypesource.html}
727
543
  */
728
544
  export type GrammarSlotTypeSource = {
729
545
  /**
730
- * The Amazon KMS key required to decrypt the contents of the grammar, if any.
731
546
  * @minLength `20`
732
547
  * @maxLength `2048`
733
548
  * @pattern `^arn:[\w\-]+:kms:[\w\-]+:[\d]{12}:(?:key\/[\w\-]+|alias\/[a-zA-Z0-9:\/_\-]{1,256})$`
734
549
  */
735
550
  KmsKeyArn?: string;
736
551
  /**
737
- * The name of the S3 bucket that contains the grammar source.
738
552
  * @minLength `3`
739
553
  * @maxLength `63`
740
554
  * @pattern `^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`
741
555
  */
742
556
  S3BucketName: string;
743
557
  /**
744
- * The path to the grammar in the S3 bucket.
745
558
  * @minLength `1`
746
559
  * @maxLength `1024`
747
560
  * @pattern `[\.\-\!\*\_\'\(\)a-zA-Z0-9][\.\-\!\*\_\'\(\)\/a-zA-Z0-9]*$`
@@ -750,29 +563,24 @@ export type GrammarSlotTypeSource = {
750
563
  };
751
564
  /**
752
565
  * Type definition for `AWS::Lex::Bot.ImageResponseCard`.
753
- * A message that defines a response card that the client application can show to the user.
754
566
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-imageresponsecard.html}
755
567
  */
756
568
  export type ImageResponseCard = {
757
569
  /**
758
- * A list of buttons that should be displayed on the response card.
759
570
  * @maxLength `5`
760
571
  */
761
572
  Buttons?: Button[];
762
573
  /**
763
- * The URL of an image to display on the response card.
764
574
  * @minLength `1`
765
575
  * @maxLength `250`
766
576
  */
767
577
  ImageUrl?: string;
768
578
  /**
769
- * The subtitle to display on the response card.
770
579
  * @minLength `1`
771
580
  * @maxLength `250`
772
581
  */
773
582
  Subtitle?: string;
774
583
  /**
775
- * The title to display on the response card.
776
584
  * @minLength `1`
777
585
  * @maxLength `250`
778
586
  */
@@ -780,35 +588,20 @@ export type ImageResponseCard = {
780
588
  };
781
589
  /**
782
590
  * Type definition for `AWS::Lex::Bot.InitialResponseSetting`.
783
- * Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.
784
591
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-initialresponsesetting.html}
785
592
  */
786
593
  export type InitialResponseSetting = {
787
- /**
788
- * Settings that specify the dialog code hook that is called by Amazon Lex at a step of the conversation.
789
- */
790
594
  CodeHook?: DialogCodeHookInvocationSetting;
791
- /**
792
- * Provides a list of conditional branches. Branches are evaluated in the order that they are entered in the list. The first branch with a condition that evaluates to true is executed. The last branch in the list is the default branch. The default branch should not have any condition expression. The default branch is executed if no other branch has a matching condition.
793
- */
794
595
  Conditional?: ConditionalSpecification;
795
- /**
796
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
797
- */
798
596
  InitialResponse?: ResponseSpecification;
799
- /**
800
- * The next step in the conversation.
801
- */
802
597
  NextStep?: DialogState;
803
598
  };
804
599
  /**
805
600
  * Type definition for `AWS::Lex::Bot.InputContext`.
806
- * InputContext specified for the intent.
807
601
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-inputcontext.html}
808
602
  */
809
603
  export type InputContext = {
810
604
  /**
811
- * The name of the context.
812
605
  * @minLength `1`
813
606
  * @maxLength `100`
814
607
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
@@ -817,216 +610,116 @@ export type InputContext = {
817
610
  };
818
611
  /**
819
612
  * Type definition for `AWS::Lex::Bot.Intent`.
820
- * Represents an action that the user wants to perform.
821
613
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-intent.html}
822
614
  */
823
615
  export type Intent = {
616
+ BedrockAgentIntentConfiguration?: BedrockAgentIntentConfiguration;
824
617
  /**
825
618
  * Description of thr intent.
826
619
  * @maxLength `200`
827
620
  */
828
621
  Description?: string;
829
- /**
830
- * Settings that determine the Lambda function that Amazon Lex uses for processing user responses.
831
- */
832
622
  DialogCodeHook?: DialogCodeHookSetting;
833
- /**
834
- * Settings that determine if a Lambda function should be invoked to fulfill a specific intent.
835
- */
836
623
  FulfillmentCodeHook?: FulfillmentCodeHookSetting;
837
- /**
838
- * Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.
839
- */
840
624
  InitialResponseSetting?: InitialResponseSetting;
841
625
  /**
842
- * The list of input contexts specified for the intent.
843
626
  * @maxLength `5`
844
627
  */
845
628
  InputContexts?: InputContext[];
846
- /**
847
- * Provides a statement the Amazon Lex conveys to the user when the intent is successfully fulfilled.
848
- */
849
629
  IntentClosingSetting?: IntentClosingSetting;
850
- /**
851
- * Provides a prompt for making sure that the user is ready for the intent to be fulfilled.
852
- */
853
630
  IntentConfirmationSetting?: IntentConfirmationSetting;
854
- /**
855
- * Configuration for searching a Amazon Kendra index specified for the intent.
856
- */
857
631
  KendraConfiguration?: KendraConfiguration;
858
632
  /**
859
- * The name of the intent.
860
633
  * @minLength `1`
861
634
  * @maxLength `100`
862
635
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
863
636
  */
864
637
  Name: string;
865
638
  /**
866
- * A list of contexts that the intent activates when it is fulfilled.
867
639
  * @maxLength `10`
868
640
  */
869
641
  OutputContexts?: OutputContext[];
870
- /**
871
- * A unique identifier for the built-in intent to base this intent on.
872
- */
873
642
  ParentIntentSignature?: string;
874
- /**
875
- * Details about the the configuration of the built-in Amazon.QnAIntent.
876
- */
643
+ QInConnectIntentConfiguration?: QInConnectIntentConfiguration;
877
644
  QnAIntentConfiguration?: QnAIntentConfiguration;
878
- /**
879
- * A sample utterance that invokes an intent or respond to a slot elicitation prompt.
880
- */
881
645
  SampleUtterances?: SampleUtterance[];
882
- /**
883
- * List for slot priorities
884
- */
885
646
  SlotPriorities?: SlotPriority[];
886
647
  /**
887
- * List of slots
888
648
  * @maxLength `100`
889
649
  */
890
650
  Slots?: Slot[];
891
651
  };
892
652
  /**
893
653
  * Type definition for `AWS::Lex::Bot.IntentClosingSetting`.
894
- * Provides a statement the Amazon Lex conveys to the user when the intent is successfully fulfilled.
895
654
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-intentclosingsetting.html}
896
655
  */
897
656
  export type IntentClosingSetting = {
898
- /**
899
- * The response that Amazon Lex sends to the user when the intent is complete.
900
- */
901
657
  ClosingResponse?: ResponseSpecification;
902
- /**
903
- * A list of conditional branches associated with the intent's closing response. These branches are executed when the nextStep attribute is set to EvalutateConditional.
904
- */
905
658
  Conditional?: ConditionalSpecification;
906
- /**
907
- * Specifies whether an intent's closing response is used. When this field is false, the closing response isn't sent to the user. If the active field isn't specified, the default is true.
908
- */
909
659
  IsActive?: boolean;
910
- /**
911
- * Specifies the next step that the bot executes after playing the intent's closing response.
912
- */
913
660
  NextStep?: DialogState;
914
661
  };
915
662
  /**
916
663
  * Type definition for `AWS::Lex::Bot.IntentConfirmationSetting`.
917
- * Provides a prompt for making sure that the user is ready for the intent to be fulfilled.
918
664
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-intentconfirmationsetting.html}
919
665
  */
920
666
  export type IntentConfirmationSetting = {
921
- /**
922
- * The DialogCodeHookInvocationSetting object associated with intent's confirmation step. The dialog code hook is triggered based on these invocation settings when the confirmation next step or declination next step or failure next step is InvokeDialogCodeHook.
923
- */
924
667
  CodeHook?: DialogCodeHookInvocationSetting;
925
- /**
926
- * A list of conditional branches to evaluate after the intent is closed.
927
- */
928
668
  ConfirmationConditional?: ConditionalSpecification;
929
- /**
930
- * Specifies the next step that the bot executes when the customer confirms the intent.
931
- */
932
669
  ConfirmationNextStep?: DialogState;
933
- /**
934
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
935
- */
936
670
  ConfirmationResponse?: ResponseSpecification;
937
- /**
938
- * A list of conditional branches to evaluate after the intent is declined.
939
- */
940
671
  DeclinationConditional?: ConditionalSpecification;
941
- /**
942
- * Specifies the next step that the bot executes when the customer declines the intent.
943
- */
944
672
  DeclinationNextStep?: DialogState;
945
- /**
946
- * When the user answers "no" to the question defined in promptSpecification, Amazon Lex responds with this response to acknowledge that the intent was canceled.
947
- */
948
673
  DeclinationResponse?: ResponseSpecification;
949
- /**
950
- * The DialogCodeHookInvocationSetting used when the code hook is invoked during confirmation prompt retries.
951
- */
952
674
  ElicitationCodeHook?: ElicitationCodeHookInvocationSetting;
953
- /**
954
- * Provides a list of conditional branches. Branches are evaluated in the order that they are entered in the list. The first branch with a condition that evaluates to true is executed. The last branch in the list is the default branch. The default branch should not have any condition expression. The default branch is executed if no other branch has a matching condition.
955
- */
956
675
  FailureConditional?: ConditionalSpecification;
957
- /**
958
- * The next step to take in the conversation if the confirmation step fails.
959
- */
960
676
  FailureNextStep?: DialogState;
961
- /**
962
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
963
- */
964
677
  FailureResponse?: ResponseSpecification;
965
- /**
966
- * Specifies whether the intent's confirmation is sent to the user. When this field is false, confirmation and declination responses aren't sent. If the active field isn't specified, the default is true.
967
- */
968
678
  IsActive?: boolean;
969
- /**
970
- * Prompts the user to confirm the intent. This question should have a yes or no answer.
971
- */
972
679
  PromptSpecification: PromptSpecification;
973
680
  };
974
681
  /**
975
682
  * Type definition for `AWS::Lex::Bot.IntentOverride`.
976
- * Override settings to configure the intent state.
977
683
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-intentoverride.html}
978
684
  */
979
685
  export type IntentOverride = {
980
686
  /**
981
- * The name of the intent. Only required when you're switching intents.
982
687
  * @minLength `1`
983
688
  * @maxLength `100`
984
689
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
985
690
  */
986
691
  Name?: string;
987
- /**
988
- * A map of all of the slot value overrides for the intent.
989
- */
990
692
  Slots?: SlotValueOverrideMap[];
991
693
  };
992
694
  /**
993
695
  * Type definition for `AWS::Lex::Bot.KendraConfiguration`.
994
- * Configuration for searching a Amazon Kendra index specified for the intent.
995
696
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-kendraconfiguration.html}
996
697
  */
997
698
  export type KendraConfiguration = {
998
699
  /**
999
- * The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the AMAZON.KendraSearchIntent intent to search.
1000
700
  * @minLength `32`
1001
701
  * @maxLength `2048`
1002
702
  * @pattern `^arn:aws[a-zA-Z-]*:kendra:[a-z]+-[a-z]+-[0-9]:[0-9]{12}:index/[a-zA-Z0-9][a-zA-Z0-9_-]*$`
1003
703
  */
1004
704
  KendraIndex: string;
1005
705
  /**
1006
- * A query filter that Amazon Lex sends to Amazon Kendra to filter the response from a query.
1007
706
  * @minLength `1`
1008
707
  * @maxLength `5000`
1009
708
  */
1010
709
  QueryFilterString?: string;
1011
- /**
1012
- * Determines whether the AMAZON.KendraSearchIntent intent uses a custom query string to query the Amazon Kendra index.
1013
- */
1014
710
  QueryFilterStringEnabled?: boolean;
1015
711
  };
1016
712
  /**
1017
713
  * Type definition for `AWS::Lex::Bot.LambdaCodeHook`.
1018
- * Contains information about code hooks that Amazon Lex calls during a conversation.
1019
714
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-lambdacodehook.html}
1020
715
  */
1021
716
  export type LambdaCodeHook = {
1022
717
  /**
1023
- * The version of the request-response that you want Amazon Lex to use to invoke your Lambda function.
1024
718
  * @minLength `1`
1025
719
  * @maxLength `5`
1026
720
  */
1027
721
  CodeHookInterfaceVersion: string;
1028
722
  /**
1029
- * The Amazon Resource Name (ARN) of the Lambda function.
1030
723
  * @minLength `20`
1031
724
  * @maxLength `2048`
1032
725
  */
@@ -1034,52 +727,32 @@ export type LambdaCodeHook = {
1034
727
  };
1035
728
  /**
1036
729
  * Type definition for `AWS::Lex::Bot.Message`.
1037
- * The primary message that Amazon Lex should send to the user.
1038
730
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-message.html}
1039
731
  */
1040
732
  export type Message = {
1041
- /**
1042
- * A message in a custom format defined by the client application.
1043
- */
1044
733
  CustomPayload?: CustomPayload;
1045
- /**
1046
- * A message that defines a response card that the client application can show to the user.
1047
- */
1048
734
  ImageResponseCard?: ImageResponseCard;
1049
- /**
1050
- * A message in plain text format.
1051
- */
1052
735
  PlainTextMessage?: PlainTextMessage;
1053
- /**
1054
- * A message in Speech Synthesis Markup Language (SSML).
1055
- */
1056
736
  SSMLMessage?: SSMLMessage;
1057
737
  };
1058
738
  /**
1059
739
  * Type definition for `AWS::Lex::Bot.MessageGroup`.
1060
- * One or more messages that Amazon Lex can send to the user.
1061
740
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-messagegroup.html}
1062
741
  */
1063
742
  export type MessageGroup = {
1064
- /**
1065
- * The primary message that Amazon Lex should send to the user.
1066
- */
1067
743
  Message: Message;
1068
744
  /**
1069
- * Message variations to send to the user.
1070
745
  * @maxLength `2`
1071
746
  */
1072
747
  Variations?: Message[];
1073
748
  };
1074
749
  /**
1075
750
  * Type definition for `AWS::Lex::Bot.MessageSelectionStrategy`.
1076
- * Indicates how a message is selected from a message group among retries.
1077
751
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-messageselectionstrategy.html}
1078
752
  */
1079
753
  export type MessageSelectionStrategy = "Random" | "Ordered";
1080
754
  /**
1081
755
  * Type definition for `AWS::Lex::Bot.MultipleValuesSetting`.
1082
- * Indicates whether a slot can return multiple values.
1083
756
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-multiplevaluessetting.html}
1084
757
  */
1085
758
  export type MultipleValuesSetting = {
@@ -1087,36 +760,28 @@ export type MultipleValuesSetting = {
1087
760
  };
1088
761
  /**
1089
762
  * Type definition for `AWS::Lex::Bot.ObfuscationSetting`.
1090
- * Determines whether Amazon Lex obscures slot values in conversation logs.
1091
763
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-obfuscationsetting.html}
1092
764
  */
1093
765
  export type ObfuscationSetting = {
1094
- /**
1095
- * Value that determines whether Amazon Lex obscures slot values in conversation logs. The default is to obscure the values.
1096
- */
1097
766
  ObfuscationSettingType: "None" | "DefaultObfuscation";
1098
767
  };
1099
768
  /**
1100
769
  * Type definition for `AWS::Lex::Bot.OutputContext`.
1101
- * A session context that is activated when an intent is fulfilled.
1102
770
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-outputcontext.html}
1103
771
  */
1104
772
  export type OutputContext = {
1105
773
  /**
1106
- * Unique name for a resource.
1107
774
  * @minLength `1`
1108
775
  * @maxLength `100`
1109
776
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
1110
777
  */
1111
778
  Name: string;
1112
779
  /**
1113
- * The amount of time, in seconds, that the output context should remain active.
1114
780
  * @min `5`
1115
781
  * @max `86400`
1116
782
  */
1117
783
  TimeToLiveInSeconds: number;
1118
784
  /**
1119
- * The number of conversation turns that the output context should remain active.
1120
785
  * @min `1`
1121
786
  * @max `20`
1122
787
  */
@@ -1124,12 +789,10 @@ export type OutputContext = {
1124
789
  };
1125
790
  /**
1126
791
  * Type definition for `AWS::Lex::Bot.PlainTextMessage`.
1127
- * A message in plain text format.
1128
792
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-plaintextmessage.html}
1129
793
  */
1130
794
  export type PlainTextMessage = {
1131
795
  /**
1132
- * The message to send to the user.
1133
796
  * @minLength `1`
1134
797
  * @maxLength `1000`
1135
798
  */
@@ -1137,225 +800,121 @@ export type PlainTextMessage = {
1137
800
  };
1138
801
  /**
1139
802
  * Type definition for `AWS::Lex::Bot.PostDialogCodeHookInvocationSpecification`.
1140
- * Specifies next steps to run after the dialog code hook finishes.
1141
803
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-postdialogcodehookinvocationspecification.html}
1142
804
  */
1143
805
  export type PostDialogCodeHookInvocationSpecification = {
1144
- /**
1145
- * A list of conditional branches to evaluate after the dialog code hook throws an exception or returns with the State field of the Intent object set to Failed.
1146
- */
1147
806
  FailureConditional?: ConditionalSpecification;
1148
- /**
1149
- * Specifies the next step the bot runs after the dialog code hook throws an exception or returns with the State field of the Intent object set to Failed.
1150
- */
1151
807
  FailureNextStep?: DialogState;
1152
- /**
1153
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
1154
- */
1155
808
  FailureResponse?: ResponseSpecification;
1156
- /**
1157
- * A list of conditional branches to evaluate after the dialog code hook finishes successfully.
1158
- */
1159
809
  SuccessConditional?: ConditionalSpecification;
1160
- /**
1161
- * Specifics the next step the bot runs after the dialog code hook finishes successfully.
1162
- */
1163
810
  SuccessNextStep?: DialogState;
1164
- /**
1165
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
1166
- */
1167
811
  SuccessResponse?: ResponseSpecification;
1168
- /**
1169
- * A list of conditional branches to evaluate if the code hook times out.
1170
- */
1171
812
  TimeoutConditional?: ConditionalSpecification;
1172
- /**
1173
- * Specifies the next step that the bot runs when the code hook times out.
1174
- */
1175
813
  TimeoutNextStep?: DialogState;
1176
- /**
1177
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
1178
- */
1179
814
  TimeoutResponse?: ResponseSpecification;
1180
815
  };
1181
816
  /**
1182
817
  * Type definition for `AWS::Lex::Bot.PostFulfillmentStatusSpecification`.
1183
- * Provides a setting that determines whether the post-fulfillment response is sent to the user.
1184
818
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-postfulfillmentstatusspecification.html}
1185
819
  */
1186
820
  export type PostFulfillmentStatusSpecification = {
1187
- /**
1188
- * A list of conditional branches to evaluate after the fulfillment code hook throws an exception or returns with the State field of the Intent object set to Failed.
1189
- */
1190
821
  FailureConditional?: ConditionalSpecification;
1191
- /**
1192
- * Specifies the next step the bot runs after the fulfillment code hook throws an exception or returns with the State field of the Intent object set to Failed.
1193
- */
1194
822
  FailureNextStep?: DialogState;
1195
- /**
1196
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
1197
- */
1198
823
  FailureResponse?: ResponseSpecification;
1199
- /**
1200
- * A list of conditional branches to evaluate after the fulfillment code hook finishes successfully.
1201
- */
1202
824
  SuccessConditional?: ConditionalSpecification;
1203
- /**
1204
- * Specifies the next step in the conversation that Amazon Lex invokes when the fulfillment code hook completes successfully.
1205
- */
1206
825
  SuccessNextStep?: DialogState;
1207
- /**
1208
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
1209
- */
1210
826
  SuccessResponse?: ResponseSpecification;
1211
- /**
1212
- * A list of conditional branches to evaluate if the fulfillment code hook times out.
1213
- */
1214
827
  TimeoutConditional?: ConditionalSpecification;
1215
- /**
1216
- * Specifies the next step that the bot runs when the fulfillment code hook times out.
1217
- */
1218
828
  TimeoutNextStep?: DialogState;
1219
- /**
1220
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
1221
- */
1222
829
  TimeoutResponse?: ResponseSpecification;
1223
830
  };
1224
831
  /**
1225
832
  * Type definition for `AWS::Lex::Bot.PromptAttemptSpecification`.
1226
- * Specifies the settings on a prompt attempt.
1227
833
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-promptattemptspecification.html}
1228
834
  */
1229
835
  export type PromptAttemptSpecification = {
1230
- /**
1231
- * Indicates whether the user can interrupt a speech prompt attempt from the bot.
1232
- */
1233
836
  AllowInterrupt?: boolean;
1234
- /**
1235
- * Specifies the allowed input types.
1236
- */
1237
837
  AllowedInputTypes: AllowedInputTypes;
1238
- /**
1239
- * Specifies the audio and DTMF input specification.
1240
- */
1241
838
  AudioAndDTMFInputSpecification?: AudioAndDTMFInputSpecification;
1242
- /**
1243
- * Specifies the text input specifications.
1244
- */
1245
839
  TextInputSpecification?: TextInputSpecification;
1246
840
  };
1247
841
  /**
1248
842
  * Type definition for `AWS::Lex::Bot.PromptSpecification`.
1249
- * Prompts the user to confirm the intent.
1250
843
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-promptspecification.html}
1251
844
  */
1252
845
  export type PromptSpecification = {
1253
- /**
1254
- * Indicates whether the user can interrupt a speech prompt from the bot.
1255
- */
1256
846
  AllowInterrupt?: boolean;
1257
847
  /**
1258
- * The maximum number of times the bot tries to elicit a response from the user using this prompt.
1259
848
  * @min `0`
1260
849
  * @max `5`
1261
850
  */
1262
851
  MaxRetries: number;
1263
852
  /**
1264
- * One to 5 message groups that contain update messages. Amazon Lex chooses one of the messages to play to the user.
1265
853
  * @minLength `1`
1266
854
  * @maxLength `5`
1267
855
  */
1268
856
  MessageGroupsList: MessageGroup[];
1269
- /**
1270
- * Indicates how a message is selected from a message group among retries.
1271
- */
1272
857
  MessageSelectionStrategy?: MessageSelectionStrategy;
1273
- /**
1274
- * Specifies the advanced settings on each attempt of the prompt.
1275
- */
1276
858
  PromptAttemptsSpecification?: Record<string, PromptAttemptSpecification>;
1277
859
  };
860
+ /**
861
+ * Type definition for `AWS::Lex::Bot.QInConnectIntentConfiguration`.
862
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-qinconnectintentconfiguration.html}
863
+ */
864
+ export type QInConnectIntentConfiguration = {
865
+ QInConnectAssistantConfiguration?: {
866
+ /**
867
+ * @minLength `1`
868
+ * @maxLength `200`
869
+ * @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}$`
870
+ */
871
+ AssistantArn: string;
872
+ };
873
+ };
1278
874
  /**
1279
875
  * Type definition for `AWS::Lex::Bot.QnAIntentConfiguration`.
1280
- * Details about the the configuration of the built-in Amazon.QnAIntent.
1281
876
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-qnaintentconfiguration.html}
1282
877
  */
1283
878
  export type QnAIntentConfiguration = {
1284
- /**
1285
- * Contains information about the Amazon Bedrock model used to interpret the prompt used in descriptive bot building.
1286
- */
1287
879
  BedrockModelConfiguration: BedrockModelSpecification;
1288
- /**
1289
- * Contains details about the configuration of the data source used for the AMAZON.QnAIntent.
1290
- */
1291
880
  DataSourceConfiguration: {
1292
- /**
1293
- * Contains details about the configuration of a Amazon Bedrock knowledge base.
1294
- */
1295
881
  BedrockKnowledgeStoreConfiguration?: {
1296
- /**
1297
- * Contains the names of the fields used for an exact response to the user.
1298
- */
1299
882
  BKBExactResponseFields?: {
1300
883
  /**
1301
- * The answer field used for an exact response from Bedrock Knowledge Store.
1302
884
  * @minLength `1`
1303
885
  * @maxLength `5000`
1304
886
  */
1305
887
  AnswerField?: string;
1306
888
  };
1307
889
  /**
1308
- * The base ARN of the knowledge base used.
1309
890
  * @minLength `1`
1310
891
  * @maxLength `5000`
1311
892
  */
1312
893
  BedrockKnowledgeBaseArn?: string;
1313
- /**
1314
- * Specifies whether to return an exact response, or to return an answer generated by the model, using the fields you specify from the database.
1315
- */
1316
894
  ExactResponse?: boolean;
1317
895
  };
1318
- /**
1319
- * Contains details about the configuration of the Amazon Kendra index used for the AMAZON.QnAIntent.
1320
- */
1321
896
  KendraConfiguration?: QnAKendraConfiguration;
1322
- /**
1323
- * Contains details about the configuration of the Amazon OpenSearch Service database used for the AMAZON.QnAIntent.
1324
- */
1325
897
  OpensearchConfiguration?: {
1326
898
  /**
1327
- * The endpoint of the Amazon OpenSearch Service domain.
1328
899
  * @minLength `1`
1329
900
  * @maxLength `5000`
1330
901
  */
1331
902
  DomainEndpoint?: string;
1332
- /**
1333
- * Specifies whether to return an exact response or to return an answer generated by the model using the fields you specify from the database.
1334
- */
1335
903
  ExactResponse?: boolean;
1336
- /**
1337
- * Contains the names of the fields used for an exact response to the user.
1338
- */
1339
904
  ExactResponseFields?: {
1340
905
  /**
1341
- * The name of the field that contains the answer to the query made to the OpenSearch Service database.
1342
906
  * @minLength `1`
1343
907
  * @maxLength `5000`
1344
908
  */
1345
909
  AnswerField?: string;
1346
910
  /**
1347
- * The name of the field that contains the query made to the OpenSearch Service database.
1348
911
  * @minLength `1`
1349
912
  * @maxLength `5000`
1350
913
  */
1351
914
  QuestionField?: string;
1352
915
  };
1353
- /**
1354
- * List of fields to include
1355
- */
1356
916
  IncludeFields?: string[];
1357
917
  /**
1358
- * The name of the Amazon OpenSearch Service index.
1359
918
  * @minLength `1`
1360
919
  * @maxLength `5000`
1361
920
  */
@@ -1365,39 +924,28 @@ export type QnAIntentConfiguration = {
1365
924
  };
1366
925
  /**
1367
926
  * Type definition for `AWS::Lex::Bot.QnAKendraConfiguration`.
1368
- * Contains details about the configuration of the Amazon Kendra index used for the AMAZON.QnAIntent.
1369
927
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-qnakendraconfiguration.html}
1370
928
  */
1371
929
  export type QnAKendraConfiguration = {
1372
- /**
1373
- * Specifies whether to return an exact response from the Amazon Kendra index or to let the Amazon Bedrock model you select generate a response based on the results.
1374
- */
1375
930
  ExactResponse: boolean;
1376
931
  /**
1377
- * The ARN of the Amazon Kendra index to use.
1378
932
  * @minLength `1`
1379
933
  * @maxLength `5000`
1380
934
  */
1381
935
  KendraIndex: string;
1382
936
  /**
1383
- * Contains the Amazon Kendra filter string to use if enabled.
1384
937
  * @minLength `1`
1385
938
  * @maxLength `5000`
1386
939
  */
1387
940
  QueryFilterString?: string;
1388
- /**
1389
- * Specifies whether to enable an Amazon Kendra filter string or not.
1390
- */
1391
941
  QueryFilterStringEnabled: boolean;
1392
942
  };
1393
943
  /**
1394
944
  * Type definition for `AWS::Lex::Bot.Replication`.
1395
- * Parameter used to create a replication of the source bot in the secondary region.
1396
945
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-replication.html}
1397
946
  */
1398
947
  export type Replication = {
1399
948
  /**
1400
- * List of secondary regions for bot replication.
1401
949
  * @minLength `1`
1402
950
  * @maxLength `1`
1403
951
  */
@@ -1405,16 +953,11 @@ export type Replication = {
1405
953
  };
1406
954
  /**
1407
955
  * Type definition for `AWS::Lex::Bot.ResponseSpecification`.
1408
- * A list of message groups that Amazon Lex uses to respond the user input.
1409
956
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-responsespecification.html}
1410
957
  */
1411
958
  export type ResponseSpecification = {
1412
- /**
1413
- * Indicates whether the user can interrupt a speech prompt from the bot.
1414
- */
1415
959
  AllowInterrupt?: boolean;
1416
960
  /**
1417
- * One to 5 message groups that contain update messages. Amazon Lex chooses one of the messages to play to the user.
1418
961
  * @minLength `1`
1419
962
  * @maxLength `5`
1420
963
  */
@@ -1422,25 +965,21 @@ export type ResponseSpecification = {
1422
965
  };
1423
966
  /**
1424
967
  * Type definition for `AWS::Lex::Bot.S3BucketLogDestination`.
1425
- * Specifies an Amazon S3 bucket for logging audio conversations
1426
968
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-s3bucketlogdestination.html}
1427
969
  */
1428
970
  export type S3BucketLogDestination = {
1429
971
  /**
1430
- * The Amazon Resource Name (ARN) of an AWS Key Management Service (KMS) key for encrypting audio log files stored in an S3 bucket.
1431
972
  * @minLength `20`
1432
973
  * @maxLength `2048`
1433
974
  * @pattern `^arn:[\w\-]+:kms:[\w\-]+:[\d]{12}:(?:key\/[\w\-]+|alias\/[a-zA-Z0-9:\/_\-]{1,256})$`
1434
975
  */
1435
976
  KmsKeyArn?: string;
1436
977
  /**
1437
- * The Amazon S3 key of the deployment package.
1438
978
  * @minLength `0`
1439
979
  * @maxLength `1024`
1440
980
  */
1441
981
  LogPrefix: string;
1442
982
  /**
1443
- * The Amazon Resource Name (ARN) of an Amazon S3 bucket where audio log files are stored.
1444
983
  * @minLength `1`
1445
984
  * @maxLength `2048`
1446
985
  * @pattern `^arn:[\w\-]+:s3:::[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`
@@ -1449,26 +988,22 @@ export type S3BucketLogDestination = {
1449
988
  };
1450
989
  /**
1451
990
  * Type definition for `AWS::Lex::Bot.S3Location`.
1452
- * S3 location of bot definitions zip file, if it's not defined inline in CloudFormation.
1453
991
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-s3location.html}
1454
992
  */
1455
993
  export type S3Location = {
1456
994
  /**
1457
- * An Amazon S3 bucket in the same AWS Region as your function. The bucket can be in a different AWS account.
1458
995
  * @minLength `3`
1459
996
  * @maxLength `63`
1460
997
  * @pattern `^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`
1461
998
  */
1462
999
  S3Bucket: string;
1463
1000
  /**
1464
- * The Amazon S3 key of the deployment package.
1465
1001
  * @minLength `1`
1466
1002
  * @maxLength `1024`
1467
1003
  * @pattern `[\.\-\!\*\_\'\(\)a-zA-Z0-9][\.\-\!\*\_\'\(\)\/a-zA-Z0-9]*$`
1468
1004
  */
1469
1005
  S3ObjectKey: string;
1470
1006
  /**
1471
- * For versioned objects, the version of the deployment package object to use. If not specified, the current object version will be used.
1472
1007
  * @minLength `1`
1473
1008
  * @maxLength `1024`
1474
1009
  */
@@ -1476,23 +1011,17 @@ export type S3Location = {
1476
1011
  };
1477
1012
  /**
1478
1013
  * Type definition for `AWS::Lex::Bot.SampleUtterance`.
1479
- * A sample utterance that invokes an intent or respond to a slot elicitation prompt.
1480
1014
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-sampleutterance.html}
1481
1015
  */
1482
1016
  export type SampleUtterance = {
1483
- /**
1484
- * The sample utterance that Amazon Lex uses to build its machine-learning model to recognize intents/slots.
1485
- */
1486
1017
  Utterance: string;
1487
1018
  };
1488
1019
  /**
1489
1020
  * Type definition for `AWS::Lex::Bot.SampleValue`.
1490
- * Defines one of the values for a slot type.
1491
1021
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-samplevalue.html}
1492
1022
  */
1493
1023
  export type SampleValue = {
1494
1024
  /**
1495
- * The value that can be used for a slot type.
1496
1025
  * @minLength `1`
1497
1026
  * @maxLength `140`
1498
1027
  */
@@ -1500,7 +1029,6 @@ export type SampleValue = {
1500
1029
  };
1501
1030
  /**
1502
1031
  * Type definition for `AWS::Lex::Bot.SessionAttribute`.
1503
- * Key/value pair representing session-specific context information. It contains application information passed between Amazon Lex and a client application.
1504
1032
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-sessionattribute.html}
1505
1033
  */
1506
1034
  export type SessionAttribute = {
@@ -1517,7 +1045,6 @@ export type SessionAttribute = {
1517
1045
  };
1518
1046
  /**
1519
1047
  * Type definition for `AWS::Lex::Bot.Slot`.
1520
- * A slot is a variable needed to fulfill an intent, where an intent can require zero or more slots.
1521
1048
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slot.html}
1522
1049
  */
1523
1050
  export type Slot = {
@@ -1526,67 +1053,29 @@ export type Slot = {
1526
1053
  * @maxLength `200`
1527
1054
  */
1528
1055
  Description?: string;
1529
- /**
1530
- * Indicates whether a slot can return multiple values.
1531
- */
1532
1056
  MultipleValuesSetting?: MultipleValuesSetting;
1533
1057
  /**
1534
- * Unique name for a resource.
1535
1058
  * @minLength `1`
1536
1059
  * @maxLength `100`
1537
1060
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
1538
1061
  */
1539
1062
  Name: string;
1540
- /**
1541
- * Determines whether Amazon Lex obscures slot values in conversation logs.
1542
- */
1543
1063
  ObfuscationSetting?: ObfuscationSetting;
1544
- /**
1545
- * The slot type name that is used in the slot. Allows for custom and built-in slot type names
1546
- */
1547
1064
  SlotTypeName: string;
1548
- /**
1549
- * Settings that you can use for eliciting a slot value.
1550
- */
1551
1065
  ValueElicitationSetting: SlotValueElicitationSetting;
1552
1066
  };
1553
1067
  /**
1554
1068
  * Type definition for `AWS::Lex::Bot.SlotCaptureSetting`.
1555
- * Settings used when Amazon Lex successfully captures a slot value from a user.
1556
1069
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotcapturesetting.html}
1557
1070
  */
1558
1071
  export type SlotCaptureSetting = {
1559
- /**
1560
- * A list of conditional branches to evaluate after the slot value is captured.
1561
- */
1562
1072
  CaptureConditional?: ConditionalSpecification;
1563
- /**
1564
- * Specifies the next step that the bot runs when the slot value is captured before the code hook times out.
1565
- */
1566
1073
  CaptureNextStep?: DialogState;
1567
- /**
1568
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
1569
- */
1570
1074
  CaptureResponse?: ResponseSpecification;
1571
- /**
1572
- * Code hook called after Amazon Lex successfully captures a slot value.
1573
- */
1574
1075
  CodeHook?: DialogCodeHookInvocationSetting;
1575
- /**
1576
- * Code hook called when Amazon Lex doesn't capture a slot value.
1577
- */
1578
1076
  ElicitationCodeHook?: ElicitationCodeHookInvocationSetting;
1579
- /**
1580
- * A list of conditional branches to evaluate when the slot value isn't captured.
1581
- */
1582
1077
  FailureConditional?: ConditionalSpecification;
1583
- /**
1584
- * Specifies the next step that the bot runs when the slot value code is not recognized.
1585
- */
1586
1078
  FailureNextStep?: DialogState;
1587
- /**
1588
- * Specifies a list of message groups that Amazon Lex uses to respond the user input.
1589
- */
1590
1079
  FailureResponse?: ResponseSpecification;
1591
1080
  };
1592
1081
  /**
@@ -1596,12 +1085,10 @@ export type SlotCaptureSetting = {
1596
1085
  export type SlotConstraint = "Required" | "Optional";
1597
1086
  /**
1598
1087
  * Type definition for `AWS::Lex::Bot.SlotDefaultValue`.
1599
- * The default value to use when a user doesn't provide a value for a slot.
1600
1088
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotdefaultvalue.html}
1601
1089
  */
1602
1090
  export type SlotDefaultValue = {
1603
1091
  /**
1604
- * The default value to use when a user doesn't provide a value for a slot.
1605
1092
  * @minLength `1`
1606
1093
  * @maxLength `202`
1607
1094
  */
@@ -1609,30 +1096,25 @@ export type SlotDefaultValue = {
1609
1096
  };
1610
1097
  /**
1611
1098
  * Type definition for `AWS::Lex::Bot.SlotDefaultValueSpecification`.
1612
- * A list of values that Amazon Lex should use as the default value for a slot.
1613
1099
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotdefaultvaluespecification.html}
1614
1100
  */
1615
1101
  export type SlotDefaultValueSpecification = {
1616
1102
  /**
1617
- * A list of slot default values
1618
1103
  * @maxLength `10`
1619
1104
  */
1620
1105
  DefaultValueList: SlotDefaultValue[];
1621
1106
  };
1622
1107
  /**
1623
1108
  * Type definition for `AWS::Lex::Bot.SlotPriority`.
1624
- * The priority that Amazon Lex should use when eliciting slot values from a user.
1625
1109
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotpriority.html}
1626
1110
  */
1627
1111
  export type SlotPriority = {
1628
1112
  /**
1629
- * The priority that a slot should be elicited.
1630
1113
  * @min `0`
1631
1114
  * @max `100`
1632
1115
  */
1633
1116
  Priority: number;
1634
1117
  /**
1635
- * The name of the slot.
1636
1118
  * @minLength `1`
1637
1119
  * @maxLength `100`
1638
1120
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
@@ -1641,70 +1123,51 @@ export type SlotPriority = {
1641
1123
  };
1642
1124
  /**
1643
1125
  * Type definition for `AWS::Lex::Bot.SlotShape`.
1644
- * The different shapes that a slot can be in during a conversation.
1645
1126
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotshape.html}
1646
1127
  */
1647
1128
  export type SlotShape = "Scalar" | "List";
1648
1129
  /**
1649
1130
  * Type definition for `AWS::Lex::Bot.SlotType`.
1650
- * A custom, extended built-in or a grammar slot type.
1651
1131
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slottype.html}
1652
1132
  */
1653
1133
  export type SlotType = {
1134
+ CompositeSlotTypeSetting?: CompositeSlotTypeSetting;
1654
1135
  /**
1655
1136
  * A description of the resource
1656
1137
  * @maxLength `200`
1657
1138
  */
1658
1139
  Description?: string;
1659
- /**
1660
- * Provides information about the external source of the slot type's definition.
1661
- */
1662
1140
  ExternalSourceSetting?: ExternalSourceSetting;
1663
1141
  /**
1664
- * Unique name for a resource.
1665
1142
  * @minLength `1`
1666
1143
  * @maxLength `100`
1667
1144
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
1668
1145
  */
1669
1146
  Name: string;
1670
- /**
1671
- * The built-in slot type used as a parent of this slot type.
1672
- */
1673
1147
  ParentSlotTypeSignature?: string;
1674
1148
  /**
1675
- * A List of slot type values
1676
1149
  * @maxLength `10000`
1677
1150
  */
1678
1151
  SlotTypeValues?: SlotTypeValue[];
1679
- /**
1680
- * Contains settings used by Amazon Lex to select a slot value.
1681
- */
1682
1152
  ValueSelectionSetting?: SlotValueSelectionSetting;
1683
1153
  };
1684
1154
  /**
1685
1155
  * Type definition for `AWS::Lex::Bot.SlotTypeValue`.
1686
- * Value that the slot type can take.
1687
1156
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slottypevalue.html}
1688
1157
  */
1689
1158
  export type SlotTypeValue = {
1690
- /**
1691
- * Defines one of the values for a slot type.
1692
- */
1693
1159
  SampleValue: SampleValue;
1694
1160
  /**
1695
- * Additional values related to the slot type entry.
1696
1161
  * @maxLength `10000`
1697
1162
  */
1698
1163
  Synonyms?: SampleValue[];
1699
1164
  };
1700
1165
  /**
1701
1166
  * Type definition for `AWS::Lex::Bot.SlotValue`.
1702
- * The value to set in a slot.
1703
1167
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotvalue.html}
1704
1168
  */
1705
1169
  export type SlotValue = {
1706
1170
  /**
1707
- * The value that Amazon Lex determines for the slot.
1708
1171
  * @minLength `1`
1709
1172
  * @maxLength `202`
1710
1173
  */
@@ -1712,80 +1175,44 @@ export type SlotValue = {
1712
1175
  };
1713
1176
  /**
1714
1177
  * Type definition for `AWS::Lex::Bot.SlotValueElicitationSetting`.
1715
- * Settings that you can use for eliciting a slot value.
1716
1178
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotvalueelicitationsetting.html}
1717
1179
  */
1718
1180
  export type SlotValueElicitationSetting = {
1719
- /**
1720
- * A list of default values for a slot.
1721
- */
1722
1181
  DefaultValueSpecification?: SlotDefaultValueSpecification;
1723
- /**
1724
- * The prompt that Amazon Lex uses to elicit the slot value from the user.
1725
- */
1726
1182
  PromptSpecification?: PromptSpecification;
1727
- /**
1728
- * If you know a specific pattern that users might respond to an Amazon Lex request for a slot value, you can provide those utterances to improve accuracy.
1729
- */
1730
1183
  SampleUtterances?: SampleUtterance[];
1731
- /**
1732
- * Specifies the next stage in the conversation after capturing the slot.
1733
- */
1734
1184
  SlotCaptureSetting?: SlotCaptureSetting;
1735
- /**
1736
- * Specifies whether the slot is required or optional.
1737
- */
1738
1185
  SlotConstraint: SlotConstraint;
1739
- /**
1740
- * Specifies the prompts that Amazon Lex uses while a bot is waiting for customer input.
1741
- */
1742
1186
  WaitAndContinueSpecification?: WaitAndContinueSpecification;
1743
1187
  };
1744
1188
  /**
1745
1189
  * Type definition for `AWS::Lex::Bot.SlotValueOverride`.
1746
- * The slot values that Amazon Lex uses when it sets slot values in a dialog step.
1747
1190
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotvalueoverride.html}
1748
1191
  */
1749
1192
  export type SlotValueOverride = {
1750
- /**
1751
- * When the shape value is List, it indicates that the values field contains a list of slot values. When the value is Scalar, it indicates that the value field contains a single value.
1752
- */
1753
1193
  Shape?: SlotShape;
1754
- /**
1755
- * The current value of the slot.
1756
- */
1757
1194
  Value?: SlotValue;
1758
- /**
1759
- * A list of one or more values that the user provided for the slot. For example, for a slot that elicits pizza toppings, the values might be "pepperoni" and "pineapple."
1760
- */
1761
1195
  Values?: SlotValueOverride[];
1762
1196
  };
1763
1197
  /**
1764
1198
  * Type definition for `AWS::Lex::Bot.SlotValueOverrideMap`.
1765
- * A map of slot names and their overridden values.
1766
1199
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotvalueoverridemap.html}
1767
1200
  */
1768
1201
  export type SlotValueOverrideMap = {
1769
1202
  /**
1770
- * Unique name for a resource.
1771
1203
  * @minLength `1`
1772
1204
  * @maxLength `100`
1773
1205
  * @pattern `^([0-9a-zA-Z][_-]?)+$`
1774
1206
  */
1775
1207
  SlotName?: string;
1776
- /**
1777
- * The slot values that Amazon Lex uses when it sets slot values in a dialog step.
1778
- */
1779
1208
  SlotValueOverride?: SlotValueOverride;
1780
1209
  };
1781
1210
  /**
1782
1211
  * Type definition for `AWS::Lex::Bot.SlotValueRegexFilter`.
1783
- * A regular expression used to validate the value of a slot.
1784
1212
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotvalueregexfilter.html}
1785
1213
  */
1786
1214
  export type SlotValueRegexFilter = {
1787
1215
  /**
1788
- * Regex pattern
1789
1216
  * @minLength `1`
1790
1217
  * @maxLength `300`
1791
1218
  */
@@ -1795,31 +1222,22 @@ export type SlotValueRegexFilter = {
1795
1222
  * Type definition for `AWS::Lex::Bot.SlotValueResolutionStrategy`.
1796
1223
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotvalueresolutionstrategy.html}
1797
1224
  */
1798
- export type SlotValueResolutionStrategy = "ORIGINAL_VALUE" | "TOP_RESOLUTION";
1225
+ export type SlotValueResolutionStrategy = "ORIGINAL_VALUE" | "TOP_RESOLUTION" | "CONCATENATION";
1799
1226
  /**
1800
1227
  * Type definition for `AWS::Lex::Bot.SlotValueSelectionSetting`.
1801
- * Contains settings used by Amazon Lex to select a slot value.
1802
1228
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-slotvalueselectionsetting.html}
1803
1229
  */
1804
1230
  export type SlotValueSelectionSetting = {
1805
- /**
1806
- * Provides settings that enable advanced recognition settings for slot values.
1807
- */
1808
1231
  AdvancedRecognitionSetting?: AdvancedRecognitionSetting;
1809
- /**
1810
- * A regular expression used to validate the value of a slot.
1811
- */
1812
1232
  RegexFilter?: SlotValueRegexFilter;
1813
1233
  ResolutionStrategy: SlotValueResolutionStrategy;
1814
1234
  };
1815
1235
  /**
1816
1236
  * Type definition for `AWS::Lex::Bot.SSMLMessage`.
1817
- * A message in Speech Synthesis Markup Language (SSML).
1818
1237
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-ssmlmessage.html}
1819
1238
  */
1820
1239
  export type SSMLMessage = {
1821
1240
  /**
1822
- * The SSML text that defines the prompt.
1823
1241
  * @minLength `1`
1824
1242
  * @maxLength `1000`
1825
1243
  */
@@ -1827,47 +1245,55 @@ export type SSMLMessage = {
1827
1245
  };
1828
1246
  /**
1829
1247
  * Type definition for `AWS::Lex::Bot.StillWaitingResponseSpecification`.
1830
- * StillWaitingResponseSpecification.
1831
1248
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-stillwaitingresponsespecification.html}
1832
1249
  */
1833
1250
  export type StillWaitingResponseSpecification = {
1834
- /**
1835
- * Indicates whether the user can interrupt a speech prompt from the bot.
1836
- */
1837
1251
  AllowInterrupt?: boolean;
1838
1252
  /**
1839
- * How often a message should be sent to the user in seconds.
1840
1253
  * @min `1`
1841
1254
  * @max `300`
1842
1255
  */
1843
1256
  FrequencyInSeconds: number;
1844
1257
  /**
1845
- * One to 5 message groups that contain update messages. Amazon Lex chooses one of the messages to play to the user.
1846
1258
  * @minLength `1`
1847
1259
  * @maxLength `5`
1848
1260
  */
1849
1261
  MessageGroupsList: MessageGroup[];
1850
1262
  /**
1851
- * If Amazon Lex waits longer than this length of time in seconds for a response, it will stop sending messages.
1852
1263
  * @min `1`
1853
1264
  * @max `900`
1854
1265
  */
1855
1266
  TimeoutInSeconds: number;
1856
1267
  };
1268
+ /**
1269
+ * Type definition for `AWS::Lex::Bot.SubSlotTypeComposition`.
1270
+ * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-subslottypecomposition.html}
1271
+ */
1272
+ export type SubSlotTypeComposition = {
1273
+ /**
1274
+ * @minLength `1`
1275
+ * @maxLength `100`
1276
+ * @pattern `^([0-9a-zA-Z][_-]?){1,100}$`
1277
+ */
1278
+ Name: string;
1279
+ /**
1280
+ * @minLength `1`
1281
+ * @maxLength `25`
1282
+ * @pattern `^((AMAZON\.)[a-zA-Z_]+?|[0-9a-zA-Z]+)$`
1283
+ */
1284
+ SlotTypeId: string;
1285
+ };
1857
1286
  /**
1858
1287
  * Type definition for `AWS::Lex::Bot.Tag`.
1859
- * A key-value pair for tagging Lex resources
1860
1288
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-tag.html}
1861
1289
  */
1862
1290
  export type Tag = {
1863
1291
  /**
1864
- * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
1865
1292
  * @minLength `1`
1866
1293
  * @maxLength `128`
1867
1294
  */
1868
1295
  Key: string;
1869
1296
  /**
1870
- * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
1871
1297
  * @minLength `0`
1872
1298
  * @maxLength `256`
1873
1299
  */
@@ -1875,49 +1301,35 @@ export type Tag = {
1875
1301
  };
1876
1302
  /**
1877
1303
  * Type definition for `AWS::Lex::Bot.TestBotAliasSettings`.
1878
- * Configuring the test bot alias settings for a given bot
1879
1304
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-testbotaliassettings.html}
1880
1305
  */
1881
1306
  export type TestBotAliasSettings = {
1882
1307
  /**
1883
- * A list of bot alias locale settings to add to the bot alias.
1884
1308
  * @maxLength `50`
1885
1309
  */
1886
1310
  BotAliasLocaleSettings?: BotAliasLocaleSettingsItem[];
1887
- /**
1888
- * Contains information about code hooks that Amazon Lex calls during a conversation.
1889
- */
1890
1311
  ConversationLogSettings?: ConversationLogSettings;
1891
1312
  /**
1892
1313
  * A description of the resource
1893
1314
  * @maxLength `200`
1894
1315
  */
1895
1316
  Description?: string;
1896
- /**
1897
- * Determines whether Amazon Lex will use Amazon Comprehend to detect the sentiment of user utterances.
1898
- */
1899
1317
  SentimentAnalysisSettings?: {
1900
- /**
1901
- * Enable to call Amazon Comprehend for Sentiment natively within Lex
1902
- */
1903
1318
  DetectSentiment: boolean;
1904
1319
  };
1905
1320
  };
1906
1321
  /**
1907
1322
  * Type definition for `AWS::Lex::Bot.TextInputSpecification`.
1908
- * Specifies the text input specifications.
1909
1323
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-textinputspecification.html}
1910
1324
  */
1911
1325
  export type TextInputSpecification = {
1912
1326
  /**
1913
- * Time for which a bot waits before re-prompting a customer for text input.
1914
1327
  * @min `1`
1915
1328
  */
1916
1329
  StartTimeoutMs: number;
1917
1330
  };
1918
1331
  /**
1919
1332
  * Type definition for `AWS::Lex::Bot.TextLogDestination`.
1920
- * Defines the Amazon CloudWatch Logs destination log group for conversation text logs.
1921
1333
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-textlogdestination.html}
1922
1334
  */
1923
1335
  export type TextLogDestination = {
@@ -1925,52 +1337,28 @@ export type TextLogDestination = {
1925
1337
  };
1926
1338
  /**
1927
1339
  * Type definition for `AWS::Lex::Bot.TextLogSetting`.
1928
- * Contains information about code hooks that Amazon Lex calls during a conversation.
1929
1340
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-textlogsetting.html}
1930
1341
  */
1931
1342
  export type TextLogSetting = {
1932
- /**
1933
- * Defines the Amazon CloudWatch Logs destination log group for conversation text logs.
1934
- */
1935
1343
  Destination: TextLogDestination;
1936
1344
  Enabled: boolean;
1937
1345
  };
1938
1346
  /**
1939
1347
  * Type definition for `AWS::Lex::Bot.VoiceSettings`.
1940
- * Settings for using an Amazon Polly voice to communicate with a user.
1941
1348
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-voicesettings.html}
1942
1349
  */
1943
1350
  export type VoiceSettings = {
1944
- /**
1945
- * Indicates the type of Amazon Polly voice that Amazon Lex should use for voice interaction with the user. For more information, see the engine parameter of the SynthesizeSpeech operation in the Amazon Polly developer guide.
1946
- */
1947
1351
  Engine?: "standard" | "neural" | "long-form" | "generative";
1948
- /**
1949
- * The Amazon Polly voice ID that Amazon Lex uses for voice interaction with the user.
1950
- */
1951
1352
  VoiceId: string;
1952
1353
  };
1953
1354
  /**
1954
1355
  * Type definition for `AWS::Lex::Bot.WaitAndContinueSpecification`.
1955
- * The prompts that Amazon Lex uses while a bot is waiting for customer input.
1956
1356
  * @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lex-bot-waitandcontinuespecification.html}
1957
1357
  */
1958
1358
  export type WaitAndContinueSpecification = {
1959
- /**
1960
- * The response that Amazon Lex sends to indicate that the bot is ready to continue the conversation.
1961
- */
1962
1359
  ContinueResponse: ResponseSpecification;
1963
- /**
1964
- * Specifies whether the bot will wait for a user to respond.
1965
- */
1966
1360
  IsActive?: boolean;
1967
- /**
1968
- * The response that Amazon Lex sends periodically to the user to indicate that the bot is still waiting for input from the user.
1969
- */
1970
1361
  StillWaitingResponse?: StillWaitingResponseSpecification;
1971
- /**
1972
- * The response that Amazon Lex sends to indicate that the bot is waiting for the conversation to continue.
1973
- */
1974
1362
  WaitingResponse: ResponseSpecification;
1975
1363
  };
1976
1364
  /**