@aws-sdk/client-qbusiness 3.565.0 → 3.567.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 +19 -15
@@ -2,7 +2,7 @@ import { awsExpectUnion as __expectUnion, loadRestJsonErrorCode, parseJsonBody a
2
2
  import { requestBuilder as rb } from "@smithy/core";
3
3
  import { _json, collectBody, decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, expectString as __expectString, map, parseEpochTimestamp as __parseEpochTimestamp, take, withBaseException, } from "@smithy/smithy-client";
4
4
  import { v4 as generateIdempotencyToken } from "uuid";
5
- import { AccessDeniedException, ConflictException, DocumentAttributeValue, DocumentContent, InternalServerException, LicenseNotFoundException, ResourceNotFoundException, ServiceQuotaExceededException, ThrottlingException, ValidationException, } from "../models/models_0";
5
+ import { AccessDeniedException, ChatInputStream, ConflictException, DocumentAttributeValue, DocumentContent, InternalServerException, LicenseNotFoundException, ResourceNotFoundException, ServiceQuotaExceededException, ThrottlingException, ValidationException, } from "../models/models_0";
6
6
  import { QBusinessServiceException as __BaseException } from "../models/QBusinessServiceException";
7
7
  export const se_BatchDeleteDocumentCommand = async (input, context) => {
8
8
  const b = rb(input, context);
@@ -37,6 +37,25 @@ export const se_BatchPutDocumentCommand = async (input, context) => {
37
37
  b.m("POST").h(headers).b(body);
38
38
  return b.build();
39
39
  };
40
+ export const se_ChatCommand = async (input, context) => {
41
+ const b = rb(input, context);
42
+ const headers = {};
43
+ b.bp("/applications/{applicationId}/conversations");
44
+ b.p("applicationId", () => input.applicationId, "{applicationId}", false);
45
+ const query = map({
46
+ [_uI]: [, input[_uI]],
47
+ [_uG]: [() => input.userGroups !== void 0, () => (input[_uG] || []).map((_entry) => _entry)],
48
+ [_cI]: [, input[_cI]],
49
+ [_pMI]: [, input[_pMI]],
50
+ [_cT]: [, input[_cT] ?? generateIdempotencyToken()],
51
+ });
52
+ let body;
53
+ if (input.inputStream !== undefined) {
54
+ body = se_ChatInputStream(input.inputStream, context);
55
+ }
56
+ b.m("POST").h(headers).q(query).b(body);
57
+ return b.build();
58
+ };
40
59
  export const se_ChatSyncCommand = async (input, context) => {
41
60
  const b = rb(input, context);
42
61
  const headers = {
@@ -54,6 +73,7 @@ export const se_ChatSyncCommand = async (input, context) => {
54
73
  actionExecution: (_) => se_ActionExecution(_, context),
55
74
  attachments: (_) => se_AttachmentsInput(_, context),
56
75
  attributeFilter: (_) => se_AttributeFilter(_, context),
76
+ authChallengeResponse: (_) => _json(_),
57
77
  chatMode: [],
58
78
  chatModeConfiguration: (_) => _json(_),
59
79
  clientToken: [true, (_) => _ ?? generateIdempotencyToken()],
@@ -121,6 +141,7 @@ export const se_CreateIndexCommand = async (input, context) => {
121
141
  description: [],
122
142
  displayName: [],
123
143
  tags: (_) => _json(_),
144
+ type: [],
124
145
  }));
125
146
  b.m("POST").h(headers).b(body);
126
147
  return b.build();
@@ -136,6 +157,7 @@ export const se_CreatePluginCommand = async (input, context) => {
136
157
  body = JSON.stringify(take(input, {
137
158
  authConfiguration: (_) => _json(_),
138
159
  clientToken: [true, (_) => _ ?? generateIdempotencyToken()],
160
+ customPluginConfiguration: (_) => _json(_),
139
161
  displayName: [],
140
162
  serverUrl: [],
141
163
  tags: (_) => _json(_),
@@ -671,6 +693,7 @@ export const se_UpdateApplicationCommand = async (input, context) => {
671
693
  attachmentsConfiguration: (_) => _json(_),
672
694
  description: [],
673
695
  displayName: [],
696
+ identityCenterInstanceArn: [],
674
697
  roleArn: [],
675
698
  }));
676
699
  b.m("PUT").h(headers).b(body);
@@ -746,6 +769,7 @@ export const se_UpdatePluginCommand = async (input, context) => {
746
769
  let body;
747
770
  body = JSON.stringify(take(input, {
748
771
  authConfiguration: (_) => _json(_),
772
+ customPluginConfiguration: (_) => _json(_),
749
773
  displayName: [],
750
774
  serverUrl: [],
751
775
  state: [],
@@ -797,6 +821,7 @@ export const se_UpdateWebExperienceCommand = async (input, context) => {
797
821
  let body;
798
822
  body = JSON.stringify(take(input, {
799
823
  authenticationConfiguration: (_) => _json(_),
824
+ roleArn: [],
800
825
  samplePromptsControlMode: [],
801
826
  subtitle: [],
802
827
  title: [],
@@ -833,6 +858,17 @@ export const de_BatchPutDocumentCommand = async (output, context) => {
833
858
  Object.assign(contents, doc);
834
859
  return contents;
835
860
  };
861
+ export const de_ChatCommand = async (output, context) => {
862
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
863
+ return de_CommandError(output, context);
864
+ }
865
+ const contents = map({
866
+ $metadata: deserializeMetadata(output),
867
+ });
868
+ const data = output.body;
869
+ contents.outputStream = de_ChatOutputStream(data, context);
870
+ return contents;
871
+ };
836
872
  export const de_ChatSyncCommand = async (output, context) => {
837
873
  if (output.statusCode !== 200 && output.statusCode >= 300) {
838
874
  return de_CommandError(output, context);
@@ -843,6 +879,7 @@ export const de_ChatSyncCommand = async (output, context) => {
843
879
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
844
880
  const doc = take(data, {
845
881
  actionReview: (_) => de_ActionReview(_, context),
882
+ authChallengeRequest: _json,
846
883
  conversationId: __expectString,
847
884
  failedAttachments: _json,
848
885
  sourceAttributions: (_) => de_SourceAttributions(_, context),
@@ -907,6 +944,7 @@ export const de_CreatePluginCommand = async (output, context) => {
907
944
  });
908
945
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
909
946
  const doc = take(data, {
947
+ buildStatus: __expectString,
910
948
  pluginArn: __expectString,
911
949
  pluginId: __expectString,
912
950
  });
@@ -1160,6 +1198,7 @@ export const de_GetIndexCommand = async (output, context) => {
1160
1198
  indexId: __expectString,
1161
1199
  indexStatistics: _json,
1162
1200
  status: __expectString,
1201
+ type: __expectString,
1163
1202
  updatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1164
1203
  });
1165
1204
  Object.assign(contents, doc);
@@ -1176,7 +1215,9 @@ export const de_GetPluginCommand = async (output, context) => {
1176
1215
  const doc = take(data, {
1177
1216
  applicationId: __expectString,
1178
1217
  authConfiguration: (_) => _json(__expectUnion(_)),
1218
+ buildStatus: __expectString,
1179
1219
  createdAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1220
+ customPluginConfiguration: _json,
1180
1221
  displayName: __expectString,
1181
1222
  pluginArn: __expectString,
1182
1223
  pluginId: __expectString,
@@ -1734,6 +1775,144 @@ const de_ValidationExceptionRes = async (parsedOutput, context) => {
1734
1775
  });
1735
1776
  return __decorateServiceException(exception, parsedOutput.body);
1736
1777
  };
1778
+ const se_ChatInputStream = (input, context) => {
1779
+ const eventMarshallingVisitor = (event) => ChatInputStream.visit(event, {
1780
+ configurationEvent: (value) => se_ConfigurationEvent_event(value, context),
1781
+ textEvent: (value) => se_TextInputEvent_event(value, context),
1782
+ attachmentEvent: (value) => se_AttachmentInputEvent_event(value, context),
1783
+ actionExecutionEvent: (value) => se_ActionExecutionEvent_event(value, context),
1784
+ endOfInputEvent: (value) => se_EndOfInputEvent_event(value, context),
1785
+ authChallengeResponseEvent: (value) => se_AuthChallengeResponseEvent_event(value, context),
1786
+ _: (value) => value,
1787
+ });
1788
+ return context.eventStreamMarshaller.serialize(input, eventMarshallingVisitor);
1789
+ };
1790
+ const se_ActionExecutionEvent_event = (input, context) => {
1791
+ const headers = {
1792
+ ":event-type": { type: "string", value: "ActionExecutionEvent" },
1793
+ ":message-type": { type: "string", value: "event" },
1794
+ ":content-type": { type: "string", value: "application/json" },
1795
+ };
1796
+ let body = new Uint8Array();
1797
+ body = se_ActionExecutionEvent(input, context);
1798
+ body = context.utf8Decoder(JSON.stringify(body));
1799
+ return { headers, body };
1800
+ };
1801
+ const se_AttachmentInputEvent_event = (input, context) => {
1802
+ const headers = {
1803
+ ":event-type": { type: "string", value: "AttachmentInputEvent" },
1804
+ ":message-type": { type: "string", value: "event" },
1805
+ ":content-type": { type: "string", value: "application/json" },
1806
+ };
1807
+ let body = new Uint8Array();
1808
+ body = se_AttachmentInputEvent(input, context);
1809
+ body = context.utf8Decoder(JSON.stringify(body));
1810
+ return { headers, body };
1811
+ };
1812
+ const se_AuthChallengeResponseEvent_event = (input, context) => {
1813
+ const headers = {
1814
+ ":event-type": { type: "string", value: "AuthChallengeResponseEvent" },
1815
+ ":message-type": { type: "string", value: "event" },
1816
+ ":content-type": { type: "string", value: "application/json" },
1817
+ };
1818
+ let body = new Uint8Array();
1819
+ body = _json(input);
1820
+ body = context.utf8Decoder(JSON.stringify(body));
1821
+ return { headers, body };
1822
+ };
1823
+ const se_ConfigurationEvent_event = (input, context) => {
1824
+ const headers = {
1825
+ ":event-type": { type: "string", value: "ConfigurationEvent" },
1826
+ ":message-type": { type: "string", value: "event" },
1827
+ ":content-type": { type: "string", value: "application/json" },
1828
+ };
1829
+ let body = new Uint8Array();
1830
+ body = se_ConfigurationEvent(input, context);
1831
+ body = context.utf8Decoder(JSON.stringify(body));
1832
+ return { headers, body };
1833
+ };
1834
+ const se_EndOfInputEvent_event = (input, context) => {
1835
+ const headers = {
1836
+ ":event-type": { type: "string", value: "EndOfInputEvent" },
1837
+ ":message-type": { type: "string", value: "event" },
1838
+ ":content-type": { type: "string", value: "application/json" },
1839
+ };
1840
+ let body = new Uint8Array();
1841
+ body = _json(input);
1842
+ body = context.utf8Decoder(JSON.stringify(body));
1843
+ return { headers, body };
1844
+ };
1845
+ const se_TextInputEvent_event = (input, context) => {
1846
+ const headers = {
1847
+ ":event-type": { type: "string", value: "TextInputEvent" },
1848
+ ":message-type": { type: "string", value: "event" },
1849
+ ":content-type": { type: "string", value: "application/json" },
1850
+ };
1851
+ let body = new Uint8Array();
1852
+ body = _json(input);
1853
+ body = context.utf8Decoder(JSON.stringify(body));
1854
+ return { headers, body };
1855
+ };
1856
+ const de_ChatOutputStream = (output, context) => {
1857
+ return context.eventStreamMarshaller.deserialize(output, async (event) => {
1858
+ if (event["textEvent"] != null) {
1859
+ return {
1860
+ textEvent: await de_TextOutputEvent_event(event["textEvent"], context),
1861
+ };
1862
+ }
1863
+ if (event["metadataEvent"] != null) {
1864
+ return {
1865
+ metadataEvent: await de_MetadataEvent_event(event["metadataEvent"], context),
1866
+ };
1867
+ }
1868
+ if (event["actionReviewEvent"] != null) {
1869
+ return {
1870
+ actionReviewEvent: await de_ActionReviewEvent_event(event["actionReviewEvent"], context),
1871
+ };
1872
+ }
1873
+ if (event["failedAttachmentEvent"] != null) {
1874
+ return {
1875
+ failedAttachmentEvent: await de_FailedAttachmentEvent_event(event["failedAttachmentEvent"], context),
1876
+ };
1877
+ }
1878
+ if (event["authChallengeRequestEvent"] != null) {
1879
+ return {
1880
+ authChallengeRequestEvent: await de_AuthChallengeRequestEvent_event(event["authChallengeRequestEvent"], context),
1881
+ };
1882
+ }
1883
+ return { $unknown: output };
1884
+ });
1885
+ };
1886
+ const de_ActionReviewEvent_event = async (output, context) => {
1887
+ const contents = {};
1888
+ const data = await parseBody(output.body, context);
1889
+ Object.assign(contents, de_ActionReviewEvent(data, context));
1890
+ return contents;
1891
+ };
1892
+ const de_AuthChallengeRequestEvent_event = async (output, context) => {
1893
+ const contents = {};
1894
+ const data = await parseBody(output.body, context);
1895
+ Object.assign(contents, _json(data));
1896
+ return contents;
1897
+ };
1898
+ const de_FailedAttachmentEvent_event = async (output, context) => {
1899
+ const contents = {};
1900
+ const data = await parseBody(output.body, context);
1901
+ Object.assign(contents, _json(data));
1902
+ return contents;
1903
+ };
1904
+ const de_MetadataEvent_event = async (output, context) => {
1905
+ const contents = {};
1906
+ const data = await parseBody(output.body, context);
1907
+ Object.assign(contents, de_MetadataEvent(data, context));
1908
+ return contents;
1909
+ };
1910
+ const de_TextOutputEvent_event = async (output, context) => {
1911
+ const contents = {};
1912
+ const data = await parseBody(output.body, context);
1913
+ Object.assign(contents, _json(data));
1914
+ return contents;
1915
+ };
1737
1916
  const se_ActionExecution = (input, context) => {
1738
1917
  return take(input, {
1739
1918
  payload: (_) => se_ActionExecutionPayload(_, context),
@@ -1741,6 +1920,13 @@ const se_ActionExecution = (input, context) => {
1741
1920
  pluginId: [],
1742
1921
  });
1743
1922
  };
1923
+ const se_ActionExecutionEvent = (input, context) => {
1924
+ return take(input, {
1925
+ payload: (_) => se_ActionExecutionPayload(_, context),
1926
+ payloadFieldNameSeparator: [],
1927
+ pluginId: [],
1928
+ });
1929
+ };
1744
1930
  const se_ActionExecutionPayload = (input, context) => {
1745
1931
  return Object.entries(input).reduce((acc, [key, value]) => {
1746
1932
  if (value === null) {
@@ -1764,6 +1950,11 @@ const se_AttachmentInput = (input, context) => {
1764
1950
  name: [],
1765
1951
  });
1766
1952
  };
1953
+ const se_AttachmentInputEvent = (input, context) => {
1954
+ return take(input, {
1955
+ attachment: (_) => se_AttachmentInput(_, context),
1956
+ });
1957
+ };
1767
1958
  const se_AttachmentsInput = (input, context) => {
1768
1959
  return input
1769
1960
  .filter((e) => e != null)
@@ -1792,6 +1983,13 @@ const se_AttributeFilters = (input, context) => {
1792
1983
  return se_AttributeFilter(entry, context);
1793
1984
  });
1794
1985
  };
1986
+ const se_ConfigurationEvent = (input, context) => {
1987
+ return take(input, {
1988
+ attributeFilter: (_) => se_AttributeFilter(_, context),
1989
+ chatMode: [],
1990
+ chatModeConfiguration: _json,
1991
+ });
1992
+ };
1795
1993
  const se_DataSourceConfiguration = (input, context) => {
1796
1994
  return input;
1797
1995
  };
@@ -1925,6 +2123,17 @@ const de_ActionReview = (output, context) => {
1925
2123
  pluginType: __expectString,
1926
2124
  });
1927
2125
  };
2126
+ const de_ActionReviewEvent = (output, context) => {
2127
+ return take(output, {
2128
+ conversationId: __expectString,
2129
+ payload: (_) => de_ActionReviewPayload(_, context),
2130
+ payloadFieldNameSeparator: __expectString,
2131
+ pluginId: __expectString,
2132
+ pluginType: __expectString,
2133
+ systemMessageId: __expectString,
2134
+ userMessageId: __expectString,
2135
+ });
2136
+ };
1928
2137
  const de_ActionReviewPayload = (output, context) => {
1929
2138
  return Object.entries(output).reduce((acc, [key, value]) => {
1930
2139
  if (value === null) {
@@ -1936,7 +2145,9 @@ const de_ActionReviewPayload = (output, context) => {
1936
2145
  };
1937
2146
  const de_ActionReviewPayloadField = (output, context) => {
1938
2147
  return take(output, {
2148
+ allowedFormat: __expectString,
1939
2149
  allowedValues: (_) => de_ActionReviewPayloadFieldAllowedValues(_, context),
2150
+ displayDescription: __expectString,
1940
2151
  displayName: __expectString,
1941
2152
  displayOrder: __expectInt32,
1942
2153
  required: __expectBoolean,
@@ -2162,8 +2373,18 @@ const de_Messages = (output, context) => {
2162
2373
  });
2163
2374
  return retVal;
2164
2375
  };
2376
+ const de_MetadataEvent = (output, context) => {
2377
+ return take(output, {
2378
+ conversationId: __expectString,
2379
+ finalTextMessage: __expectString,
2380
+ sourceAttributions: (_) => de_SourceAttributions(_, context),
2381
+ systemMessageId: __expectString,
2382
+ userMessageId: __expectString,
2383
+ });
2384
+ };
2165
2385
  const de_Plugin = (output, context) => {
2166
2386
  return take(output, {
2387
+ buildStatus: __expectString,
2167
2388
  createdAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
2168
2389
  displayName: __expectString,
2169
2390
  pluginId: __expectString,
@@ -2229,11 +2450,14 @@ const isSerializableHeaderValue = (value) => value !== undefined &&
2229
2450
  value !== "" &&
2230
2451
  (!Object.getOwnPropertyNames(value).includes("length") || value.length != 0) &&
2231
2452
  (!Object.getOwnPropertyNames(value).includes("size") || value.size != 0);
2453
+ const _cI = "conversationId";
2454
+ const _cT = "clientToken";
2232
2455
  const _dSI = "dataSourceId";
2233
2456
  const _dSIa = "dataSourceIds";
2234
2457
  const _eT = "endTime";
2235
2458
  const _mR = "maxResults";
2236
2459
  const _nT = "nextToken";
2460
+ const _pMI = "parentMessageId";
2237
2461
  const _s = "sync";
2238
2462
  const _sF = "statusFilter";
2239
2463
  const _sS = "syncStatus";
@@ -2,8 +2,9 @@ import packageInfo from "../package.json";
2
2
  import { Sha256 } from "@aws-crypto/sha256-browser";
3
3
  import { defaultUserAgent } from "@aws-sdk/util-user-agent-browser";
4
4
  import { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from "@smithy/config-resolver";
5
+ import { eventStreamSerdeProvider } from "@smithy/eventstream-serde-browser";
5
6
  import { FetchHttpHandler as RequestHandler, streamCollector } from "@smithy/fetch-http-handler";
6
- import { invalidProvider } from "@smithy/invalid-dependency";
7
+ import { invalidFunction, invalidProvider } from "@smithy/invalid-dependency";
7
8
  import { calculateBodyLength } from "@smithy/util-body-length-browser";
8
9
  import { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from "@smithy/util-retry";
9
10
  import { getRuntimeConfig as getSharedRuntimeConfig } from "./runtimeConfig.shared";
@@ -22,6 +23,9 @@ export const getRuntimeConfig = (config) => {
22
23
  credentialDefaultProvider: config?.credentialDefaultProvider ?? ((_) => () => Promise.reject(new Error("Credential is missing"))),
23
24
  defaultUserAgentProvider: config?.defaultUserAgentProvider ??
24
25
  defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),
26
+ eventStreamPayloadHandlerProvider: config?.eventStreamPayloadHandlerProvider ??
27
+ (() => ({ handle: invalidFunction("event stream request is not supported in browser.") })),
28
+ eventStreamSerdeProvider: config?.eventStreamSerdeProvider ?? eventStreamSerdeProvider,
25
29
  maxAttempts: config?.maxAttempts ?? DEFAULT_MAX_ATTEMPTS,
26
30
  region: config?.region ?? invalidProvider("Region is missing"),
27
31
  requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),
@@ -1,8 +1,10 @@
1
1
  import packageInfo from "../package.json";
2
2
  import { emitWarningIfUnsupportedVersion as awsCheckVersion } from "@aws-sdk/core";
3
3
  import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node";
4
+ import { eventStreamPayloadHandlerProvider } from "@aws-sdk/eventstream-handler-node";
4
5
  import { defaultUserAgent } from "@aws-sdk/util-user-agent-node";
5
6
  import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from "@smithy/config-resolver";
7
+ import { eventStreamSerdeProvider } from "@smithy/eventstream-serde-node";
6
8
  import { Hash } from "@smithy/hash-node";
7
9
  import { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from "@smithy/middleware-retry";
8
10
  import { loadConfig as loadNodeConfig } from "@smithy/node-config-provider";
@@ -28,6 +30,8 @@ export const getRuntimeConfig = (config) => {
28
30
  credentialDefaultProvider: config?.credentialDefaultProvider ?? credentialDefaultProvider,
29
31
  defaultUserAgentProvider: config?.defaultUserAgentProvider ??
30
32
  defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),
33
+ eventStreamPayloadHandlerProvider: config?.eventStreamPayloadHandlerProvider ?? eventStreamPayloadHandlerProvider,
34
+ eventStreamSerdeProvider: config?.eventStreamSerdeProvider ?? eventStreamSerdeProvider,
31
35
  maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
32
36
  region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),
33
37
  requestHandler: RequestHandler.create(config?.requestHandler ?? (async () => ({ ...(await defaultConfigProvider()), disableConcurrentStreams: true }))),
@@ -1,4 +1,5 @@
1
1
  import { Sha256 } from "@aws-crypto/sha256-js";
2
+ import { invalidFunction } from "@smithy/invalid-dependency";
2
3
  import { getRuntimeConfig as getBrowserRuntimeConfig } from "./runtimeConfig.browser";
3
4
  export const getRuntimeConfig = (config) => {
4
5
  const browserDefaults = getBrowserRuntimeConfig(config);
@@ -6,6 +7,8 @@ export const getRuntimeConfig = (config) => {
6
7
  ...browserDefaults,
7
8
  ...config,
8
9
  runtime: "react-native",
10
+ eventStreamPayloadHandlerProvider: config?.eventStreamPayloadHandlerProvider ??
11
+ (() => ({ handle: invalidFunction("event stream request is not supported in ReactNative.") })),
9
12
  sha256: config?.sha256 ?? Sha256,
10
13
  };
11
14
  };
@@ -1,6 +1,7 @@
1
1
  import { HttpHandlerOptions as __HttpHandlerOptions } from "@smithy/types";
2
2
  import { BatchDeleteDocumentCommandInput, BatchDeleteDocumentCommandOutput } from "./commands/BatchDeleteDocumentCommand";
3
3
  import { BatchPutDocumentCommandInput, BatchPutDocumentCommandOutput } from "./commands/BatchPutDocumentCommand";
4
+ import { ChatCommandInput, ChatCommandOutput } from "./commands/ChatCommand";
4
5
  import { ChatSyncCommandInput, ChatSyncCommandOutput } from "./commands/ChatSyncCommand";
5
6
  import { CreateApplicationCommandInput, CreateApplicationCommandOutput } from "./commands/CreateApplicationCommand";
6
7
  import { CreateDataSourceCommandInput, CreateDataSourceCommandOutput } from "./commands/CreateDataSourceCommand";
@@ -68,6 +69,12 @@ export interface QBusiness {
68
69
  batchPutDocument(args: BatchPutDocumentCommandInput, options?: __HttpHandlerOptions): Promise<BatchPutDocumentCommandOutput>;
69
70
  batchPutDocument(args: BatchPutDocumentCommandInput, cb: (err: any, data?: BatchPutDocumentCommandOutput) => void): void;
70
71
  batchPutDocument(args: BatchPutDocumentCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: BatchPutDocumentCommandOutput) => void): void;
72
+ /**
73
+ * @see {@link ChatCommand}
74
+ */
75
+ chat(args: ChatCommandInput, options?: __HttpHandlerOptions): Promise<ChatCommandOutput>;
76
+ chat(args: ChatCommandInput, cb: (err: any, data?: ChatCommandOutput) => void): void;
77
+ chat(args: ChatCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ChatCommandOutput) => void): void;
71
78
  /**
72
79
  * @see {@link ChatSyncCommand}
73
80
  */
@@ -389,10 +396,7 @@ export interface QBusiness {
389
396
  updateWebExperience(args: UpdateWebExperienceCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UpdateWebExperienceCommandOutput) => void): void;
390
397
  }
391
398
  /**
392
- * <note>
393
- * <p>Amazon Q is in preview release and is subject to change.</p>
394
- * </note>
395
- * <p>This is the <i>Amazon Q Business</i> API Reference. Amazon Q Business is a fully
399
+ * <p>This is the <i>Amazon Q Business</i> API Reference. Amazon Q Business is a fully
396
400
  * managed, generative-AI powered enterprise chat assistant that you can deploy within your
397
401
  * organization. Amazon Q Business enhances employee productivity by supporting key tasks such
398
402
  * as question-answering, knowledge discovery, writing email messages, summarizing text,
@@ -1,14 +1,18 @@
1
+ import { EventStreamInputConfig, EventStreamResolvedConfig } from "@aws-sdk/middleware-eventstream";
1
2
  import { HostHeaderInputConfig, HostHeaderResolvedConfig } from "@aws-sdk/middleware-host-header";
2
3
  import { UserAgentInputConfig, UserAgentResolvedConfig } from "@aws-sdk/middleware-user-agent";
4
+ import { EventStreamPayloadHandlerProvider as __EventStreamPayloadHandlerProvider } from "@aws-sdk/types";
3
5
  import { RegionInputConfig, RegionResolvedConfig } from "@smithy/config-resolver";
6
+ import { EventStreamSerdeInputConfig, EventStreamSerdeResolvedConfig } from "@smithy/eventstream-serde-config-resolver";
4
7
  import { EndpointInputConfig, EndpointResolvedConfig } from "@smithy/middleware-endpoint";
5
8
  import { RetryInputConfig, RetryResolvedConfig } from "@smithy/middleware-retry";
6
9
  import { HttpHandlerUserInput as __HttpHandlerUserInput } from "@smithy/protocol-http";
7
10
  import { Client as __Client, DefaultsMode as __DefaultsMode, SmithyConfiguration as __SmithyConfiguration, SmithyResolvedConfiguration as __SmithyResolvedConfiguration } from "@smithy/smithy-client";
8
- import { AwsCredentialIdentityProvider, BodyLengthCalculator as __BodyLengthCalculator, CheckOptionalClientConfig as __CheckOptionalClientConfig, ChecksumConstructor as __ChecksumConstructor, Decoder as __Decoder, Encoder as __Encoder, HashConstructor as __HashConstructor, HttpHandlerOptions as __HttpHandlerOptions, Logger as __Logger, Provider as __Provider, Provider, StreamCollector as __StreamCollector, UrlParser as __UrlParser, UserAgent as __UserAgent } from "@smithy/types";
11
+ import { AwsCredentialIdentityProvider, BodyLengthCalculator as __BodyLengthCalculator, CheckOptionalClientConfig as __CheckOptionalClientConfig, ChecksumConstructor as __ChecksumConstructor, Decoder as __Decoder, Encoder as __Encoder, EventStreamSerdeProvider as __EventStreamSerdeProvider, HashConstructor as __HashConstructor, HttpHandlerOptions as __HttpHandlerOptions, Logger as __Logger, Provider as __Provider, Provider, StreamCollector as __StreamCollector, UrlParser as __UrlParser, UserAgent as __UserAgent } from "@smithy/types";
9
12
  import { HttpAuthSchemeInputConfig, HttpAuthSchemeResolvedConfig } from "./auth/httpAuthSchemeProvider";
10
13
  import { BatchDeleteDocumentCommandInput, BatchDeleteDocumentCommandOutput } from "./commands/BatchDeleteDocumentCommand";
11
14
  import { BatchPutDocumentCommandInput, BatchPutDocumentCommandOutput } from "./commands/BatchPutDocumentCommand";
15
+ import { ChatCommandInput, ChatCommandOutput } from "./commands/ChatCommand";
12
16
  import { ChatSyncCommandInput, ChatSyncCommandOutput } from "./commands/ChatSyncCommand";
13
17
  import { CreateApplicationCommandInput, CreateApplicationCommandOutput } from "./commands/CreateApplicationCommand";
14
18
  import { CreateDataSourceCommandInput, CreateDataSourceCommandOutput } from "./commands/CreateDataSourceCommand";
@@ -68,11 +72,11 @@ export { __Client };
68
72
  /**
69
73
  * @public
70
74
  */
71
- export type ServiceInputTypes = BatchDeleteDocumentCommandInput | BatchPutDocumentCommandInput | ChatSyncCommandInput | CreateApplicationCommandInput | CreateDataSourceCommandInput | CreateIndexCommandInput | CreatePluginCommandInput | CreateRetrieverCommandInput | CreateUserCommandInput | CreateWebExperienceCommandInput | DeleteApplicationCommandInput | DeleteChatControlsConfigurationCommandInput | DeleteConversationCommandInput | DeleteDataSourceCommandInput | DeleteGroupCommandInput | DeleteIndexCommandInput | DeletePluginCommandInput | DeleteRetrieverCommandInput | DeleteUserCommandInput | DeleteWebExperienceCommandInput | GetApplicationCommandInput | GetChatControlsConfigurationCommandInput | GetDataSourceCommandInput | GetGroupCommandInput | GetIndexCommandInput | GetPluginCommandInput | GetRetrieverCommandInput | GetUserCommandInput | GetWebExperienceCommandInput | ListApplicationsCommandInput | ListConversationsCommandInput | ListDataSourceSyncJobsCommandInput | ListDataSourcesCommandInput | ListDocumentsCommandInput | ListGroupsCommandInput | ListIndicesCommandInput | ListMessagesCommandInput | ListPluginsCommandInput | ListRetrieversCommandInput | ListTagsForResourceCommandInput | ListWebExperiencesCommandInput | PutFeedbackCommandInput | PutGroupCommandInput | StartDataSourceSyncJobCommandInput | StopDataSourceSyncJobCommandInput | TagResourceCommandInput | UntagResourceCommandInput | UpdateApplicationCommandInput | UpdateChatControlsConfigurationCommandInput | UpdateDataSourceCommandInput | UpdateIndexCommandInput | UpdatePluginCommandInput | UpdateRetrieverCommandInput | UpdateUserCommandInput | UpdateWebExperienceCommandInput;
75
+ export type ServiceInputTypes = BatchDeleteDocumentCommandInput | BatchPutDocumentCommandInput | ChatCommandInput | ChatSyncCommandInput | CreateApplicationCommandInput | CreateDataSourceCommandInput | CreateIndexCommandInput | CreatePluginCommandInput | CreateRetrieverCommandInput | CreateUserCommandInput | CreateWebExperienceCommandInput | DeleteApplicationCommandInput | DeleteChatControlsConfigurationCommandInput | DeleteConversationCommandInput | DeleteDataSourceCommandInput | DeleteGroupCommandInput | DeleteIndexCommandInput | DeletePluginCommandInput | DeleteRetrieverCommandInput | DeleteUserCommandInput | DeleteWebExperienceCommandInput | GetApplicationCommandInput | GetChatControlsConfigurationCommandInput | GetDataSourceCommandInput | GetGroupCommandInput | GetIndexCommandInput | GetPluginCommandInput | GetRetrieverCommandInput | GetUserCommandInput | GetWebExperienceCommandInput | ListApplicationsCommandInput | ListConversationsCommandInput | ListDataSourceSyncJobsCommandInput | ListDataSourcesCommandInput | ListDocumentsCommandInput | ListGroupsCommandInput | ListIndicesCommandInput | ListMessagesCommandInput | ListPluginsCommandInput | ListRetrieversCommandInput | ListTagsForResourceCommandInput | ListWebExperiencesCommandInput | PutFeedbackCommandInput | PutGroupCommandInput | StartDataSourceSyncJobCommandInput | StopDataSourceSyncJobCommandInput | TagResourceCommandInput | UntagResourceCommandInput | UpdateApplicationCommandInput | UpdateChatControlsConfigurationCommandInput | UpdateDataSourceCommandInput | UpdateIndexCommandInput | UpdatePluginCommandInput | UpdateRetrieverCommandInput | UpdateUserCommandInput | UpdateWebExperienceCommandInput;
72
76
  /**
73
77
  * @public
74
78
  */
75
- export type ServiceOutputTypes = BatchDeleteDocumentCommandOutput | BatchPutDocumentCommandOutput | ChatSyncCommandOutput | CreateApplicationCommandOutput | CreateDataSourceCommandOutput | CreateIndexCommandOutput | CreatePluginCommandOutput | CreateRetrieverCommandOutput | CreateUserCommandOutput | CreateWebExperienceCommandOutput | DeleteApplicationCommandOutput | DeleteChatControlsConfigurationCommandOutput | DeleteConversationCommandOutput | DeleteDataSourceCommandOutput | DeleteGroupCommandOutput | DeleteIndexCommandOutput | DeletePluginCommandOutput | DeleteRetrieverCommandOutput | DeleteUserCommandOutput | DeleteWebExperienceCommandOutput | GetApplicationCommandOutput | GetChatControlsConfigurationCommandOutput | GetDataSourceCommandOutput | GetGroupCommandOutput | GetIndexCommandOutput | GetPluginCommandOutput | GetRetrieverCommandOutput | GetUserCommandOutput | GetWebExperienceCommandOutput | ListApplicationsCommandOutput | ListConversationsCommandOutput | ListDataSourceSyncJobsCommandOutput | ListDataSourcesCommandOutput | ListDocumentsCommandOutput | ListGroupsCommandOutput | ListIndicesCommandOutput | ListMessagesCommandOutput | ListPluginsCommandOutput | ListRetrieversCommandOutput | ListTagsForResourceCommandOutput | ListWebExperiencesCommandOutput | PutFeedbackCommandOutput | PutGroupCommandOutput | StartDataSourceSyncJobCommandOutput | StopDataSourceSyncJobCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput | UpdateApplicationCommandOutput | UpdateChatControlsConfigurationCommandOutput | UpdateDataSourceCommandOutput | UpdateIndexCommandOutput | UpdatePluginCommandOutput | UpdateRetrieverCommandOutput | UpdateUserCommandOutput | UpdateWebExperienceCommandOutput;
79
+ export type ServiceOutputTypes = BatchDeleteDocumentCommandOutput | BatchPutDocumentCommandOutput | ChatCommandOutput | ChatSyncCommandOutput | CreateApplicationCommandOutput | CreateDataSourceCommandOutput | CreateIndexCommandOutput | CreatePluginCommandOutput | CreateRetrieverCommandOutput | CreateUserCommandOutput | CreateWebExperienceCommandOutput | DeleteApplicationCommandOutput | DeleteChatControlsConfigurationCommandOutput | DeleteConversationCommandOutput | DeleteDataSourceCommandOutput | DeleteGroupCommandOutput | DeleteIndexCommandOutput | DeletePluginCommandOutput | DeleteRetrieverCommandOutput | DeleteUserCommandOutput | DeleteWebExperienceCommandOutput | GetApplicationCommandOutput | GetChatControlsConfigurationCommandOutput | GetDataSourceCommandOutput | GetGroupCommandOutput | GetIndexCommandOutput | GetPluginCommandOutput | GetRetrieverCommandOutput | GetUserCommandOutput | GetWebExperienceCommandOutput | ListApplicationsCommandOutput | ListConversationsCommandOutput | ListDataSourceSyncJobsCommandOutput | ListDataSourcesCommandOutput | ListDocumentsCommandOutput | ListGroupsCommandOutput | ListIndicesCommandOutput | ListMessagesCommandOutput | ListPluginsCommandOutput | ListRetrieversCommandOutput | ListTagsForResourceCommandOutput | ListWebExperiencesCommandOutput | PutFeedbackCommandOutput | PutGroupCommandOutput | StartDataSourceSyncJobCommandOutput | StopDataSourceSyncJobCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput | UpdateApplicationCommandOutput | UpdateChatControlsConfigurationCommandOutput | UpdateDataSourceCommandOutput | UpdateIndexCommandOutput | UpdatePluginCommandOutput | UpdateRetrieverCommandOutput | UpdateUserCommandOutput | UpdateWebExperienceCommandOutput;
76
80
  /**
77
81
  * @public
78
82
  */
@@ -178,15 +182,24 @@ export interface ClientDefaults extends Partial<__SmithyConfiguration<__HttpHand
178
182
  * Optional extensions
179
183
  */
180
184
  extensions?: RuntimeExtension[];
185
+ /**
186
+ * The function that provides necessary utilities for generating and parsing event stream
187
+ */
188
+ eventStreamSerdeProvider?: __EventStreamSerdeProvider;
181
189
  /**
182
190
  * The {@link @smithy/smithy-client#DefaultsMode} that will be used to determine how certain default configuration options are resolved in the SDK.
183
191
  */
184
192
  defaultsMode?: __DefaultsMode | __Provider<__DefaultsMode>;
193
+ /**
194
+ * The function that provides necessary utilities for handling request event stream.
195
+ * @internal
196
+ */
197
+ eventStreamPayloadHandlerProvider?: __EventStreamPayloadHandlerProvider;
185
198
  }
186
199
  /**
187
200
  * @public
188
201
  */
189
- export type QBusinessClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & UserAgentInputConfig & HttpAuthSchemeInputConfig & ClientInputEndpointParameters;
202
+ export type QBusinessClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & RegionInputConfig & EndpointInputConfig<EndpointParameters> & RetryInputConfig & HostHeaderInputConfig & UserAgentInputConfig & EventStreamSerdeInputConfig & HttpAuthSchemeInputConfig & EventStreamInputConfig & ClientInputEndpointParameters;
190
203
  /**
191
204
  * @public
192
205
  *
@@ -197,7 +210,7 @@ export interface QBusinessClientConfig extends QBusinessClientConfigType {
197
210
  /**
198
211
  * @public
199
212
  */
200
- export type QBusinessClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & UserAgentResolvedConfig & HttpAuthSchemeResolvedConfig & ClientResolvedEndpointParameters;
213
+ export type QBusinessClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & UserAgentResolvedConfig & EventStreamSerdeResolvedConfig & HttpAuthSchemeResolvedConfig & EventStreamResolvedConfig & ClientResolvedEndpointParameters;
201
214
  /**
202
215
  * @public
203
216
  *
@@ -206,10 +219,7 @@ export type QBusinessClientResolvedConfigType = __SmithyResolvedConfiguration<__
206
219
  export interface QBusinessClientResolvedConfig extends QBusinessClientResolvedConfigType {
207
220
  }
208
221
  /**
209
- * <note>
210
- * <p>Amazon Q is in preview release and is subject to change.</p>
211
- * </note>
212
- * <p>This is the <i>Amazon Q Business</i> API Reference. Amazon Q Business is a fully
222
+ * <p>This is the <i>Amazon Q Business</i> API Reference. Amazon Q Business is a fully
213
223
  * managed, generative-AI powered enterprise chat assistant that you can deploy within your
214
224
  * organization. Amazon Q Business enhances employee productivity by supporting key tasks such
215
225
  * as question-answering, knowledge discovery, writing email messages, summarizing text,