@aws-sdk/client-qbusiness 3.564.0 → 3.566.0

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.
Files changed (48) hide show
  1. package/README.md +8 -3
  2. package/dist-cjs/index.js +434 -9
  3. package/dist-cjs/runtimeConfig.browser.js +4 -0
  4. package/dist-cjs/runtimeConfig.js +4 -0
  5. package/dist-cjs/runtimeConfig.native.js +3 -0
  6. package/dist-es/QBusiness.js +2 -0
  7. package/dist-es/QBusinessClient.js +8 -4
  8. package/dist-es/commands/ChatCommand.js +32 -0
  9. package/dist-es/commands/CreatePluginCommand.js +2 -1
  10. package/dist-es/commands/GetPluginCommand.js +2 -1
  11. package/dist-es/commands/UpdatePluginCommand.js +2 -1
  12. package/dist-es/commands/index.js +1 -0
  13. package/dist-es/models/models_0.js +134 -0
  14. package/dist-es/protocols/Aws_restJson1.js +225 -1
  15. package/dist-es/runtimeConfig.browser.js +5 -1
  16. package/dist-es/runtimeConfig.js +4 -0
  17. package/dist-es/runtimeConfig.native.js +3 -0
  18. package/dist-types/QBusiness.d.ts +8 -4
  19. package/dist-types/QBusinessClient.d.ts +19 -9
  20. package/dist-types/commands/ChatCommand.d.ts +281 -0
  21. package/dist-types/commands/ChatSyncCommand.d.ts +14 -1
  22. package/dist-types/commands/CreateApplicationCommand.d.ts +8 -1
  23. package/dist-types/commands/CreateIndexCommand.d.ts +1 -0
  24. package/dist-types/commands/CreatePluginCommand.d.ts +15 -2
  25. package/dist-types/commands/GetIndexCommand.d.ts +1 -0
  26. package/dist-types/commands/GetPluginCommand.d.ts +14 -1
  27. package/dist-types/commands/ListMessagesCommand.d.ts +6 -1
  28. package/dist-types/commands/ListPluginsCommand.d.ts +2 -1
  29. package/dist-types/commands/UpdateApplicationCommand.d.ts +1 -0
  30. package/dist-types/commands/UpdatePluginCommand.d.ts +12 -0
  31. package/dist-types/commands/UpdateWebExperienceCommand.d.ts +1 -0
  32. package/dist-types/commands/index.d.ts +1 -0
  33. package/dist-types/index.d.ts +1 -4
  34. package/dist-types/models/models_0.d.ts +867 -47
  35. package/dist-types/protocols/Aws_restJson1.d.ts +10 -1
  36. package/dist-types/runtimeConfig.browser.d.ts +2 -0
  37. package/dist-types/runtimeConfig.d.ts +2 -0
  38. package/dist-types/runtimeConfig.native.d.ts +2 -0
  39. package/dist-types/ts3.4/QBusiness.d.ts +14 -0
  40. package/dist-types/ts3.4/QBusinessClient.d.ts +19 -0
  41. package/dist-types/ts3.4/commands/ChatCommand.d.ts +29 -0
  42. package/dist-types/ts3.4/commands/index.d.ts +1 -0
  43. package/dist-types/ts3.4/models/models_0.d.ts +333 -11
  44. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +13 -1
  45. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +2 -0
  46. package/dist-types/ts3.4/runtimeConfig.d.ts +2 -0
  47. package/dist-types/ts3.4/runtimeConfig.native.d.ts +2 -0
  48. package/package.json +7 -2
@@ -206,6 +206,30 @@ export interface ActionExecution {
206
206
  */
207
207
  payloadFieldNameSeparator: string | undefined;
208
208
  }
209
+ /**
210
+ * <p>A request from an end user signalling an intent to perform an Amazon Q Business plugin
211
+ * action during a streaming chat.</p>
212
+ * @public
213
+ */
214
+ export interface ActionExecutionEvent {
215
+ /**
216
+ * <p>The identifier of the plugin for which the action is being requested.</p>
217
+ * @public
218
+ */
219
+ pluginId: string | undefined;
220
+ /**
221
+ * <p>A mapping of field names to the field values in input that an end user provides to
222
+ * Amazon Q Business requests to perform their plugin action. </p>
223
+ * @public
224
+ */
225
+ payload: Record<string, ActionExecutionPayloadField> | undefined;
226
+ /**
227
+ * <p>A string used to retain information about the hierarchical contexts within a action
228
+ * execution event payload.</p>
229
+ * @public
230
+ */
231
+ payloadFieldNameSeparator: string | undefined;
232
+ }
209
233
  /**
210
234
  * @public
211
235
  * @enum
@@ -252,6 +276,13 @@ export interface ActionReviewPayloadField {
252
276
  * @public
253
277
  */
254
278
  displayOrder?: number;
279
+ /**
280
+ * <p>The field level description of each action review input field. This could be an
281
+ * explanation of the field. In the Amazon Q Business web experience, these descriptions could
282
+ * be used to display as tool tips to help users understand the field. </p>
283
+ * @public
284
+ */
285
+ displayDescription?: string;
255
286
  /**
256
287
  * <p>The type of field. </p>
257
288
  * @public
@@ -268,6 +299,13 @@ export interface ActionReviewPayloadField {
268
299
  * @public
269
300
  */
270
301
  allowedValues?: ActionReviewPayloadFieldAllowedValue[];
302
+ /**
303
+ * <p>The expected data format for the action review input field value. For example, in PTO
304
+ * request, <code>from</code> and <code>to</code> would be of <code>datetime</code> allowed
305
+ * format. </p>
306
+ * @public
307
+ */
308
+ allowedFormat?: string;
271
309
  /**
272
310
  * <p>Information about whether the field is required.</p>
273
311
  * @public
@@ -279,6 +317,7 @@ export interface ActionReviewPayloadField {
279
317
  * @enum
280
318
  */
281
319
  export declare const PluginType: {
320
+ readonly CUSTOM: "CUSTOM";
282
321
  readonly JIRA: "JIRA";
283
322
  readonly SALESFORCE: "SALESFORCE";
284
323
  readonly SERVICE_NOW: "SERVICE_NOW";
@@ -319,6 +358,129 @@ export interface ActionReview {
319
358
  */
320
359
  payloadFieldNameSeparator?: string;
321
360
  }
361
+ /**
362
+ * <p>An output event that Amazon Q Business returns to an user who wants to perform a plugin
363
+ * action during a streaming chat conversation. It contains information about the selected
364
+ * action with a list of possible user input fields, some pre-populated by Amazon Q Business.
365
+ * </p>
366
+ * @public
367
+ */
368
+ export interface ActionReviewEvent {
369
+ /**
370
+ * <p>The identifier of the conversation with which the action review event is
371
+ * associated.</p>
372
+ * @public
373
+ */
374
+ conversationId?: string;
375
+ /**
376
+ * <p>The identifier of the conversation with which the plugin action is associated.</p>
377
+ * @public
378
+ */
379
+ userMessageId?: string;
380
+ /**
381
+ * <p>The identifier of an Amazon Q Business AI generated associated with the action review
382
+ * event.</p>
383
+ * @public
384
+ */
385
+ systemMessageId?: string;
386
+ /**
387
+ * <p>The identifier of the plugin associated with the action review event.</p>
388
+ * @public
389
+ */
390
+ pluginId?: string;
391
+ /**
392
+ * <p>The type of plugin.</p>
393
+ * @public
394
+ */
395
+ pluginType?: PluginType;
396
+ /**
397
+ * <p>Field values that an end user needs to provide to Amazon Q Business for Amazon Q Business to
398
+ * perform the requested plugin action.</p>
399
+ * @public
400
+ */
401
+ payload?: Record<string, ActionReviewPayloadField>;
402
+ /**
403
+ * <p>A string used to retain information about the hierarchical contexts within an action
404
+ * review event payload.</p>
405
+ * @public
406
+ */
407
+ payloadFieldNameSeparator?: string;
408
+ }
409
+ /**
410
+ * <p>Information required for Amazon Q Business to find a specific file in an Amazon S3
411
+ * bucket.</p>
412
+ * @public
413
+ */
414
+ export interface S3 {
415
+ /**
416
+ * <p>The name of the S3 bucket that contains the file.</p>
417
+ * @public
418
+ */
419
+ bucket: string | undefined;
420
+ /**
421
+ * <p>The name of the file.</p>
422
+ * @public
423
+ */
424
+ key: string | undefined;
425
+ }
426
+ /**
427
+ * <p>Contains details about the OpenAPI schema for a custom plugin. For more information,
428
+ * see <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/custom-plugin.html#plugins-api-schema">custom plugin OpenAPI schemas</a>. You can either include
429
+ * the schema directly in the payload field or you can upload it to an S3 bucket and
430
+ * specify the S3 bucket location in the <code>s3</code> field. </p>
431
+ * @public
432
+ */
433
+ export type APISchema = APISchema.PayloadMember | APISchema.S3Member | APISchema.$UnknownMember;
434
+ /**
435
+ * @public
436
+ */
437
+ export declare namespace APISchema {
438
+ /**
439
+ * <p>The JSON or YAML-formatted payload defining the OpenAPI schema for a custom plugin.
440
+ * </p>
441
+ * @public
442
+ */
443
+ interface PayloadMember {
444
+ payload: string;
445
+ s3?: never;
446
+ $unknown?: never;
447
+ }
448
+ /**
449
+ * <p>Contains details about the S3 object containing the OpenAPI schema for a custom
450
+ * plugin. The schema could be in either JSON or YAML format.</p>
451
+ * @public
452
+ */
453
+ interface S3Member {
454
+ payload?: never;
455
+ s3: S3;
456
+ $unknown?: never;
457
+ }
458
+ /**
459
+ * @public
460
+ */
461
+ interface $UnknownMember {
462
+ payload?: never;
463
+ s3?: never;
464
+ $unknown: [string, any];
465
+ }
466
+ interface Visitor<T> {
467
+ payload: (value: string) => T;
468
+ s3: (value: S3) => T;
469
+ _: (name: string, value: any) => T;
470
+ }
471
+ const visit: <T>(value: APISchema, visitor: Visitor<T>) => T;
472
+ }
473
+ /**
474
+ * @public
475
+ * @enum
476
+ */
477
+ export declare const APISchemaType: {
478
+ readonly OPEN_API_V3: "OPEN_API_V3";
479
+ };
480
+ /**
481
+ * @public
482
+ */
483
+ export type APISchemaType = (typeof APISchemaType)[keyof typeof APISchemaType];
322
484
  /**
323
485
  * @public
324
486
  * @enum
@@ -460,7 +622,7 @@ export interface CreateApplicationRequest {
460
622
  * CloudWatch logs and metrics.</p>
461
623
  * @public
462
624
  */
463
- roleArn: string | undefined;
625
+ roleArn?: string;
464
626
  /**
465
627
  * <p> The Amazon Resource Name (ARN) of the IAM Identity Center instance you are either
466
628
  * creating for—or connecting to—your Amazon Q Business application.</p>
@@ -787,6 +949,18 @@ export interface IndexCapacityConfiguration {
787
949
  */
788
950
  units?: number;
789
951
  }
952
+ /**
953
+ * @public
954
+ * @enum
955
+ */
956
+ export declare const IndexType: {
957
+ readonly ENTERPRISE: "ENTERPRISE";
958
+ readonly STARTER: "STARTER";
959
+ };
960
+ /**
961
+ * @public
962
+ */
963
+ export type IndexType = (typeof IndexType)[keyof typeof IndexType];
790
964
  /**
791
965
  * @public
792
966
  */
@@ -801,6 +975,13 @@ export interface CreateIndexRequest {
801
975
  * @public
802
976
  */
803
977
  displayName: string | undefined;
978
+ /**
979
+ * <p>The index type that's suitable for your needs. For more information on what's included
980
+ * in each type of index or index tier, see <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/what-is.html#tiers">Amazon Q Business
981
+ * tiers</a>.</p>
982
+ * @public
983
+ */
984
+ type?: IndexType;
804
985
  /**
805
986
  * <p>A description for the Amazon Q Business index.</p>
806
987
  * @public
@@ -969,8 +1150,8 @@ export interface DocumentAttributeCondition {
969
1150
  * <p>The identifier of the document attribute used for the condition.</p>
970
1151
  * <p>For example, 'Source_URI' could be an identifier for the attribute or metadata field
971
1152
  * that contains source URIs associated with the documents.</p>
972
- * <p>Amazon Kendra currently does not support <code>_document_body</code> as an
973
- * attribute key used for the condition.</p>
1153
+ * <p>Amazon Q Business currently does not support <code>_document_body</code> as an attribute
1154
+ * key used for the condition.</p>
974
1155
  * @public
975
1156
  */
976
1157
  operator: DocumentEnrichmentConditionOperator | undefined;
@@ -1104,10 +1285,12 @@ export interface InlineDocumentEnrichmentConfiguration {
1104
1285
  * <p>Provides the configuration information for invoking a Lambda function in
1105
1286
  * Lambda to alter document metadata and content when ingesting
1106
1287
  * documents into Amazon Q Business.</p>
1107
- * <p>You can configure your Lambda function using <a href="https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html">PreExtractionHookConfiguration</a> if you want to apply advanced alterations on
1108
- * the original or raw documents.</p>
1288
+ * <p>You can configure your Lambda function using the
1289
+ * <code>PreExtractionHookConfiguration</code> parameter if you want to apply advanced
1290
+ * alterations on the original or raw documents.</p>
1109
1291
  * <p>If you want to apply advanced alterations on the Amazon Q Business structured documents,
1110
- * you must configure your Lambda function using <a href="https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html">PostExtractionHookConfiguration</a>.</p>
1292
+ * you must configure your Lambda function using
1293
+ * <code>PostExtractionHookConfiguration</code>.</p>
1111
1294
  * <p>You can only invoke one Lambda function. However, this function can invoke
1112
1295
  * other functions it requires.</p>
1113
1296
  * <p>For more information, see <a href="https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html">Custom document enrichment</a>. </p>
@@ -1161,10 +1344,12 @@ export interface DocumentEnrichmentConfiguration {
1161
1344
  * <p>Provides the configuration information for invoking a Lambda function in
1162
1345
  * Lambda to alter document metadata and content when ingesting
1163
1346
  * documents into Amazon Q Business.</p>
1164
- * <p>You can configure your Lambda function using <a href="https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html">PreExtractionHookConfiguration</a> if you want to apply advanced alterations on
1165
- * the original or raw documents.</p>
1347
+ * <p>You can configure your Lambda function using the
1348
+ * <code>PreExtractionHookConfiguration</code> parameter if you want to apply advanced
1349
+ * alterations on the original or raw documents.</p>
1166
1350
  * <p>If you want to apply advanced alterations on the Amazon Q Business structured documents,
1167
- * you must configure your Lambda function using <a href="https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html">PostExtractionHookConfiguration</a>.</p>
1351
+ * you must configure your Lambda function using
1352
+ * <code>PostExtractionHookConfiguration</code>.</p>
1168
1353
  * <p>You can only invoke one Lambda function. However, this function can invoke
1169
1354
  * other functions it requires.</p>
1170
1355
  * <p>For more information, see <a href="https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html">Custom document enrichment</a>. </p>
@@ -1175,10 +1360,12 @@ export interface DocumentEnrichmentConfiguration {
1175
1360
  * <p>Provides the configuration information for invoking a Lambda function in
1176
1361
  * Lambda to alter document metadata and content when ingesting
1177
1362
  * documents into Amazon Q Business.</p>
1178
- * <p>You can configure your Lambda function using <a href="https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html">PreExtractionHookConfiguration</a> if you want to apply advanced alterations on
1179
- * the original or raw documents.</p>
1363
+ * <p>You can configure your Lambda function using the
1364
+ * <code>PreExtractionHookConfiguration</code> parameter if you want to apply advanced
1365
+ * alterations on the original or raw documents.</p>
1180
1366
  * <p>If you want to apply advanced alterations on the Amazon Q Business structured documents,
1181
- * you must configure your Lambda function using <a href="https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html">PostExtractionHookConfiguration</a>.</p>
1367
+ * you must configure your Lambda function using
1368
+ * <code>PostExtractionHookConfiguration</code>.</p>
1182
1369
  * <p>You can only invoke one Lambda function. However, this function can invoke
1183
1370
  * other functions it requires.</p>
1184
1371
  * <p>For more information, see <a href="https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html">Custom document enrichment</a>. </p>
@@ -1754,6 +1941,11 @@ export interface GetIndexResponse {
1754
1941
  * @public
1755
1942
  */
1756
1943
  displayName?: string;
1944
+ /**
1945
+ * <p>The type of index attached to your Amazon Q Business application.</p>
1946
+ * @public
1947
+ */
1948
+ type?: IndexType;
1757
1949
  /**
1758
1950
  * <p> The Amazon Resource Name (ARN) of the Amazon Q Business index. </p>
1759
1951
  * @public
@@ -1971,6 +2163,13 @@ export interface BasicAuthConfiguration {
1971
2163
  */
1972
2164
  roleArn: string | undefined;
1973
2165
  }
2166
+ /**
2167
+ * <p>Information about invoking a custom plugin without any authentication or authorization
2168
+ * requirement.</p>
2169
+ * @public
2170
+ */
2171
+ export interface NoAuthConfiguration {
2172
+ }
1974
2173
  /**
1975
2174
  * <p>Information about the OAuth 2.0 authentication credential/token used to configure a
1976
2175
  * plugin.</p>
@@ -1994,7 +2193,7 @@ export interface OAuth2ClientCredentialConfiguration {
1994
2193
  * <p>Authentication configuration information for an Amazon Q Business plugin.</p>
1995
2194
  * @public
1996
2195
  */
1997
- export type PluginAuthConfiguration = PluginAuthConfiguration.BasicAuthConfigurationMember | PluginAuthConfiguration.OAuth2ClientCredentialConfigurationMember | PluginAuthConfiguration.$UnknownMember;
2196
+ export type PluginAuthConfiguration = PluginAuthConfiguration.BasicAuthConfigurationMember | PluginAuthConfiguration.NoAuthConfigurationMember | PluginAuthConfiguration.OAuth2ClientCredentialConfigurationMember | PluginAuthConfiguration.$UnknownMember;
1998
2197
  /**
1999
2198
  * @public
2000
2199
  */
@@ -2007,6 +2206,7 @@ export declare namespace PluginAuthConfiguration {
2007
2206
  interface BasicAuthConfigurationMember {
2008
2207
  basicAuthConfiguration: BasicAuthConfiguration;
2009
2208
  oAuth2ClientCredentialConfiguration?: never;
2209
+ noAuthConfiguration?: never;
2010
2210
  $unknown?: never;
2011
2211
  }
2012
2212
  /**
@@ -2017,6 +2217,17 @@ export declare namespace PluginAuthConfiguration {
2017
2217
  interface OAuth2ClientCredentialConfigurationMember {
2018
2218
  basicAuthConfiguration?: never;
2019
2219
  oAuth2ClientCredentialConfiguration: OAuth2ClientCredentialConfiguration;
2220
+ noAuthConfiguration?: never;
2221
+ $unknown?: never;
2222
+ }
2223
+ /**
2224
+ * <p>Information about invoking a custom plugin without any authentication.</p>
2225
+ * @public
2226
+ */
2227
+ interface NoAuthConfigurationMember {
2228
+ basicAuthConfiguration?: never;
2229
+ oAuth2ClientCredentialConfiguration?: never;
2230
+ noAuthConfiguration: NoAuthConfiguration;
2020
2231
  $unknown?: never;
2021
2232
  }
2022
2233
  /**
@@ -2025,15 +2236,39 @@ export declare namespace PluginAuthConfiguration {
2025
2236
  interface $UnknownMember {
2026
2237
  basicAuthConfiguration?: never;
2027
2238
  oAuth2ClientCredentialConfiguration?: never;
2239
+ noAuthConfiguration?: never;
2028
2240
  $unknown: [string, any];
2029
2241
  }
2030
2242
  interface Visitor<T> {
2031
2243
  basicAuthConfiguration: (value: BasicAuthConfiguration) => T;
2032
2244
  oAuth2ClientCredentialConfiguration: (value: OAuth2ClientCredentialConfiguration) => T;
2245
+ noAuthConfiguration: (value: NoAuthConfiguration) => T;
2033
2246
  _: (name: string, value: any) => T;
2034
2247
  }
2035
2248
  const visit: <T>(value: PluginAuthConfiguration, visitor: Visitor<T>) => T;
2036
2249
  }
2250
+ /**
2251
+ * <p> Configuration information required to create a custom plugin.</p>
2252
+ * @public
2253
+ */
2254
+ export interface CustomPluginConfiguration {
2255
+ /**
2256
+ * <p>A description for your custom plugin configuration.</p>
2257
+ * @public
2258
+ */
2259
+ description: string | undefined;
2260
+ /**
2261
+ * <p>The type of OpenAPI schema to use.</p>
2262
+ * @public
2263
+ */
2264
+ apiSchemaType: APISchemaType | undefined;
2265
+ /**
2266
+ * <p>Contains either details about the S3 object containing the OpenAPI schema for the
2267
+ * action group or the JSON or YAML-formatted payload defining the schema.</p>
2268
+ * @public
2269
+ */
2270
+ apiSchema: APISchema | undefined;
2271
+ }
2037
2272
  /**
2038
2273
  * @public
2039
2274
  */
@@ -2053,16 +2288,21 @@ export interface CreatePluginRequest {
2053
2288
  * @public
2054
2289
  */
2055
2290
  type: PluginType | undefined;
2291
+ /**
2292
+ * <p>Authentication configuration information for an Amazon Q Business plugin.</p>
2293
+ * @public
2294
+ */
2295
+ authConfiguration: PluginAuthConfiguration | undefined;
2056
2296
  /**
2057
2297
  * <p>The source URL used for plugin configuration.</p>
2058
2298
  * @public
2059
2299
  */
2060
- serverUrl: string | undefined;
2300
+ serverUrl?: string;
2061
2301
  /**
2062
- * <p>Authentication configuration information for an Amazon Q Business plugin.</p>
2302
+ * <p>Contains configuration for a custom plugin.</p>
2063
2303
  * @public
2064
2304
  */
2065
- authConfiguration: PluginAuthConfiguration | undefined;
2305
+ customPluginConfiguration?: CustomPluginConfiguration;
2066
2306
  /**
2067
2307
  * <p>A list of key-value pairs that identify or categorize the data source connector. You
2068
2308
  * can also use tags to help control access to the data source connector. Tag keys and
@@ -2078,6 +2318,23 @@ export interface CreatePluginRequest {
2078
2318
  */
2079
2319
  clientToken?: string;
2080
2320
  }
2321
+ /**
2322
+ * @public
2323
+ * @enum
2324
+ */
2325
+ export declare const PluginBuildStatus: {
2326
+ readonly CREATE_FAILED: "CREATE_FAILED";
2327
+ readonly CREATE_IN_PROGRESS: "CREATE_IN_PROGRESS";
2328
+ readonly DELETE_FAILED: "DELETE_FAILED";
2329
+ readonly DELETE_IN_PROGRESS: "DELETE_IN_PROGRESS";
2330
+ readonly READY: "READY";
2331
+ readonly UPDATE_FAILED: "UPDATE_FAILED";
2332
+ readonly UPDATE_IN_PROGRESS: "UPDATE_IN_PROGRESS";
2333
+ };
2334
+ /**
2335
+ * @public
2336
+ */
2337
+ export type PluginBuildStatus = (typeof PluginBuildStatus)[keyof typeof PluginBuildStatus];
2081
2338
  /**
2082
2339
  * @public
2083
2340
  */
@@ -2092,6 +2349,11 @@ export interface CreatePluginResponse {
2092
2349
  * @public
2093
2350
  */
2094
2351
  pluginArn?: string;
2352
+ /**
2353
+ * <p>The current status of a plugin. A plugin is modified asynchronously.</p>
2354
+ * @public
2355
+ */
2356
+ buildStatus?: PluginBuildStatus;
2095
2357
  }
2096
2358
  /**
2097
2359
  * @public
@@ -2174,6 +2436,16 @@ export interface GetPluginResponse {
2174
2436
  * @public
2175
2437
  */
2176
2438
  authConfiguration?: PluginAuthConfiguration;
2439
+ /**
2440
+ * <p>Configuration information required to create a custom plugin.</p>
2441
+ * @public
2442
+ */
2443
+ customPluginConfiguration?: CustomPluginConfiguration;
2444
+ /**
2445
+ * <p>The current status of a plugin. A plugin is modified asynchronously.</p>
2446
+ * @public
2447
+ */
2448
+ buildStatus?: PluginBuildStatus;
2177
2449
  /**
2178
2450
  * <p>The Amazon Resource Name (ARN) of the role with permission to access resources needed
2179
2451
  * to create the plugin.</p>
@@ -2248,6 +2520,11 @@ export interface Plugin {
2248
2520
  * @public
2249
2521
  */
2250
2522
  state?: PluginState;
2523
+ /**
2524
+ * <p>The status of the plugin.</p>
2525
+ * @public
2526
+ */
2527
+ buildStatus?: PluginBuildStatus;
2251
2528
  /**
2252
2529
  * <p>The timestamp for when the plugin was created.</p>
2253
2530
  * @public
@@ -2305,6 +2582,11 @@ export interface UpdatePluginRequest {
2305
2582
  * @public
2306
2583
  */
2307
2584
  serverUrl?: string;
2585
+ /**
2586
+ * <p>The configuration for a custom plugin.</p>
2587
+ * @public
2588
+ */
2589
+ customPluginConfiguration?: CustomPluginConfiguration;
2308
2590
  /**
2309
2591
  * <p>The authentication configuration the plugin is using.</p>
2310
2592
  * @public
@@ -2892,6 +3174,12 @@ export interface UpdateApplicationRequest {
2892
3174
  * @public
2893
3175
  */
2894
3176
  applicationId: string | undefined;
3177
+ /**
3178
+ * <p> The Amazon Resource Name (ARN) of the IAM Identity Center instance you are either
3179
+ * creating for—or connecting to—your Amazon Q Business application.</p>
3180
+ * @public
3181
+ */
3182
+ identityCenterInstanceArn?: string;
2895
3183
  /**
2896
3184
  * <p>A name for the Amazon Q Business application.</p>
2897
3185
  * @public
@@ -3144,12 +3432,12 @@ export interface GetWebExperienceResponse {
3144
3432
  */
3145
3433
  status?: WebExperienceStatus;
3146
3434
  /**
3147
- * <p>The Unix timestamp when the retriever was created.</p>
3435
+ * <p>The Unix timestamp when the Amazon Q Business web experience was last created.</p>
3148
3436
  * @public
3149
3437
  */
3150
3438
  createdAt?: Date;
3151
3439
  /**
3152
- * <p>The Unix timestamp when the data source connector was last updated.</p>
3440
+ * <p>The Unix timestamp when the Amazon Q Business web experience was last updated.</p>
3153
3441
  * @public
3154
3442
  */
3155
3443
  updatedAt?: Date;
@@ -3182,6 +3470,8 @@ export interface GetWebExperienceResponse {
3182
3470
  */
3183
3471
  roleArn?: string;
3184
3472
  /**
3473
+ * @deprecated
3474
+ *
3185
3475
  * <p>The authentication configuration information for your Amazon Q Business web
3186
3476
  * experience.</p>
3187
3477
  * @public
@@ -3281,6 +3571,14 @@ export interface UpdateWebExperienceRequest {
3281
3571
  */
3282
3572
  webExperienceId: string | undefined;
3283
3573
  /**
3574
+ * <p>The Amazon Resource Name (ARN) of the role with permission to access the Amazon Q Business
3575
+ * web experience and required resources.</p>
3576
+ * @public
3577
+ */
3578
+ roleArn?: string;
3579
+ /**
3580
+ * @deprecated
3581
+ *
3284
3582
  * <p>The authentication configuration of the Amazon Q Business web experience.</p>
3285
3583
  * @public
3286
3584
  */
@@ -3356,6 +3654,18 @@ export interface AttachmentInput {
3356
3654
  */
3357
3655
  data: Uint8Array | undefined;
3358
3656
  }
3657
+ /**
3658
+ * <p>A file input event activated by a end user request to upload files into their web
3659
+ * experience chat.</p>
3660
+ * @public
3661
+ */
3662
+ export interface AttachmentInputEvent {
3663
+ /**
3664
+ * <p>A file directly uploaded into a web experience chat.</p>
3665
+ * @public
3666
+ */
3667
+ attachment?: AttachmentInput;
3668
+ }
3359
3669
  /**
3360
3670
  * @public
3361
3671
  * @enum
@@ -3405,6 +3715,57 @@ export interface DocumentAttribute {
3405
3715
  */
3406
3716
  value: DocumentAttributeValue | undefined;
3407
3717
  }
3718
+ /**
3719
+ * <p>A request made by Amazon Q Business to a third paty authentication server to authenticate
3720
+ * a custom plugin user.</p>
3721
+ * @public
3722
+ */
3723
+ export interface AuthChallengeRequest {
3724
+ /**
3725
+ * <p>The URL sent by Amazon Q Business to the third party authentication server to authenticate
3726
+ * a custom plugin user through an OAuth protocol.</p>
3727
+ * @public
3728
+ */
3729
+ authorizationUrl: string | undefined;
3730
+ }
3731
+ /**
3732
+ * <p>An authentication verification event activated by an end user request to use a custom
3733
+ * plugin.</p>
3734
+ * @public
3735
+ */
3736
+ export interface AuthChallengeRequestEvent {
3737
+ /**
3738
+ * <p>The URL sent by Amazon Q Business to a third party authentication server in response to an
3739
+ * authentication verification event activated by an end user request to use a custom
3740
+ * plugin. </p>
3741
+ * @public
3742
+ */
3743
+ authorizationUrl: string | undefined;
3744
+ }
3745
+ /**
3746
+ * <p>Contains details of the authentication information received from a third party
3747
+ * authentication server in response to an authentication challenge.</p>
3748
+ * @public
3749
+ */
3750
+ export interface AuthChallengeResponse {
3751
+ /**
3752
+ * <p>The mapping of key-value pairs in an authentication challenge response.</p>
3753
+ * @public
3754
+ */
3755
+ responseMap: Record<string, string> | undefined;
3756
+ }
3757
+ /**
3758
+ * <p>An authentication verification event response by a third party authentication server
3759
+ * to Amazon Q Business.</p>
3760
+ * @public
3761
+ */
3762
+ export interface AuthChallengeResponseEvent {
3763
+ /**
3764
+ * <p>The mapping of key-value pairs in an authentication challenge response.</p>
3765
+ * @public
3766
+ */
3767
+ responseMap: Record<string, string> | undefined;
3768
+ }
3408
3769
  /**
3409
3770
  * <p>A document deleted from an Amazon Q Business data source connector.</p>
3410
3771
  * @public
@@ -3479,23 +3840,6 @@ export interface BatchDeleteDocumentResponse {
3479
3840
  */
3480
3841
  failedDocuments?: FailedDocument[];
3481
3842
  }
3482
- /**
3483
- * <p>Information required for Amazon Q Business to find a specific file in an Amazon S3
3484
- * bucket.</p>
3485
- * @public
3486
- */
3487
- export interface S3 {
3488
- /**
3489
- * <p>The name of the S3 bucket that contains the file.</p>
3490
- * @public
3491
- */
3492
- bucket: string | undefined;
3493
- /**
3494
- * <p>The name of the file.</p>
3495
- * @public
3496
- */
3497
- key: string | undefined;
3498
- }
3499
3843
  /**
3500
3844
  * <p>The contents of a document.</p>
3501
3845
  * @public
@@ -3751,6 +4095,62 @@ export declare namespace ChatModeConfiguration {
3751
4095
  }
3752
4096
  const visit: <T>(value: ChatModeConfiguration, visitor: Visitor<T>) => T;
3753
4097
  }
4098
+ /**
4099
+ * <p>The end of the streaming input for the <code>Chat</code> API.</p>
4100
+ * @public
4101
+ */
4102
+ export interface EndOfInputEvent {
4103
+ }
4104
+ /**
4105
+ * <p>An input event for a end user message in an Amazon Q Business web experience. </p>
4106
+ * @public
4107
+ */
4108
+ export interface TextInputEvent {
4109
+ /**
4110
+ * <p>A user message in a text message input event.</p>
4111
+ * @public
4112
+ */
4113
+ userMessage: string | undefined;
4114
+ }
4115
+ /**
4116
+ * <p>A failed file upload during web experience chat.</p>
4117
+ * @public
4118
+ */
4119
+ export interface FailedAttachmentEvent {
4120
+ /**
4121
+ * <p> The identifier of the conversation associated with the failed file upload.</p>
4122
+ * @public
4123
+ */
4124
+ conversationId?: string;
4125
+ /**
4126
+ * <p>The identifier of the end user chat message associated with the file upload.</p>
4127
+ * @public
4128
+ */
4129
+ userMessageId?: string;
4130
+ /**
4131
+ * <p>The identifier of the AI-generated message associated with the file upload.</p>
4132
+ * @public
4133
+ */
4134
+ systemMessageId?: string;
4135
+ /**
4136
+ * <p>The details of a file uploaded during chat.</p>
4137
+ * @public
4138
+ */
4139
+ attachment?: AttachmentOutput;
4140
+ }
4141
+ /**
4142
+ * <p>Contains the relevant text excerpt from a source that was used to generate a citation
4143
+ * text segment in an Amazon Q Business chat response.</p>
4144
+ * @public
4145
+ */
4146
+ export interface SnippetExcerpt {
4147
+ /**
4148
+ * <p>The relevant text excerpt from a source that was used to generate a citation text
4149
+ * segment in an Amazon Q chat response.</p>
4150
+ * @public
4151
+ */
4152
+ text?: string;
4153
+ }
3754
4154
  /**
3755
4155
  * <p>Provides information about a text extract in a chat response that can be attributed to
3756
4156
  * a source document.</p>
@@ -3769,6 +4169,12 @@ export interface TextSegment {
3769
4169
  * @public
3770
4170
  */
3771
4171
  endOffset?: number;
4172
+ /**
4173
+ * <p>The relevant text excerpt from a source that was used to generate a citation text
4174
+ * segment in an Amazon Q Business chat response.</p>
4175
+ * @public
4176
+ */
4177
+ snippetExcerpt?: SnippetExcerpt;
3772
4178
  }
3773
4179
  /**
3774
4180
  * <p>The documents used to generate an Amazon Q Business web experience response.</p>
@@ -3810,19 +4216,23 @@ export interface SourceAttribution {
3810
4216
  textMessageSegments?: TextSegment[];
3811
4217
  }
3812
4218
  /**
4219
+ * <p>A metadata event for a AI-generated text output message in a Amazon Q Business
4220
+ * conversation, containing associated metadata generated.</p>
3813
4221
  * @public
3814
4222
  */
3815
- export interface ChatSyncOutput {
4223
+ export interface MetadataEvent {
3816
4224
  /**
3817
- * <p>The identifier of the Amazon Q Business conversation.</p>
4225
+ * <p>The identifier of the conversation with which the generated metadata is
4226
+ * associated.</p>
3818
4227
  * @public
3819
4228
  */
3820
4229
  conversationId?: string;
3821
4230
  /**
3822
- * <p>An AI-generated message in a conversation.</p>
4231
+ * <p>The identifier of an Amazon Q Business end user text input message within the
4232
+ * conversation.</p>
3823
4233
  * @public
3824
4234
  */
3825
- systemMessage?: string;
4235
+ userMessageId?: string;
3826
4236
  /**
3827
4237
  * <p>The identifier of an Amazon Q Business AI generated message within the
3828
4238
  * conversation.</p>
@@ -3830,27 +4240,147 @@ export interface ChatSyncOutput {
3830
4240
  */
3831
4241
  systemMessageId?: string;
3832
4242
  /**
3833
- * <p>The identifier of an Amazon Q Business end user text input message within the
3834
- * conversation.</p>
4243
+ * <p>The source documents used to generate the conversation response.</p>
4244
+ * @public
4245
+ */
4246
+ sourceAttributions?: SourceAttribution[];
4247
+ /**
4248
+ * <p>The final text output message generated by the system.</p>
4249
+ * @public
4250
+ */
4251
+ finalTextMessage?: string;
4252
+ }
4253
+ /**
4254
+ * <p>An output event for an AI-generated response in an Amazon Q Business web
4255
+ * experience.</p>
4256
+ * @public
4257
+ */
4258
+ export interface TextOutputEvent {
4259
+ /**
4260
+ * <p>The identifier of the conversation with which the text output event is
4261
+ * associated.</p>
4262
+ * @public
4263
+ */
4264
+ conversationId?: string;
4265
+ /**
4266
+ * <p>The identifier of an end user message in a <code>TextOutputEvent</code>.</p>
3835
4267
  * @public
3836
4268
  */
3837
4269
  userMessageId?: string;
4270
+ /**
4271
+ * <p>The identifier of an AI-generated message in a <code>TextOutputEvent</code>.</p>
4272
+ * @public
4273
+ */
4274
+ systemMessageId?: string;
4275
+ /**
4276
+ * <p>An AI-generated message in a <code>TextOutputEvent</code>.</p>
4277
+ * @public
4278
+ */
4279
+ systemMessage?: string;
4280
+ }
4281
+ /**
4282
+ * <p>The streaming output for the <code>Chat</code> API.</p>
4283
+ * @public
4284
+ */
4285
+ export type ChatOutputStream = ChatOutputStream.ActionReviewEventMember | ChatOutputStream.AuthChallengeRequestEventMember | ChatOutputStream.FailedAttachmentEventMember | ChatOutputStream.MetadataEventMember | ChatOutputStream.TextEventMember | ChatOutputStream.$UnknownMember;
4286
+ /**
4287
+ * @public
4288
+ */
4289
+ export declare namespace ChatOutputStream {
4290
+ /**
4291
+ * <p>Information about the payload of the <code>ChatOutputStream</code> event containing
4292
+ * the AI-generated message output.</p>
4293
+ * @public
4294
+ */
4295
+ interface TextEventMember {
4296
+ textEvent: TextOutputEvent;
4297
+ metadataEvent?: never;
4298
+ actionReviewEvent?: never;
4299
+ failedAttachmentEvent?: never;
4300
+ authChallengeRequestEvent?: never;
4301
+ $unknown?: never;
4302
+ }
4303
+ /**
4304
+ * <p>A metadata event for a AI-generated text output message in a Amazon Q Business
4305
+ * conversation. </p>
4306
+ * @public
4307
+ */
4308
+ interface MetadataEventMember {
4309
+ textEvent?: never;
4310
+ metadataEvent: MetadataEvent;
4311
+ actionReviewEvent?: never;
4312
+ failedAttachmentEvent?: never;
4313
+ authChallengeRequestEvent?: never;
4314
+ $unknown?: never;
4315
+ }
3838
4316
  /**
3839
4317
  * <p>A request from Amazon Q Business to the end user for information Amazon Q Business needs to
3840
4318
  * successfully complete a requested plugin action.</p>
3841
4319
  * @public
3842
4320
  */
3843
- actionReview?: ActionReview;
4321
+ interface ActionReviewEventMember {
4322
+ textEvent?: never;
4323
+ metadataEvent?: never;
4324
+ actionReviewEvent: ActionReviewEvent;
4325
+ failedAttachmentEvent?: never;
4326
+ authChallengeRequestEvent?: never;
4327
+ $unknown?: never;
4328
+ }
3844
4329
  /**
3845
- * <p>The source documents used to generate the conversation response.</p>
4330
+ * <p>A failed file upload event during a web experience chat.</p>
3846
4331
  * @public
3847
4332
  */
3848
- sourceAttributions?: SourceAttribution[];
4333
+ interface FailedAttachmentEventMember {
4334
+ textEvent?: never;
4335
+ metadataEvent?: never;
4336
+ actionReviewEvent?: never;
4337
+ failedAttachmentEvent: FailedAttachmentEvent;
4338
+ authChallengeRequestEvent?: never;
4339
+ $unknown?: never;
4340
+ }
3849
4341
  /**
3850
- * <p>A list of files which failed to upload during chat.</p>
4342
+ * <p>An authentication verification event activated by an end user request to use a custom
4343
+ * plugin.</p>
3851
4344
  * @public
3852
4345
  */
3853
- failedAttachments?: AttachmentOutput[];
4346
+ interface AuthChallengeRequestEventMember {
4347
+ textEvent?: never;
4348
+ metadataEvent?: never;
4349
+ actionReviewEvent?: never;
4350
+ failedAttachmentEvent?: never;
4351
+ authChallengeRequestEvent: AuthChallengeRequestEvent;
4352
+ $unknown?: never;
4353
+ }
4354
+ /**
4355
+ * @public
4356
+ */
4357
+ interface $UnknownMember {
4358
+ textEvent?: never;
4359
+ metadataEvent?: never;
4360
+ actionReviewEvent?: never;
4361
+ failedAttachmentEvent?: never;
4362
+ authChallengeRequestEvent?: never;
4363
+ $unknown: [string, any];
4364
+ }
4365
+ interface Visitor<T> {
4366
+ textEvent: (value: TextOutputEvent) => T;
4367
+ metadataEvent: (value: MetadataEvent) => T;
4368
+ actionReviewEvent: (value: ActionReviewEvent) => T;
4369
+ failedAttachmentEvent: (value: FailedAttachmentEvent) => T;
4370
+ authChallengeRequestEvent: (value: AuthChallengeRequestEvent) => T;
4371
+ _: (name: string, value: any) => T;
4372
+ }
4373
+ const visit: <T>(value: ChatOutputStream, visitor: Visitor<T>) => T;
4374
+ }
4375
+ /**
4376
+ * @public
4377
+ */
4378
+ export interface ChatOutput {
4379
+ /**
4380
+ * <p>The streaming output for the <code>Chat</code> API.</p>
4381
+ * @public
4382
+ */
4383
+ outputStream?: AsyncIterable<ChatOutputStream>;
3854
4384
  }
3855
4385
  /**
3856
4386
  * <p>You don't have permissions to perform the action because your license is inactive. Ask
@@ -3865,6 +4395,55 @@ export declare class LicenseNotFoundException extends __BaseException {
3865
4395
  */
3866
4396
  constructor(opts: __ExceptionOptionType<LicenseNotFoundException, __BaseException>);
3867
4397
  }
4398
+ /**
4399
+ * @public
4400
+ */
4401
+ export interface ChatSyncOutput {
4402
+ /**
4403
+ * <p>The identifier of the Amazon Q Business conversation.</p>
4404
+ * @public
4405
+ */
4406
+ conversationId?: string;
4407
+ /**
4408
+ * <p>An AI-generated message in a conversation.</p>
4409
+ * @public
4410
+ */
4411
+ systemMessage?: string;
4412
+ /**
4413
+ * <p>The identifier of an Amazon Q Business AI generated message within the
4414
+ * conversation.</p>
4415
+ * @public
4416
+ */
4417
+ systemMessageId?: string;
4418
+ /**
4419
+ * <p>The identifier of an Amazon Q Business end user text input message within the
4420
+ * conversation.</p>
4421
+ * @public
4422
+ */
4423
+ userMessageId?: string;
4424
+ /**
4425
+ * <p>A request from Amazon Q Business to the end user for information Amazon Q Business needs to
4426
+ * successfully complete a requested plugin action.</p>
4427
+ * @public
4428
+ */
4429
+ actionReview?: ActionReview;
4430
+ /**
4431
+ * <p>An authentication verification event activated by an end user request to use a custom
4432
+ * plugin.</p>
4433
+ * @public
4434
+ */
4435
+ authChallengeRequest?: AuthChallengeRequest;
4436
+ /**
4437
+ * <p>The source documents used to generate the conversation response.</p>
4438
+ * @public
4439
+ */
4440
+ sourceAttributions?: SourceAttribution[];
4441
+ /**
4442
+ * <p>A list of files which failed to upload during chat.</p>
4443
+ * @public
4444
+ */
4445
+ failedAttachments?: AttachmentOutput[];
4446
+ }
3868
4447
  /**
3869
4448
  * <p>A rule for configuring how Amazon Q Business responds when it encounters a a blocked
3870
4449
  * topic. You can configure a custom message to inform your end users that they have asked
@@ -5400,6 +5979,12 @@ export interface ChatSyncInput {
5400
5979
  * @public
5401
5980
  */
5402
5981
  actionExecution?: ActionExecution;
5982
+ /**
5983
+ * <p>An authentication verification event response by a third party authentication server
5984
+ * to Amazon Q Business.</p>
5985
+ * @public
5986
+ */
5987
+ authChallengeResponse?: AuthChallengeResponse;
5403
5988
  /**
5404
5989
  * <p>The identifier of the Amazon Q Business conversation.</p>
5405
5990
  * @public
@@ -5417,7 +6002,7 @@ export interface ChatSyncInput {
5417
6002
  */
5418
6003
  attributeFilter?: AttributeFilter;
5419
6004
  /**
5420
- * <p>The chat modes available in an Amazon Q Business web experience.</p>
6005
+ * <p>The chat modes available to an Amazon Q Business end user.</p>
5421
6006
  * <ul>
5422
6007
  * <li>
5423
6008
  * <p>
@@ -5454,6 +6039,209 @@ export interface ChatSyncInput {
5454
6039
  */
5455
6040
  clientToken?: string;
5456
6041
  }
6042
+ /**
6043
+ * <p>A configuration event activated by an end user request to select a specific chat
6044
+ * mode.</p>
6045
+ * @public
6046
+ */
6047
+ export interface ConfigurationEvent {
6048
+ /**
6049
+ * <p>The chat modes available to an Amazon Q Business end user.</p>
6050
+ * <ul>
6051
+ * <li>
6052
+ * <p>
6053
+ * <code>RETRIEVAL_MODE</code> - The default chat mode for an
6054
+ * Amazon Q Business application. When this mode is enabled, Amazon Q Business generates
6055
+ * responses only from data sources connected to an Amazon Q Business
6056
+ * application.</p>
6057
+ * </li>
6058
+ * <li>
6059
+ * <p>
6060
+ * <code>CREATOR_MODE</code> - By selecting this mode, users can choose to
6061
+ * generate responses only from the LLM knowledge, without consulting connected
6062
+ * data sources, for a chat request.</p>
6063
+ * </li>
6064
+ * <li>
6065
+ * <p>
6066
+ * <code>PLUGIN_MODE</code> - By selecting this mode, users can choose to
6067
+ * use plugins in chat.</p>
6068
+ * </li>
6069
+ * </ul>
6070
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html">Admin controls and guardrails</a>, <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/plugins.html">Plugins</a>,
6071
+ * and <a href="https://docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope">Conversation settings</a>.</p>
6072
+ * @public
6073
+ */
6074
+ chatMode?: ChatMode;
6075
+ /**
6076
+ * <p>Configuration information for Amazon Q Business conversation modes.</p>
6077
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/guardrails.html">Admin controls and guardrails</a> and <a href="https://docs.aws.amazon.com/amazonq/latest/business-use-dg/using-web-experience.html#chat-source-scope">Conversation settings</a>.</p>
6078
+ * @public
6079
+ */
6080
+ chatModeConfiguration?: ChatModeConfiguration;
6081
+ /**
6082
+ * <p>Enables filtering of responses based on document attributes or metadata fields.</p>
6083
+ * @public
6084
+ */
6085
+ attributeFilter?: AttributeFilter;
6086
+ }
6087
+ /**
6088
+ * <p>The streaming input for the <code>Chat</code> API.</p>
6089
+ * @public
6090
+ */
6091
+ export type ChatInputStream = ChatInputStream.ActionExecutionEventMember | ChatInputStream.AttachmentEventMember | ChatInputStream.AuthChallengeResponseEventMember | ChatInputStream.ConfigurationEventMember | ChatInputStream.EndOfInputEventMember | ChatInputStream.TextEventMember | ChatInputStream.$UnknownMember;
6092
+ /**
6093
+ * @public
6094
+ */
6095
+ export declare namespace ChatInputStream {
6096
+ /**
6097
+ * <p>A configuration event activated by an end user request to select a specific chat
6098
+ * mode.</p>
6099
+ * @public
6100
+ */
6101
+ interface ConfigurationEventMember {
6102
+ configurationEvent: ConfigurationEvent;
6103
+ textEvent?: never;
6104
+ attachmentEvent?: never;
6105
+ actionExecutionEvent?: never;
6106
+ endOfInputEvent?: never;
6107
+ authChallengeResponseEvent?: never;
6108
+ $unknown?: never;
6109
+ }
6110
+ /**
6111
+ * <p>Information about the payload of the <code>ChatInputStream</code> event containing the
6112
+ * end user message input.</p>
6113
+ * @public
6114
+ */
6115
+ interface TextEventMember {
6116
+ configurationEvent?: never;
6117
+ textEvent: TextInputEvent;
6118
+ attachmentEvent?: never;
6119
+ actionExecutionEvent?: never;
6120
+ endOfInputEvent?: never;
6121
+ authChallengeResponseEvent?: never;
6122
+ $unknown?: never;
6123
+ }
6124
+ /**
6125
+ * <p>A request by an end user to upload a file during chat.</p>
6126
+ * @public
6127
+ */
6128
+ interface AttachmentEventMember {
6129
+ configurationEvent?: never;
6130
+ textEvent?: never;
6131
+ attachmentEvent: AttachmentInputEvent;
6132
+ actionExecutionEvent?: never;
6133
+ endOfInputEvent?: never;
6134
+ authChallengeResponseEvent?: never;
6135
+ $unknown?: never;
6136
+ }
6137
+ /**
6138
+ * <p>A request from an end user to perform an Amazon Q Business plugin action.</p>
6139
+ * @public
6140
+ */
6141
+ interface ActionExecutionEventMember {
6142
+ configurationEvent?: never;
6143
+ textEvent?: never;
6144
+ attachmentEvent?: never;
6145
+ actionExecutionEvent: ActionExecutionEvent;
6146
+ endOfInputEvent?: never;
6147
+ authChallengeResponseEvent?: never;
6148
+ $unknown?: never;
6149
+ }
6150
+ /**
6151
+ * <p>The end of the streaming input for the <code>Chat</code> API.</p>
6152
+ * @public
6153
+ */
6154
+ interface EndOfInputEventMember {
6155
+ configurationEvent?: never;
6156
+ textEvent?: never;
6157
+ attachmentEvent?: never;
6158
+ actionExecutionEvent?: never;
6159
+ endOfInputEvent: EndOfInputEvent;
6160
+ authChallengeResponseEvent?: never;
6161
+ $unknown?: never;
6162
+ }
6163
+ /**
6164
+ * <p>An authentication verification event response by a third party authentication server
6165
+ * to Amazon Q Business.</p>
6166
+ * @public
6167
+ */
6168
+ interface AuthChallengeResponseEventMember {
6169
+ configurationEvent?: never;
6170
+ textEvent?: never;
6171
+ attachmentEvent?: never;
6172
+ actionExecutionEvent?: never;
6173
+ endOfInputEvent?: never;
6174
+ authChallengeResponseEvent: AuthChallengeResponseEvent;
6175
+ $unknown?: never;
6176
+ }
6177
+ /**
6178
+ * @public
6179
+ */
6180
+ interface $UnknownMember {
6181
+ configurationEvent?: never;
6182
+ textEvent?: never;
6183
+ attachmentEvent?: never;
6184
+ actionExecutionEvent?: never;
6185
+ endOfInputEvent?: never;
6186
+ authChallengeResponseEvent?: never;
6187
+ $unknown: [string, any];
6188
+ }
6189
+ interface Visitor<T> {
6190
+ configurationEvent: (value: ConfigurationEvent) => T;
6191
+ textEvent: (value: TextInputEvent) => T;
6192
+ attachmentEvent: (value: AttachmentInputEvent) => T;
6193
+ actionExecutionEvent: (value: ActionExecutionEvent) => T;
6194
+ endOfInputEvent: (value: EndOfInputEvent) => T;
6195
+ authChallengeResponseEvent: (value: AuthChallengeResponseEvent) => T;
6196
+ _: (name: string, value: any) => T;
6197
+ }
6198
+ const visit: <T>(value: ChatInputStream, visitor: Visitor<T>) => T;
6199
+ }
6200
+ /**
6201
+ * @public
6202
+ */
6203
+ export interface ChatInput {
6204
+ /**
6205
+ * <p>The identifier of the Amazon Q Business application linked to a streaming Amazon Q Business
6206
+ * conversation.</p>
6207
+ * @public
6208
+ */
6209
+ applicationId: string | undefined;
6210
+ /**
6211
+ * <p>The identifier of the user attached to the chat input. </p>
6212
+ * @public
6213
+ */
6214
+ userId?: string;
6215
+ /**
6216
+ * <p>The groups that a user associated with the chat input belongs to.</p>
6217
+ * @public
6218
+ */
6219
+ userGroups?: string[];
6220
+ /**
6221
+ * <p>The identifier of the Amazon Q Business conversation.</p>
6222
+ * @public
6223
+ */
6224
+ conversationId?: string;
6225
+ /**
6226
+ * <p>The identifier used to associate a user message with a AI generated response.</p>
6227
+ * @public
6228
+ */
6229
+ parentMessageId?: string;
6230
+ /**
6231
+ * <p>A token that you provide to identify the chat input.</p>
6232
+ * @public
6233
+ */
6234
+ clientToken?: string;
6235
+ /**
6236
+ * <p>The streaming input for the <code>Chat</code> API.</p>
6237
+ * @public
6238
+ */
6239
+ inputStream?: AsyncIterable<ChatInputStream>;
6240
+ }
6241
+ /**
6242
+ * @internal
6243
+ */
6244
+ export declare const APISchemaFilterSensitiveLog: (obj: APISchema) => any;
5457
6245
  /**
5458
6246
  * @internal
5459
6247
  */
@@ -5466,3 +6254,35 @@ export declare const CreateApplicationRequestFilterSensitiveLog: (obj: CreateApp
5466
6254
  * @internal
5467
6255
  */
5468
6256
  export declare const GetApplicationResponseFilterSensitiveLog: (obj: GetApplicationResponse) => any;
6257
+ /**
6258
+ * @internal
6259
+ */
6260
+ export declare const CustomPluginConfigurationFilterSensitiveLog: (obj: CustomPluginConfiguration) => any;
6261
+ /**
6262
+ * @internal
6263
+ */
6264
+ export declare const CreatePluginRequestFilterSensitiveLog: (obj: CreatePluginRequest) => any;
6265
+ /**
6266
+ * @internal
6267
+ */
6268
+ export declare const GetPluginResponseFilterSensitiveLog: (obj: GetPluginResponse) => any;
6269
+ /**
6270
+ * @internal
6271
+ */
6272
+ export declare const UpdatePluginRequestFilterSensitiveLog: (obj: UpdatePluginRequest) => any;
6273
+ /**
6274
+ * @internal
6275
+ */
6276
+ export declare const ChatOutputStreamFilterSensitiveLog: (obj: ChatOutputStream) => any;
6277
+ /**
6278
+ * @internal
6279
+ */
6280
+ export declare const ChatOutputFilterSensitiveLog: (obj: ChatOutput) => any;
6281
+ /**
6282
+ * @internal
6283
+ */
6284
+ export declare const ChatInputStreamFilterSensitiveLog: (obj: ChatInputStream) => any;
6285
+ /**
6286
+ * @internal
6287
+ */
6288
+ export declare const ChatInputFilterSensitiveLog: (obj: ChatInput) => any;