algoliasearch 5.0.0-alpha.99 → 5.0.0-beta.10

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 (888) hide show
  1. package/LICENSE +21 -0
  2. package/builds/browser.ts +22 -18
  3. package/builds/models.ts +140 -6
  4. package/builds/node.ts +92 -16
  5. package/dist/algoliasearch/builds/browser.d.ts +83 -71
  6. package/dist/algoliasearch/builds/browser.d.ts.map +1 -1
  7. package/dist/algoliasearch/builds/models.d.ts +4 -2
  8. package/dist/algoliasearch/builds/models.d.ts.map +1 -1
  9. package/dist/algoliasearch/builds/node.d.ts +101 -72
  10. package/dist/algoliasearch/builds/node.d.ts.map +1 -1
  11. package/dist/algoliasearch.cjs +1259 -399
  12. package/dist/algoliasearch.esm.browser.js +1226 -423
  13. package/dist/algoliasearch.esm.node.js +1260 -400
  14. package/dist/algoliasearch.umd.js +2 -2
  15. package/dist/client-abtesting/model/aBTest.d.ts +14 -29
  16. package/dist/client-abtesting/model/aBTest.d.ts.map +1 -1
  17. package/dist/client-abtesting/model/aBTestConfiguration.d.ts +12 -0
  18. package/dist/client-abtesting/model/aBTestConfiguration.d.ts.map +1 -0
  19. package/dist/client-abtesting/model/aBTestResponse.d.ts +3 -3
  20. package/dist/client-abtesting/model/abTestsVariant.d.ts +3 -3
  21. package/dist/client-abtesting/model/addABTestsRequest.d.ts +1 -1
  22. package/dist/client-abtesting/model/clientMethodProps.d.ts +7 -7
  23. package/dist/client-abtesting/model/{currenciesValue.d.ts → currency.d.ts} +2 -2
  24. package/dist/client-abtesting/model/currency.d.ts.map +1 -0
  25. package/dist/client-abtesting/model/customSearchParams.d.ts +1 -1
  26. package/dist/client-abtesting/model/effect.d.ts +5 -0
  27. package/dist/client-abtesting/model/effect.d.ts.map +1 -0
  28. package/dist/client-abtesting/model/emptySearch.d.ts +10 -0
  29. package/dist/client-abtesting/model/emptySearch.d.ts.map +1 -0
  30. package/dist/client-abtesting/model/index.d.ts +7 -1
  31. package/dist/client-abtesting/model/index.d.ts.map +1 -1
  32. package/dist/client-abtesting/model/listABTestsResponse.d.ts +2 -2
  33. package/dist/client-abtesting/model/listABTestsResponse.d.ts.map +1 -1
  34. package/dist/client-abtesting/model/minimumDetectableEffect.d.ts +12 -0
  35. package/dist/client-abtesting/model/minimumDetectableEffect.d.ts.map +1 -0
  36. package/dist/client-abtesting/model/outliers.d.ts +10 -0
  37. package/dist/client-abtesting/model/outliers.d.ts.map +1 -0
  38. package/dist/client-abtesting/model/status.d.ts +5 -0
  39. package/dist/client-abtesting/model/status.d.ts.map +1 -0
  40. package/dist/client-abtesting/model/variant.d.ts +29 -25
  41. package/dist/client-abtesting/model/variant.d.ts.map +1 -1
  42. package/dist/client-abtesting/src/abtestingClient.d.ts +28 -26
  43. package/dist/client-abtesting/src/abtestingClient.d.ts.map +1 -1
  44. package/dist/client-analytics/model/clickPositionsInner.d.ts +14 -0
  45. package/dist/client-analytics/model/clickPositionsInner.d.ts.map +1 -0
  46. package/dist/client-analytics/model/clientMethodProps.d.ts +161 -90
  47. package/dist/client-analytics/model/clientMethodProps.d.ts.map +1 -1
  48. package/dist/client-analytics/model/currenciesValue.d.ts +14 -0
  49. package/dist/client-analytics/model/currenciesValue.d.ts.map +1 -0
  50. package/dist/client-analytics/model/dailyAddToCartRates.d.ts +19 -0
  51. package/dist/client-analytics/model/dailyAddToCartRates.d.ts.map +1 -0
  52. package/dist/client-analytics/model/dailyAverageClicks.d.ts +15 -0
  53. package/dist/client-analytics/model/dailyAverageClicks.d.ts.map +1 -0
  54. package/dist/client-analytics/model/dailyClickThroughRates.d.ts +19 -0
  55. package/dist/client-analytics/model/dailyClickThroughRates.d.ts.map +1 -0
  56. package/dist/client-analytics/model/dailyConversionRates.d.ts +19 -0
  57. package/dist/client-analytics/model/dailyConversionRates.d.ts.map +1 -0
  58. package/dist/client-analytics/model/dailyNoClickRates.d.ts +19 -0
  59. package/dist/client-analytics/model/dailyNoClickRates.d.ts.map +1 -0
  60. package/dist/client-analytics/model/dailyNoResultsRates.d.ts +19 -0
  61. package/dist/client-analytics/model/dailyNoResultsRates.d.ts.map +1 -0
  62. package/dist/client-analytics/model/dailyPurchaseRates.d.ts +19 -0
  63. package/dist/client-analytics/model/dailyPurchaseRates.d.ts.map +1 -0
  64. package/dist/client-analytics/model/dailyRevenue.d.ts +12 -0
  65. package/dist/client-analytics/model/dailyRevenue.d.ts.map +1 -0
  66. package/dist/client-analytics/model/dailySearches.d.ts +11 -0
  67. package/dist/client-analytics/model/dailySearches.d.ts.map +1 -0
  68. package/dist/client-analytics/model/dailySearchesNoClicks.d.ts +15 -0
  69. package/dist/client-analytics/model/dailySearchesNoClicks.d.ts.map +1 -0
  70. package/dist/client-analytics/model/dailySearchesNoResults.d.ts +15 -0
  71. package/dist/client-analytics/model/dailySearchesNoResults.d.ts.map +1 -0
  72. package/dist/client-analytics/model/dailyUsers.d.ts +11 -0
  73. package/dist/client-analytics/model/dailyUsers.d.ts.map +1 -0
  74. package/dist/client-analytics/model/getAddToCartRateResponse.d.ts +20 -0
  75. package/dist/client-analytics/model/getAddToCartRateResponse.d.ts.map +1 -0
  76. package/dist/client-analytics/model/getAverageClickPositionResponse.d.ts +6 -6
  77. package/dist/client-analytics/model/getAverageClickPositionResponse.d.ts.map +1 -1
  78. package/dist/client-analytics/model/getClickPositionsResponse.d.ts +3 -3
  79. package/dist/client-analytics/model/getClickPositionsResponse.d.ts.map +1 -1
  80. package/dist/client-analytics/model/getClickThroughRateResponse.d.ts +7 -7
  81. package/dist/client-analytics/model/getClickThroughRateResponse.d.ts.map +1 -1
  82. package/dist/client-analytics/model/getConversionRateResponse.d.ts +20 -0
  83. package/dist/client-analytics/model/getConversionRateResponse.d.ts.map +1 -0
  84. package/dist/client-analytics/model/getNoClickRateResponse.d.ts +6 -6
  85. package/dist/client-analytics/model/getNoClickRateResponse.d.ts.map +1 -1
  86. package/dist/client-analytics/model/getNoResultsRateResponse.d.ts +6 -6
  87. package/dist/client-analytics/model/getNoResultsRateResponse.d.ts.map +1 -1
  88. package/dist/client-analytics/model/getPurchaseRateResponse.d.ts +20 -0
  89. package/dist/client-analytics/model/getPurchaseRateResponse.d.ts.map +1 -0
  90. package/dist/client-analytics/model/getRevenue.d.ts +13 -0
  91. package/dist/client-analytics/model/getRevenue.d.ts.map +1 -0
  92. package/dist/client-analytics/model/getSearchesCountResponse.d.ts +3 -3
  93. package/dist/client-analytics/model/getSearchesCountResponse.d.ts.map +1 -1
  94. package/dist/client-analytics/model/getSearchesNoClicksResponse.d.ts +3 -3
  95. package/dist/client-analytics/model/getSearchesNoClicksResponse.d.ts.map +1 -1
  96. package/dist/client-analytics/model/getSearchesNoResultsResponse.d.ts +3 -3
  97. package/dist/client-analytics/model/getSearchesNoResultsResponse.d.ts.map +1 -1
  98. package/dist/client-analytics/model/getStatusResponse.d.ts +2 -2
  99. package/dist/client-analytics/model/getStatusResponse.d.ts.map +1 -1
  100. package/dist/client-analytics/model/getTopCountriesResponse.d.ts +1 -1
  101. package/dist/client-analytics/model/getTopFilterAttributesResponse.d.ts +1 -1
  102. package/dist/client-analytics/model/getTopFilterForAttribute.d.ts +2 -4
  103. package/dist/client-analytics/model/getTopFilterForAttribute.d.ts.map +1 -1
  104. package/dist/client-analytics/model/getTopFiltersNoResultsResponse.d.ts +2 -2
  105. package/dist/client-analytics/model/getTopFiltersNoResultsResponse.d.ts.map +1 -1
  106. package/dist/client-analytics/model/getTopFiltersNoResultsValue.d.ts +2 -4
  107. package/dist/client-analytics/model/getTopFiltersNoResultsValue.d.ts.map +1 -1
  108. package/dist/client-analytics/model/getTopHitsResponse.d.ts +2 -1
  109. package/dist/client-analytics/model/getTopHitsResponse.d.ts.map +1 -1
  110. package/dist/client-analytics/model/getTopSearchesResponse.d.ts +2 -1
  111. package/dist/client-analytics/model/getTopSearchesResponse.d.ts.map +1 -1
  112. package/dist/client-analytics/model/getUsersCountResponse.d.ts +4 -4
  113. package/dist/client-analytics/model/getUsersCountResponse.d.ts.map +1 -1
  114. package/dist/client-analytics/model/index.d.ts +23 -11
  115. package/dist/client-analytics/model/index.d.ts.map +1 -1
  116. package/dist/client-analytics/model/operator.d.ts +5 -0
  117. package/dist/client-analytics/model/operator.d.ts.map +1 -0
  118. package/dist/client-analytics/model/orderBy.d.ts +1 -1
  119. package/dist/client-analytics/model/topCountry.d.ts +1 -1
  120. package/dist/client-analytics/model/topHit.d.ts +1 -1
  121. package/dist/client-analytics/model/topHitWithAnalytics.d.ts +9 -9
  122. package/dist/client-analytics/model/topHitWithAnalytics.d.ts.map +1 -1
  123. package/dist/client-analytics/model/topHitWithRevenueAnalytics.d.ts +52 -0
  124. package/dist/client-analytics/model/topHitWithRevenueAnalytics.d.ts.map +1 -0
  125. package/dist/client-analytics/model/topHitsResponse.d.ts +1 -1
  126. package/dist/client-analytics/model/topHitsResponseWithAnalytics.d.ts +1 -1
  127. package/dist/client-analytics/model/topHitsResponseWithRevenueAnalytics.d.ts +8 -0
  128. package/dist/client-analytics/model/topHitsResponseWithRevenueAnalytics.d.ts.map +1 -0
  129. package/dist/client-analytics/model/topSearch.d.ts +3 -3
  130. package/dist/client-analytics/model/topSearchWithAnalytics.d.ts +17 -12
  131. package/dist/client-analytics/model/topSearchWithAnalytics.d.ts.map +1 -1
  132. package/dist/client-analytics/model/topSearchWithRevenueAnalytics.d.ts +65 -0
  133. package/dist/client-analytics/model/topSearchWithRevenueAnalytics.d.ts.map +1 -0
  134. package/dist/client-analytics/model/topSearchesResponse.d.ts +1 -1
  135. package/dist/client-analytics/model/topSearchesResponseWithAnalytics.d.ts +1 -1
  136. package/dist/client-analytics/model/topSearchesResponseWithRevenueAnalytics.d.ts +8 -0
  137. package/dist/client-analytics/model/topSearchesResponseWithRevenueAnalytics.d.ts.map +1 -0
  138. package/dist/client-analytics/src/analyticsClient.d.ts +211 -138
  139. package/dist/client-analytics/src/analyticsClient.d.ts.map +1 -1
  140. package/dist/client-personalization/model/clientMethodProps.d.ts +2 -2
  141. package/dist/client-personalization/model/deleteUserProfileResponse.d.ts +2 -2
  142. package/dist/client-personalization/model/eventScoring.d.ts +4 -6
  143. package/dist/client-personalization/model/eventScoring.d.ts.map +1 -1
  144. package/dist/client-personalization/model/eventType.d.ts +5 -0
  145. package/dist/client-personalization/model/eventType.d.ts.map +1 -0
  146. package/dist/client-personalization/model/facetScoring.d.ts +2 -2
  147. package/dist/client-personalization/model/getUserTokenResponse.d.ts +3 -3
  148. package/dist/client-personalization/model/index.d.ts +1 -0
  149. package/dist/client-personalization/model/index.d.ts.map +1 -1
  150. package/dist/client-personalization/model/personalizationStrategyParams.d.ts +3 -3
  151. package/dist/client-personalization/src/personalizationClient.d.ts +19 -19
  152. package/dist/client-personalization/src/personalizationClient.d.ts.map +1 -1
  153. package/dist/client-search/model/acl.d.ts +1 -1
  154. package/dist/client-search/model/action.d.ts +1 -1
  155. package/dist/client-search/model/addApiKeyResponse.d.ts +1 -1
  156. package/dist/client-search/model/anchoring.d.ts +1 -1
  157. package/dist/client-search/model/apiKey.d.ts +8 -8
  158. package/dist/client-search/model/apiKeyOperation.d.ts +2 -0
  159. package/dist/client-search/model/apiKeyOperation.d.ts.map +1 -0
  160. package/dist/client-search/model/aroundPrecision.d.ts +1 -1
  161. package/dist/client-search/model/aroundPrecisionFromValueInner.d.ts +9 -0
  162. package/dist/client-search/model/aroundPrecisionFromValueInner.d.ts.map +1 -1
  163. package/dist/client-search/model/aroundRadius.d.ts +1 -1
  164. package/dist/client-search/model/aroundRadiusAll.d.ts +3 -0
  165. package/dist/client-search/model/aroundRadiusAll.d.ts.map +1 -1
  166. package/dist/client-search/model/automaticFacetFilter.d.ts +4 -4
  167. package/dist/client-search/model/automaticFacetFilters.d.ts +1 -1
  168. package/dist/client-search/model/baseGetApiKeyResponse.d.ts +1 -1
  169. package/dist/client-search/model/baseIndexSettings.d.ts +23 -18
  170. package/dist/client-search/model/baseIndexSettings.d.ts.map +1 -1
  171. package/dist/client-search/model/baseSearchParamsWithoutQuery.d.ts +26 -29
  172. package/dist/client-search/model/baseSearchParamsWithoutQuery.d.ts.map +1 -1
  173. package/dist/client-search/model/baseSearchResponse.d.ts +8 -20
  174. package/dist/client-search/model/baseSearchResponse.d.ts.map +1 -1
  175. package/dist/client-search/model/batchDictionaryEntriesParams.d.ts +3 -3
  176. package/dist/client-search/model/batchResponse.d.ts +2 -2
  177. package/dist/client-search/model/browsePagination.d.ts +19 -0
  178. package/dist/client-search/model/browsePagination.d.ts.map +1 -0
  179. package/dist/client-search/model/browseResponse.d.ts +2 -1
  180. package/dist/client-search/model/browseResponse.d.ts.map +1 -1
  181. package/dist/client-search/model/builtInOperation.d.ts +2 -2
  182. package/dist/client-search/model/builtInOperationType.d.ts +1 -1
  183. package/dist/client-search/model/clientMethodProps.d.ts +137 -70
  184. package/dist/client-search/model/clientMethodProps.d.ts.map +1 -1
  185. package/dist/client-search/model/condition.d.ts +7 -3
  186. package/dist/client-search/model/condition.d.ts.map +1 -1
  187. package/dist/client-search/model/consequence.d.ts +5 -5
  188. package/dist/client-search/model/consequenceHide.d.ts +2 -2
  189. package/dist/client-search/model/consequenceQuery.d.ts +1 -1
  190. package/dist/client-search/model/consequenceQueryObject.d.ts +2 -2
  191. package/dist/client-search/model/createdAtResponse.d.ts +1 -1
  192. package/dist/client-search/model/cursor.d.ts +1 -1
  193. package/dist/client-search/model/deleteApiKeyResponse.d.ts +1 -1
  194. package/dist/client-search/model/deleteByParams.d.ts +4 -4
  195. package/dist/client-search/model/deleteSourceResponse.d.ts +1 -1
  196. package/dist/client-search/model/deletedAtResponse.d.ts +2 -2
  197. package/dist/client-search/model/dictionaryEntry.d.ts +6 -8
  198. package/dist/client-search/model/dictionaryEntry.d.ts.map +1 -1
  199. package/dist/client-search/model/dictionaryEntryState.d.ts +1 -1
  200. package/dist/client-search/model/dictionaryLanguage.d.ts +2 -2
  201. package/dist/client-search/model/dictionarySettingsParams.d.ts +1 -1
  202. package/dist/client-search/model/distinct.d.ts +1 -1
  203. package/dist/client-search/model/edit.d.ts +1 -1
  204. package/dist/client-search/model/exactOnSingleWordQuery.d.ts +1 -1
  205. package/dist/client-search/model/facetFilters.d.ts +2 -3
  206. package/dist/client-search/model/facetFilters.d.ts.map +1 -1
  207. package/dist/client-search/model/facetHits.d.ts +2 -2
  208. package/dist/client-search/model/facetOrdering.d.ts +2 -2
  209. package/dist/client-search/model/facets.d.ts +2 -2
  210. package/dist/client-search/model/fetchedIndex.d.ts +5 -1
  211. package/dist/client-search/model/fetchedIndex.d.ts.map +1 -1
  212. package/dist/client-search/model/getObjectsRequest.d.ts +3 -3
  213. package/dist/client-search/model/getObjectsResponse.d.ts +1 -1
  214. package/dist/client-search/model/hasPendingMappingsResponse.d.ts +1 -1
  215. package/dist/client-search/model/highlightResult.d.ts +1 -1
  216. package/dist/client-search/model/highlightResult.d.ts.map +1 -1
  217. package/dist/client-search/model/highlightResultOption.d.ts +3 -3
  218. package/dist/client-search/model/hit.d.ts +4 -4
  219. package/dist/client-search/model/ignorePlurals.d.ts +3 -2
  220. package/dist/client-search/model/ignorePlurals.d.ts.map +1 -1
  221. package/dist/client-search/model/index.d.ts +8 -1
  222. package/dist/client-search/model/index.d.ts.map +1 -1
  223. package/dist/client-search/model/indexSettings.d.ts +1 -1
  224. package/dist/client-search/model/indexSettingsAsSearchParams.d.ts +32 -35
  225. package/dist/client-search/model/indexSettingsAsSearchParams.d.ts.map +1 -1
  226. package/dist/client-search/model/log.d.ts +11 -11
  227. package/dist/client-search/model/logQuery.d.ts +1 -1
  228. package/dist/client-search/model/matchLevel.d.ts +1 -1
  229. package/dist/client-search/model/mode.d.ts +1 -1
  230. package/dist/client-search/model/multipleBatchRequest.d.ts +1 -1
  231. package/dist/client-search/model/multipleBatchResponse.d.ts +2 -2
  232. package/dist/client-search/model/numericFilters.d.ts +2 -3
  233. package/dist/client-search/model/numericFilters.d.ts.map +1 -1
  234. package/dist/client-search/model/operationIndexParams.d.ts +2 -2
  235. package/dist/client-search/model/operationType.d.ts +1 -1
  236. package/dist/client-search/model/optionalFilters.d.ts +2 -3
  237. package/dist/client-search/model/optionalFilters.d.ts.map +1 -1
  238. package/dist/client-search/model/params.d.ts +1 -1
  239. package/dist/client-search/model/promoteObjectID.d.ts +2 -2
  240. package/dist/client-search/model/promoteObjectIDs.d.ts +2 -2
  241. package/dist/client-search/model/queryType.d.ts +1 -1
  242. package/dist/client-search/model/rankingInfo.d.ts +13 -10
  243. package/dist/client-search/model/rankingInfo.d.ts.map +1 -1
  244. package/dist/client-search/model/reRankingApplyFilter.d.ts +2 -3
  245. package/dist/client-search/model/reRankingApplyFilter.d.ts.map +1 -1
  246. package/dist/client-search/model/redirect.d.ts +1 -1
  247. package/dist/client-search/model/redirectURL.d.ts +7 -0
  248. package/dist/client-search/model/redirectURL.d.ts.map +1 -0
  249. package/dist/client-search/model/removeStopWords.d.ts +3 -2
  250. package/dist/client-search/model/removeStopWords.d.ts.map +1 -1
  251. package/dist/client-search/model/removeUserIdResponse.d.ts +1 -1
  252. package/dist/client-search/model/removeWordsIfNoResults.d.ts +1 -1
  253. package/dist/client-search/model/renderingContent.d.ts +3 -1
  254. package/dist/client-search/model/renderingContent.d.ts.map +1 -1
  255. package/dist/client-search/model/replaceAllObjectsResponse.d.ts +11 -0
  256. package/dist/client-search/model/replaceAllObjectsResponse.d.ts.map +1 -0
  257. package/dist/client-search/model/replaceSourceResponse.d.ts +1 -1
  258. package/dist/client-search/model/rule.d.ts +5 -5
  259. package/dist/client-search/model/saveObjectResponse.d.ts +3 -3
  260. package/dist/client-search/model/saveSynonymResponse.d.ts +2 -2
  261. package/dist/client-search/model/searchDictionaryEntriesParams.d.ts +5 -7
  262. package/dist/client-search/model/searchDictionaryEntriesParams.d.ts.map +1 -1
  263. package/dist/client-search/model/searchDictionaryEntriesResponse.d.ts +20 -0
  264. package/dist/client-search/model/searchDictionaryEntriesResponse.d.ts.map +1 -0
  265. package/dist/client-search/model/searchForFacetValuesRequest.d.ts +1 -1
  266. package/dist/client-search/model/searchForFacetValuesResponse.d.ts +4 -1
  267. package/dist/client-search/model/searchForFacetValuesResponse.d.ts.map +1 -1
  268. package/dist/client-search/model/searchForFacetsOptions.d.ts +2 -2
  269. package/dist/client-search/model/searchForHitsOptions.d.ts +1 -1
  270. package/dist/client-search/model/searchHits.d.ts +6 -3
  271. package/dist/client-search/model/searchHits.d.ts.map +1 -1
  272. package/dist/client-search/model/searchPagination.d.ts +19 -0
  273. package/dist/client-search/model/searchPagination.d.ts.map +1 -0
  274. package/dist/client-search/model/searchParamsObject.d.ts +3 -0
  275. package/dist/client-search/model/searchParamsObject.d.ts.map +1 -1
  276. package/dist/client-search/model/searchParamsQuery.d.ts +1 -1
  277. package/dist/client-search/model/searchResponse.d.ts +2 -1
  278. package/dist/client-search/model/searchResponse.d.ts.map +1 -1
  279. package/dist/client-search/model/searchRulesParams.d.ts +4 -8
  280. package/dist/client-search/model/searchRulesParams.d.ts.map +1 -1
  281. package/dist/client-search/model/searchRulesResponse.d.ts +2 -2
  282. package/dist/client-search/model/searchStrategy.d.ts +1 -1
  283. package/dist/client-search/model/searchSynonymsParams.d.ts +2 -2
  284. package/dist/client-search/model/searchSynonymsResponse.d.ts +2 -2
  285. package/dist/client-search/model/searchUserIdsParams.d.ts +1 -1
  286. package/dist/client-search/model/searchUserIdsResponse.d.ts +3 -3
  287. package/dist/client-search/model/securedApiKeyRestrictions.d.ts +25 -0
  288. package/dist/client-search/model/securedApiKeyRestrictions.d.ts.map +1 -0
  289. package/dist/client-search/model/semanticSearch.d.ts +2 -2
  290. package/dist/client-search/model/snippetResult.d.ts +1 -1
  291. package/dist/client-search/model/snippetResult.d.ts.map +1 -1
  292. package/dist/client-search/model/snippetResultOption.d.ts +2 -2
  293. package/dist/client-search/model/sortRemainingBy.d.ts +1 -1
  294. package/dist/client-search/model/supportedLanguage.d.ts +5 -0
  295. package/dist/client-search/model/supportedLanguage.d.ts.map +1 -0
  296. package/dist/client-search/model/tagFilters.d.ts +2 -3
  297. package/dist/client-search/model/tagFilters.d.ts.map +1 -1
  298. package/dist/client-search/model/taskStatus.d.ts +1 -1
  299. package/dist/client-search/model/timeRange.d.ts +2 -2
  300. package/dist/client-search/model/typoTolerance.d.ts +1 -1
  301. package/dist/client-search/model/typoToleranceEnum.d.ts +3 -0
  302. package/dist/client-search/model/typoToleranceEnum.d.ts.map +1 -1
  303. package/dist/client-search/model/updateApiKeyResponse.d.ts +1 -1
  304. package/dist/client-search/model/updatedAtResponse.d.ts +2 -2
  305. package/dist/client-search/model/updatedAtWithObjectIdResponse.d.ts +3 -3
  306. package/dist/client-search/model/updatedRuleResponse.d.ts +3 -3
  307. package/dist/client-search/model/userHit.d.ts +1 -1
  308. package/dist/client-search/model/userId.d.ts +1 -1
  309. package/dist/client-search/model/value.d.ts +5 -1
  310. package/dist/client-search/model/value.d.ts.map +1 -1
  311. package/dist/client-search/src/searchClient.d.ts +385 -208
  312. package/dist/client-search/src/searchClient.d.ts.map +1 -1
  313. package/dist/lite/builds/browser.d.ts +15 -3
  314. package/dist/lite/builds/browser.d.ts.map +1 -1
  315. package/dist/lite/builds/node.d.ts +15 -3
  316. package/dist/lite/builds/node.d.ts.map +1 -1
  317. package/dist/lite/lite.cjs +45 -6
  318. package/dist/lite/lite.esm.browser.js +59 -30
  319. package/dist/lite/lite.esm.node.js +45 -6
  320. package/dist/lite/lite.umd.js +2 -2
  321. package/dist/lite/model/acl.d.ts +1 -1
  322. package/dist/lite/model/apiKey.d.ts +8 -8
  323. package/dist/lite/model/aroundPrecision.d.ts +1 -1
  324. package/dist/lite/model/aroundPrecisionFromValueInner.d.ts +9 -0
  325. package/dist/lite/model/aroundPrecisionFromValueInner.d.ts.map +1 -1
  326. package/dist/lite/model/aroundRadius.d.ts +1 -1
  327. package/dist/lite/model/aroundRadiusAll.d.ts +3 -0
  328. package/dist/lite/model/aroundRadiusAll.d.ts.map +1 -1
  329. package/dist/lite/model/automaticFacetFilter.d.ts +4 -4
  330. package/dist/lite/model/automaticFacetFilters.d.ts +1 -1
  331. package/dist/lite/model/baseGetApiKeyResponse.d.ts +1 -1
  332. package/dist/lite/model/baseIndexSettings.d.ts +23 -18
  333. package/dist/lite/model/baseIndexSettings.d.ts.map +1 -1
  334. package/dist/lite/model/baseRecommendRequest.d.ts +17 -0
  335. package/dist/lite/model/baseRecommendRequest.d.ts.map +1 -0
  336. package/dist/lite/model/baseSearchParamsWithoutQuery.d.ts +26 -29
  337. package/dist/lite/model/baseSearchParamsWithoutQuery.d.ts.map +1 -1
  338. package/dist/lite/model/baseSearchResponse.d.ts +8 -20
  339. package/dist/lite/model/baseSearchResponse.d.ts.map +1 -1
  340. package/dist/lite/model/boughtTogetherQuery.d.ts +4 -0
  341. package/dist/lite/model/boughtTogetherQuery.d.ts.map +1 -0
  342. package/dist/lite/model/browsePagination.d.ts +19 -0
  343. package/dist/lite/model/browsePagination.d.ts.map +1 -0
  344. package/dist/lite/model/browseResponse.d.ts +2 -1
  345. package/dist/lite/model/browseResponse.d.ts.map +1 -1
  346. package/dist/lite/model/clientMethodProps.d.ts +7 -0
  347. package/dist/lite/model/clientMethodProps.d.ts.map +1 -1
  348. package/dist/lite/model/consequenceQuery.d.ts +1 -1
  349. package/dist/lite/model/consequenceQueryObject.d.ts +2 -2
  350. package/dist/lite/model/cursor.d.ts +1 -1
  351. package/dist/lite/model/distinct.d.ts +1 -1
  352. package/dist/lite/model/edit.d.ts +1 -1
  353. package/dist/lite/model/exactOnSingleWordQuery.d.ts +1 -1
  354. package/dist/lite/model/facetFilters.d.ts +2 -3
  355. package/dist/lite/model/facetFilters.d.ts.map +1 -1
  356. package/dist/lite/model/facetHits.d.ts +2 -2
  357. package/dist/lite/model/facetOrdering.d.ts +2 -2
  358. package/dist/lite/model/facets.d.ts +2 -2
  359. package/dist/lite/model/fallbackParams.d.ts +3 -0
  360. package/dist/lite/model/fallbackParams.d.ts.map +1 -0
  361. package/dist/lite/model/fbtModel.d.ts +5 -0
  362. package/dist/lite/model/fbtModel.d.ts.map +1 -0
  363. package/dist/lite/model/frequentlyBoughtTogether.d.ts +9 -0
  364. package/dist/lite/model/frequentlyBoughtTogether.d.ts.map +1 -0
  365. package/dist/lite/model/getRecommendationsParams.d.ts +11 -0
  366. package/dist/lite/model/getRecommendationsParams.d.ts.map +1 -0
  367. package/dist/lite/model/getRecommendationsResponse.d.ts +5 -0
  368. package/dist/lite/model/getRecommendationsResponse.d.ts.map +1 -0
  369. package/dist/lite/model/highlightResult.d.ts +1 -1
  370. package/dist/lite/model/highlightResult.d.ts.map +1 -1
  371. package/dist/lite/model/highlightResultOption.d.ts +3 -3
  372. package/dist/lite/model/hit.d.ts +4 -4
  373. package/dist/lite/model/ignorePlurals.d.ts +3 -2
  374. package/dist/lite/model/ignorePlurals.d.ts.map +1 -1
  375. package/dist/lite/model/index.d.ts +32 -37
  376. package/dist/lite/model/index.d.ts.map +1 -1
  377. package/dist/lite/model/indexSettings.d.ts +1 -1
  378. package/dist/lite/model/indexSettingsAsSearchParams.d.ts +32 -35
  379. package/dist/lite/model/indexSettingsAsSearchParams.d.ts.map +1 -1
  380. package/dist/lite/model/lookingSimilar.d.ts +11 -0
  381. package/dist/lite/model/lookingSimilar.d.ts.map +1 -0
  382. package/dist/lite/model/lookingSimilarModel.d.ts +5 -0
  383. package/dist/lite/model/lookingSimilarModel.d.ts.map +1 -0
  384. package/dist/lite/model/lookingSimilarQuery.d.ts +4 -0
  385. package/dist/lite/model/lookingSimilarQuery.d.ts.map +1 -0
  386. package/dist/lite/model/matchLevel.d.ts +1 -1
  387. package/dist/lite/model/mode.d.ts +1 -1
  388. package/dist/lite/model/numericFilters.d.ts +2 -3
  389. package/dist/lite/model/numericFilters.d.ts.map +1 -1
  390. package/dist/lite/model/optionalFilters.d.ts +2 -3
  391. package/dist/lite/model/optionalFilters.d.ts.map +1 -1
  392. package/dist/lite/model/params.d.ts +1 -1
  393. package/dist/lite/model/queryType.d.ts +1 -1
  394. package/dist/lite/model/rankingInfo.d.ts +13 -10
  395. package/dist/lite/model/rankingInfo.d.ts.map +1 -1
  396. package/dist/lite/model/reRankingApplyFilter.d.ts +2 -3
  397. package/dist/lite/model/reRankingApplyFilter.d.ts.map +1 -1
  398. package/dist/lite/model/recommendHit.d.ts +27 -0
  399. package/dist/lite/model/recommendHit.d.ts.map +1 -0
  400. package/dist/lite/model/recommendationsHit.d.ts +4 -0
  401. package/dist/lite/model/recommendationsHit.d.ts.map +1 -0
  402. package/dist/lite/model/recommendationsHits.d.ts +5 -0
  403. package/dist/lite/model/recommendationsHits.d.ts.map +1 -0
  404. package/dist/lite/model/recommendationsRequest.d.ts +8 -0
  405. package/dist/lite/model/recommendationsRequest.d.ts.map +1 -0
  406. package/dist/lite/model/recommendationsResults.d.ts +5 -0
  407. package/dist/lite/model/recommendationsResults.d.ts.map +1 -0
  408. package/dist/lite/model/recommendedForYou.d.ts +7 -0
  409. package/dist/lite/model/recommendedForYou.d.ts.map +1 -0
  410. package/dist/lite/model/recommendedForYouModel.d.ts +5 -0
  411. package/dist/lite/model/recommendedForYouModel.d.ts.map +1 -0
  412. package/dist/lite/model/recommendedForYouQuery.d.ts +4 -0
  413. package/dist/lite/model/recommendedForYouQuery.d.ts.map +1 -0
  414. package/dist/lite/model/redirect.d.ts +1 -1
  415. package/dist/lite/model/redirectURL.d.ts +7 -0
  416. package/dist/lite/model/redirectURL.d.ts.map +1 -0
  417. package/dist/lite/model/relatedModel.d.ts +5 -0
  418. package/dist/lite/model/relatedModel.d.ts.map +1 -0
  419. package/dist/lite/model/relatedProducts.d.ts +11 -0
  420. package/dist/lite/model/relatedProducts.d.ts.map +1 -0
  421. package/dist/lite/model/relatedQuery.d.ts +4 -0
  422. package/dist/lite/model/relatedQuery.d.ts.map +1 -0
  423. package/dist/lite/model/removeStopWords.d.ts +3 -2
  424. package/dist/lite/model/removeStopWords.d.ts.map +1 -1
  425. package/dist/lite/model/removeWordsIfNoResults.d.ts +1 -1
  426. package/dist/lite/model/renderingContent.d.ts +3 -1
  427. package/dist/lite/model/renderingContent.d.ts.map +1 -1
  428. package/dist/lite/model/searchForFacetValuesResponse.d.ts +4 -1
  429. package/dist/lite/model/searchForFacetValuesResponse.d.ts.map +1 -1
  430. package/dist/lite/model/searchForFacetsOptions.d.ts +2 -2
  431. package/dist/lite/model/searchForHitsOptions.d.ts +1 -1
  432. package/dist/lite/model/searchHits.d.ts +6 -3
  433. package/dist/lite/model/searchHits.d.ts.map +1 -1
  434. package/dist/lite/model/searchPagination.d.ts +19 -0
  435. package/dist/lite/model/searchPagination.d.ts.map +1 -0
  436. package/dist/lite/model/searchParams.d.ts +1 -2
  437. package/dist/lite/model/searchParams.d.ts.map +1 -1
  438. package/dist/lite/model/searchParamsObject.d.ts +3 -0
  439. package/dist/lite/model/searchParamsObject.d.ts.map +1 -1
  440. package/dist/lite/model/searchParamsQuery.d.ts +1 -1
  441. package/dist/lite/model/searchResponse.d.ts +2 -1
  442. package/dist/lite/model/searchResponse.d.ts.map +1 -1
  443. package/dist/lite/model/searchStrategy.d.ts +1 -1
  444. package/dist/lite/model/semanticSearch.d.ts +2 -2
  445. package/dist/lite/model/snippetResult.d.ts +1 -1
  446. package/dist/lite/model/snippetResult.d.ts.map +1 -1
  447. package/dist/lite/model/snippetResultOption.d.ts +2 -2
  448. package/dist/lite/model/sortRemainingBy.d.ts +1 -1
  449. package/dist/lite/model/supportedLanguage.d.ts +5 -0
  450. package/dist/lite/model/supportedLanguage.d.ts.map +1 -0
  451. package/dist/lite/model/tagFilters.d.ts +2 -3
  452. package/dist/lite/model/tagFilters.d.ts.map +1 -1
  453. package/dist/lite/model/trendingFacetHit.d.ts +18 -0
  454. package/dist/lite/model/trendingFacetHit.d.ts.map +1 -0
  455. package/dist/lite/model/trendingFacets.d.ts +11 -0
  456. package/dist/lite/model/trendingFacets.d.ts.map +1 -0
  457. package/dist/lite/model/trendingFacetsModel.d.ts +5 -0
  458. package/dist/lite/model/trendingFacetsModel.d.ts.map +1 -0
  459. package/dist/lite/model/trendingFacetsQuery.d.ts +4 -0
  460. package/dist/lite/model/trendingFacetsQuery.d.ts.map +1 -0
  461. package/dist/lite/model/trendingItems.d.ts +15 -0
  462. package/dist/lite/model/trendingItems.d.ts.map +1 -0
  463. package/dist/lite/model/trendingItemsModel.d.ts +5 -0
  464. package/dist/lite/model/trendingItemsModel.d.ts.map +1 -0
  465. package/dist/lite/model/trendingItemsQuery.d.ts +4 -0
  466. package/dist/lite/model/trendingItemsQuery.d.ts.map +1 -0
  467. package/dist/lite/model/typoTolerance.d.ts +1 -1
  468. package/dist/lite/model/typoToleranceEnum.d.ts +3 -0
  469. package/dist/lite/model/typoToleranceEnum.d.ts.map +1 -1
  470. package/dist/lite/model/value.d.ts +5 -1
  471. package/dist/lite/model/value.d.ts.map +1 -1
  472. package/dist/lite/src/liteClient.d.ts +19 -10
  473. package/dist/lite/src/liteClient.d.ts.map +1 -1
  474. package/dist/recommend/model/advancedSyntaxFeatures.d.ts +2 -0
  475. package/dist/recommend/model/advancedSyntaxFeatures.d.ts.map +1 -0
  476. package/dist/recommend/model/alternativesAsExact.d.ts +2 -0
  477. package/dist/recommend/model/alternativesAsExact.d.ts.map +1 -0
  478. package/dist/recommend/model/aroundPrecision.d.ts +6 -0
  479. package/dist/recommend/model/aroundPrecision.d.ts.map +1 -0
  480. package/dist/recommend/model/aroundPrecisionFromValueInner.d.ts +14 -0
  481. package/dist/recommend/model/aroundPrecisionFromValueInner.d.ts.map +1 -0
  482. package/dist/recommend/model/aroundRadius.d.ts +6 -0
  483. package/dist/recommend/model/aroundRadius.d.ts.map +1 -0
  484. package/dist/recommend/model/aroundRadiusAll.d.ts +5 -0
  485. package/dist/recommend/model/aroundRadiusAll.d.ts.map +1 -0
  486. package/dist/recommend/model/autoFacetFilter.d.ts +14 -0
  487. package/dist/recommend/model/autoFacetFilter.d.ts.map +1 -0
  488. package/dist/recommend/model/baseRecommendRequest.d.ts +17 -0
  489. package/dist/recommend/model/baseRecommendRequest.d.ts.map +1 -0
  490. package/dist/recommend/model/baseSearchParams.d.ts +4 -0
  491. package/dist/recommend/model/baseSearchParams.d.ts.map +1 -0
  492. package/dist/recommend/model/baseSearchParamsWithoutQuery.d.ts +116 -0
  493. package/dist/recommend/model/baseSearchParamsWithoutQuery.d.ts.map +1 -0
  494. package/dist/recommend/model/baseSearchResponse.d.ts +94 -0
  495. package/dist/recommend/model/baseSearchResponse.d.ts.map +1 -0
  496. package/dist/recommend/model/boughtTogetherQuery.d.ts +4 -0
  497. package/dist/recommend/model/boughtTogetherQuery.d.ts.map +1 -0
  498. package/dist/recommend/model/clientMethodProps.d.ts +135 -0
  499. package/dist/recommend/model/clientMethodProps.d.ts.map +1 -0
  500. package/dist/recommend/model/condition.d.ts +14 -0
  501. package/dist/recommend/model/condition.d.ts.map +1 -0
  502. package/dist/recommend/model/consequence.d.ts +18 -0
  503. package/dist/recommend/model/consequence.d.ts.map +1 -0
  504. package/dist/recommend/model/deletedAtResponse.d.ts +14 -0
  505. package/dist/recommend/model/deletedAtResponse.d.ts.map +1 -0
  506. package/dist/recommend/model/distinct.d.ts +5 -0
  507. package/dist/recommend/model/distinct.d.ts.map +1 -0
  508. package/dist/recommend/model/errorBase.d.ts +7 -0
  509. package/dist/recommend/model/errorBase.d.ts.map +1 -0
  510. package/dist/recommend/model/exactOnSingleWordQuery.d.ts +5 -0
  511. package/dist/recommend/model/exactOnSingleWordQuery.d.ts.map +1 -0
  512. package/dist/recommend/model/exhaustive.d.ts +26 -0
  513. package/dist/recommend/model/exhaustive.d.ts.map +1 -0
  514. package/dist/recommend/model/facetFilters.d.ts +5 -0
  515. package/dist/recommend/model/facetFilters.d.ts.map +1 -0
  516. package/dist/recommend/model/facetOrdering.d.ts +13 -0
  517. package/dist/recommend/model/facetOrdering.d.ts.map +1 -0
  518. package/dist/recommend/model/facets.d.ts +10 -0
  519. package/dist/recommend/model/facets.d.ts.map +1 -0
  520. package/dist/recommend/model/facetsStats.d.ts +19 -0
  521. package/dist/recommend/model/facetsStats.d.ts.map +1 -0
  522. package/dist/recommend/model/fallbackParams.d.ts +3 -0
  523. package/dist/recommend/model/fallbackParams.d.ts.map +1 -0
  524. package/dist/recommend/model/fbtModel.d.ts +5 -0
  525. package/dist/recommend/model/fbtModel.d.ts.map +1 -0
  526. package/dist/recommend/model/frequentlyBoughtTogether.d.ts +9 -0
  527. package/dist/recommend/model/frequentlyBoughtTogether.d.ts.map +1 -0
  528. package/dist/recommend/model/getRecommendTaskResponse.d.ts +5 -0
  529. package/dist/recommend/model/getRecommendTaskResponse.d.ts.map +1 -0
  530. package/dist/recommend/model/getRecommendationsParams.d.ts +11 -0
  531. package/dist/recommend/model/getRecommendationsParams.d.ts.map +1 -0
  532. package/dist/recommend/model/getRecommendationsResponse.d.ts +5 -0
  533. package/dist/recommend/model/getRecommendationsResponse.d.ts.map +1 -0
  534. package/dist/recommend/model/hideConsequenceObject.d.ts +10 -0
  535. package/dist/recommend/model/hideConsequenceObject.d.ts.map +1 -0
  536. package/dist/recommend/model/highlightResult.d.ts +3 -0
  537. package/dist/recommend/model/highlightResult.d.ts.map +1 -0
  538. package/dist/recommend/model/highlightResultOption.d.ts +20 -0
  539. package/dist/recommend/model/highlightResultOption.d.ts.map +1 -0
  540. package/dist/recommend/model/ignorePlurals.d.ts +6 -0
  541. package/dist/recommend/model/ignorePlurals.d.ts.map +1 -0
  542. package/dist/recommend/model/index.d.ts +94 -0
  543. package/dist/recommend/model/index.d.ts.map +1 -0
  544. package/dist/recommend/model/indexSettingsAsSearchParams.d.ts +160 -0
  545. package/dist/recommend/model/indexSettingsAsSearchParams.d.ts.map +1 -0
  546. package/dist/recommend/model/lookingSimilar.d.ts +11 -0
  547. package/dist/recommend/model/lookingSimilar.d.ts.map +1 -0
  548. package/dist/recommend/model/lookingSimilarModel.d.ts +5 -0
  549. package/dist/recommend/model/lookingSimilarModel.d.ts.map +1 -0
  550. package/dist/recommend/model/lookingSimilarQuery.d.ts +4 -0
  551. package/dist/recommend/model/lookingSimilarQuery.d.ts.map +1 -0
  552. package/dist/recommend/model/matchLevel.d.ts +5 -0
  553. package/dist/recommend/model/matchLevel.d.ts.map +1 -0
  554. package/dist/recommend/model/matchedGeoLocation.d.ts +15 -0
  555. package/dist/recommend/model/matchedGeoLocation.d.ts.map +1 -0
  556. package/dist/recommend/model/mode.d.ts +5 -0
  557. package/dist/recommend/model/mode.d.ts.map +1 -0
  558. package/dist/recommend/model/numericFilters.d.ts +5 -0
  559. package/dist/recommend/model/numericFilters.d.ts.map +1 -0
  560. package/dist/recommend/model/optionalFilters.d.ts +5 -0
  561. package/dist/recommend/model/optionalFilters.d.ts.map +1 -0
  562. package/dist/recommend/model/paramsConsequence.d.ts +19 -0
  563. package/dist/recommend/model/paramsConsequence.d.ts.map +1 -0
  564. package/dist/recommend/model/personalization.d.ts +15 -0
  565. package/dist/recommend/model/personalization.d.ts.map +1 -0
  566. package/dist/recommend/model/promoteConsequenceObject.d.ts +14 -0
  567. package/dist/recommend/model/promoteConsequenceObject.d.ts.map +1 -0
  568. package/dist/recommend/model/queryType.d.ts +5 -0
  569. package/dist/recommend/model/queryType.d.ts.map +1 -0
  570. package/dist/recommend/model/rankingInfo.d.ts +54 -0
  571. package/dist/recommend/model/rankingInfo.d.ts.map +1 -0
  572. package/dist/recommend/model/reRankingApplyFilter.d.ts +5 -0
  573. package/dist/recommend/model/reRankingApplyFilter.d.ts.map +1 -0
  574. package/dist/recommend/model/recommendHit.d.ts +27 -0
  575. package/dist/recommend/model/recommendHit.d.ts.map +1 -0
  576. package/dist/recommend/model/recommendModels.d.ts +2 -0
  577. package/dist/recommend/model/recommendModels.d.ts.map +1 -0
  578. package/dist/recommend/model/recommendRule.d.ts +24 -0
  579. package/dist/recommend/model/recommendRule.d.ts.map +1 -0
  580. package/dist/recommend/model/recommendRuleMetadata.d.ts +10 -0
  581. package/dist/recommend/model/recommendRuleMetadata.d.ts.map +1 -0
  582. package/dist/recommend/model/recommendationsHit.d.ts +4 -0
  583. package/dist/recommend/model/recommendationsHit.d.ts.map +1 -0
  584. package/dist/recommend/model/recommendationsHits.d.ts +5 -0
  585. package/dist/recommend/model/recommendationsHits.d.ts.map +1 -0
  586. package/dist/recommend/model/recommendationsRequest.d.ts +8 -0
  587. package/dist/recommend/model/recommendationsRequest.d.ts.map +1 -0
  588. package/dist/recommend/model/recommendationsResults.d.ts +5 -0
  589. package/dist/recommend/model/recommendationsResults.d.ts.map +1 -0
  590. package/dist/recommend/model/recommendedForYou.d.ts +7 -0
  591. package/dist/recommend/model/recommendedForYou.d.ts.map +1 -0
  592. package/dist/recommend/model/recommendedForYouModel.d.ts +5 -0
  593. package/dist/recommend/model/recommendedForYouModel.d.ts.map +1 -0
  594. package/dist/recommend/model/recommendedForYouQuery.d.ts +4 -0
  595. package/dist/recommend/model/recommendedForYouQuery.d.ts.map +1 -0
  596. package/dist/recommend/model/redirect.d.ts +8 -0
  597. package/dist/recommend/model/redirect.d.ts.map +1 -0
  598. package/dist/recommend/model/redirectRuleIndexMetadata.d.ts +21 -0
  599. package/dist/recommend/model/redirectRuleIndexMetadata.d.ts.map +1 -0
  600. package/dist/recommend/model/redirectRuleIndexMetadataData.d.ts +7 -0
  601. package/dist/recommend/model/redirectRuleIndexMetadataData.d.ts.map +1 -0
  602. package/dist/recommend/model/redirectURL.d.ts +7 -0
  603. package/dist/recommend/model/redirectURL.d.ts.map +1 -0
  604. package/dist/recommend/model/relatedModel.d.ts +5 -0
  605. package/dist/recommend/model/relatedModel.d.ts.map +1 -0
  606. package/dist/recommend/model/relatedProducts.d.ts +11 -0
  607. package/dist/recommend/model/relatedProducts.d.ts.map +1 -0
  608. package/dist/recommend/model/relatedQuery.d.ts +4 -0
  609. package/dist/recommend/model/relatedQuery.d.ts.map +1 -0
  610. package/dist/recommend/model/removeStopWords.d.ts +6 -0
  611. package/dist/recommend/model/removeStopWords.d.ts.map +1 -0
  612. package/dist/recommend/model/removeWordsIfNoResults.d.ts +5 -0
  613. package/dist/recommend/model/removeWordsIfNoResults.d.ts.map +1 -0
  614. package/dist/recommend/model/renderingContent.d.ts +10 -0
  615. package/dist/recommend/model/renderingContent.d.ts.map +1 -0
  616. package/dist/recommend/model/searchPagination.d.ts +19 -0
  617. package/dist/recommend/model/searchPagination.d.ts.map +1 -0
  618. package/dist/recommend/model/searchParams.d.ts +3 -0
  619. package/dist/recommend/model/searchParams.d.ts.map +1 -0
  620. package/dist/recommend/model/searchParamsObject.d.ts +7 -0
  621. package/dist/recommend/model/searchParamsObject.d.ts.map +1 -0
  622. package/dist/recommend/model/searchParamsQuery.d.ts +7 -0
  623. package/dist/recommend/model/searchParamsQuery.d.ts.map +1 -0
  624. package/dist/recommend/model/searchRecommendRulesParams.d.ts +38 -0
  625. package/dist/recommend/model/searchRecommendRulesParams.d.ts.map +1 -0
  626. package/dist/recommend/model/searchRecommendRulesResponse.d.ts +20 -0
  627. package/dist/recommend/model/searchRecommendRulesResponse.d.ts.map +1 -0
  628. package/dist/recommend/model/semanticSearch.d.ts +10 -0
  629. package/dist/recommend/model/semanticSearch.d.ts.map +1 -0
  630. package/dist/recommend/model/snippetResult.d.ts +3 -0
  631. package/dist/recommend/model/snippetResult.d.ts.map +1 -0
  632. package/dist/recommend/model/snippetResultOption.d.ts +12 -0
  633. package/dist/recommend/model/snippetResultOption.d.ts.map +1 -0
  634. package/dist/recommend/model/sortRemainingBy.d.ts +5 -0
  635. package/dist/recommend/model/sortRemainingBy.d.ts.map +1 -0
  636. package/dist/recommend/model/supportedLanguage.d.ts +5 -0
  637. package/dist/recommend/model/supportedLanguage.d.ts.map +1 -0
  638. package/dist/recommend/model/tagFilters.d.ts +5 -0
  639. package/dist/recommend/model/tagFilters.d.ts.map +1 -0
  640. package/dist/recommend/model/taskStatus.d.ts +5 -0
  641. package/dist/recommend/model/taskStatus.d.ts.map +1 -0
  642. package/dist/recommend/model/trendingFacetHit.d.ts +18 -0
  643. package/dist/recommend/model/trendingFacetHit.d.ts.map +1 -0
  644. package/dist/recommend/model/trendingFacets.d.ts +11 -0
  645. package/dist/recommend/model/trendingFacets.d.ts.map +1 -0
  646. package/dist/recommend/model/trendingFacetsModel.d.ts +5 -0
  647. package/dist/recommend/model/trendingFacetsModel.d.ts.map +1 -0
  648. package/dist/recommend/model/trendingFacetsQuery.d.ts +4 -0
  649. package/dist/recommend/model/trendingFacetsQuery.d.ts.map +1 -0
  650. package/dist/recommend/model/trendingItems.d.ts +15 -0
  651. package/dist/recommend/model/trendingItems.d.ts.map +1 -0
  652. package/dist/recommend/model/trendingItemsModel.d.ts +5 -0
  653. package/dist/recommend/model/trendingItemsModel.d.ts.map +1 -0
  654. package/dist/recommend/model/trendingItemsQuery.d.ts +4 -0
  655. package/dist/recommend/model/trendingItemsQuery.d.ts.map +1 -0
  656. package/dist/recommend/model/typoTolerance.d.ts +6 -0
  657. package/dist/recommend/model/typoTolerance.d.ts.map +1 -0
  658. package/dist/recommend/model/typoToleranceEnum.d.ts +5 -0
  659. package/dist/recommend/model/typoToleranceEnum.d.ts.map +1 -0
  660. package/dist/recommend/model/value.d.ts +13 -0
  661. package/dist/recommend/model/value.d.ts.map +1 -0
  662. package/dist/recommend/src/recommendClient.d.ts +132 -0
  663. package/dist/recommend/src/recommendClient.d.ts.map +1 -0
  664. package/lite/builds/browser.ts +11 -6
  665. package/lite/builds/node.ts +10 -5
  666. package/lite/model/acl.ts +1 -1
  667. package/lite/model/apiKey.ts +8 -8
  668. package/lite/model/aroundPrecision.ts +1 -1
  669. package/lite/model/aroundPrecisionFromValueInner.ts +9 -0
  670. package/lite/model/aroundRadius.ts +1 -1
  671. package/lite/model/aroundRadiusAll.ts +3 -0
  672. package/lite/model/automaticFacetFilter.ts +4 -4
  673. package/lite/model/automaticFacetFilters.ts +1 -1
  674. package/lite/model/baseGetApiKeyResponse.ts +1 -1
  675. package/lite/model/baseIndexSettings.ts +25 -18
  676. package/lite/model/baseRecommendRequest.ts +22 -0
  677. package/lite/model/baseSearchParamsWithoutQuery.ts +26 -30
  678. package/lite/model/baseSearchResponse.ts +9 -24
  679. package/lite/model/boughtTogetherQuery.ts +7 -0
  680. package/lite/model/browsePagination.ts +23 -0
  681. package/lite/model/browseResponse.ts +2 -0
  682. package/lite/model/clientMethodProps.ts +8 -0
  683. package/lite/model/consequenceQuery.ts +1 -1
  684. package/lite/model/consequenceQueryObject.ts +2 -2
  685. package/lite/model/cursor.ts +1 -1
  686. package/lite/model/distinct.ts +1 -1
  687. package/lite/model/edit.ts +1 -1
  688. package/lite/model/exactOnSingleWordQuery.ts +1 -1
  689. package/lite/model/facetFilters.ts +2 -4
  690. package/lite/model/facetHits.ts +2 -2
  691. package/lite/model/facetOrdering.ts +2 -2
  692. package/lite/model/facets.ts +2 -2
  693. package/lite/model/{attributeToUpdate.ts → fallbackParams.ts} +2 -2
  694. package/lite/model/fbtModel.ts +6 -0
  695. package/lite/model/{consequenceHide.ts → frequentlyBoughtTogether.ts} +6 -5
  696. package/lite/model/getRecommendationsParams.ts +13 -0
  697. package/lite/model/getRecommendationsResponse.ts +7 -0
  698. package/lite/model/highlightResult.ts +1 -0
  699. package/lite/model/highlightResultOption.ts +3 -3
  700. package/lite/model/hit.ts +4 -4
  701. package/lite/model/ignorePlurals.ts +4 -2
  702. package/lite/model/index.ts +32 -37
  703. package/lite/model/indexSettings.ts +1 -1
  704. package/lite/model/indexSettingsAsSearchParams.ts +32 -36
  705. package/lite/model/lookingSimilar.ts +15 -0
  706. package/lite/model/lookingSimilarModel.ts +6 -0
  707. package/lite/model/lookingSimilarQuery.ts +6 -0
  708. package/lite/model/matchLevel.ts +1 -1
  709. package/lite/model/mode.ts +1 -1
  710. package/lite/model/numericFilters.ts +2 -4
  711. package/lite/model/optionalFilters.ts +2 -4
  712. package/lite/model/params.ts +1 -1
  713. package/lite/model/queryType.ts +1 -1
  714. package/lite/model/rankingInfo.ts +13 -10
  715. package/lite/model/reRankingApplyFilter.ts +2 -4
  716. package/lite/model/recommendHit.ts +34 -0
  717. package/lite/model/{promote.ts → recommendationsHit.ts} +3 -3
  718. package/lite/model/{searchParamsString.ts → recommendationsHits.ts} +4 -5
  719. package/lite/model/recommendationsRequest.ts +16 -0
  720. package/lite/model/recommendationsResults.ts +9 -0
  721. package/lite/model/recommendedForYou.ts +10 -0
  722. package/lite/model/{operationType.ts → recommendedForYouModel.ts} +2 -2
  723. package/lite/model/recommendedForYouQuery.ts +6 -0
  724. package/lite/model/redirect.ts +1 -1
  725. package/lite/model/{dictionaryAction.ts → redirectURL.ts} +4 -2
  726. package/lite/model/relatedModel.ts +6 -0
  727. package/lite/model/relatedProducts.ts +15 -0
  728. package/lite/model/relatedQuery.ts +6 -0
  729. package/lite/model/removeStopWords.ts +4 -2
  730. package/lite/model/removeWordsIfNoResults.ts +1 -1
  731. package/lite/model/renderingContent.ts +4 -1
  732. package/lite/model/searchForFacetValuesResponse.ts +4 -1
  733. package/lite/model/searchForFacetsOptions.ts +2 -2
  734. package/lite/model/searchForHitsOptions.ts +1 -1
  735. package/lite/model/searchHits.ts +6 -3
  736. package/lite/model/searchPagination.ts +23 -0
  737. package/lite/model/searchParams.ts +1 -2
  738. package/lite/model/searchParamsObject.ts +3 -0
  739. package/lite/model/searchParamsQuery.ts +1 -1
  740. package/lite/model/searchResponse.ts +3 -1
  741. package/lite/model/searchStrategy.ts +1 -1
  742. package/lite/model/semanticSearch.ts +2 -2
  743. package/lite/model/snippetResult.ts +2 -1
  744. package/lite/model/snippetResultOption.ts +2 -2
  745. package/lite/model/sortRemainingBy.ts +1 -1
  746. package/lite/model/supportedLanguage.ts +74 -0
  747. package/lite/model/tagFilters.ts +2 -4
  748. package/lite/model/trendingFacetHit.ts +21 -0
  749. package/lite/model/trendingFacets.ts +15 -0
  750. package/lite/model/trendingFacetsModel.ts +6 -0
  751. package/lite/model/trendingFacetsQuery.ts +6 -0
  752. package/lite/model/trendingItems.ts +20 -0
  753. package/lite/model/{dictionaryEntryState.ts → trendingItemsModel.ts} +2 -2
  754. package/lite/model/trendingItemsQuery.ts +6 -0
  755. package/lite/model/typoTolerance.ts +1 -1
  756. package/lite/model/typoToleranceEnum.ts +3 -0
  757. package/lite/model/value.ts +6 -1
  758. package/lite/src/liteClient.ts +64 -12
  759. package/package.json +19 -15
  760. package/dist/client-abtesting/model/currenciesValue.d.ts.map +0 -1
  761. package/dist/client-analytics/model/averageClickEvent.d.ts +0 -15
  762. package/dist/client-analytics/model/averageClickEvent.d.ts.map +0 -1
  763. package/dist/client-analytics/model/clickPosition.d.ts +0 -11
  764. package/dist/client-analytics/model/clickPosition.d.ts.map +0 -1
  765. package/dist/client-analytics/model/clickThroughRateEvent.d.ts +0 -19
  766. package/dist/client-analytics/model/clickThroughRateEvent.d.ts.map +0 -1
  767. package/dist/client-analytics/model/conversionRateEvent.d.ts +0 -19
  768. package/dist/client-analytics/model/conversionRateEvent.d.ts.map +0 -1
  769. package/dist/client-analytics/model/getConversationRateResponse.d.ts +0 -20
  770. package/dist/client-analytics/model/getConversationRateResponse.d.ts.map +0 -1
  771. package/dist/client-analytics/model/noClickRateEvent.d.ts +0 -19
  772. package/dist/client-analytics/model/noClickRateEvent.d.ts.map +0 -1
  773. package/dist/client-analytics/model/noResultsRateEvent.d.ts +0 -19
  774. package/dist/client-analytics/model/noResultsRateEvent.d.ts.map +0 -1
  775. package/dist/client-analytics/model/searchEvent.d.ts +0 -11
  776. package/dist/client-analytics/model/searchEvent.d.ts.map +0 -1
  777. package/dist/client-analytics/model/searchNoClickEvent.d.ts +0 -15
  778. package/dist/client-analytics/model/searchNoClickEvent.d.ts.map +0 -1
  779. package/dist/client-analytics/model/searchNoResultEvent.d.ts +0 -15
  780. package/dist/client-analytics/model/searchNoResultEvent.d.ts.map +0 -1
  781. package/dist/client-analytics/model/userWithDate.d.ts +0 -11
  782. package/dist/client-analytics/model/userWithDate.d.ts.map +0 -1
  783. package/dist/client-search/model/mixedSearchFilters.d.ts +0 -2
  784. package/dist/client-search/model/mixedSearchFilters.d.ts.map +0 -1
  785. package/dist/lite/model/action.d.ts +0 -5
  786. package/dist/lite/model/action.d.ts.map +0 -1
  787. package/dist/lite/model/addApiKeyResponse.d.ts +0 -11
  788. package/dist/lite/model/addApiKeyResponse.d.ts.map +0 -1
  789. package/dist/lite/model/anchoring.d.ts +0 -5
  790. package/dist/lite/model/anchoring.d.ts.map +0 -1
  791. package/dist/lite/model/attributeToUpdate.d.ts +0 -3
  792. package/dist/lite/model/attributeToUpdate.d.ts.map +0 -1
  793. package/dist/lite/model/browseParams.d.ts +0 -4
  794. package/dist/lite/model/browseParams.d.ts.map +0 -1
  795. package/dist/lite/model/builtInOperation.d.ts +0 -12
  796. package/dist/lite/model/builtInOperation.d.ts.map +0 -1
  797. package/dist/lite/model/builtInOperationType.d.ts +0 -5
  798. package/dist/lite/model/builtInOperationType.d.ts.map +0 -1
  799. package/dist/lite/model/condition.d.ts +0 -17
  800. package/dist/lite/model/condition.d.ts.map +0 -1
  801. package/dist/lite/model/consequence.d.ts +0 -26
  802. package/dist/lite/model/consequence.d.ts.map +0 -1
  803. package/dist/lite/model/consequenceHide.d.ts +0 -10
  804. package/dist/lite/model/consequenceHide.d.ts.map +0 -1
  805. package/dist/lite/model/deleteByParams.d.ts +0 -27
  806. package/dist/lite/model/deleteByParams.d.ts.map +0 -1
  807. package/dist/lite/model/dictionaryAction.d.ts +0 -5
  808. package/dist/lite/model/dictionaryAction.d.ts.map +0 -1
  809. package/dist/lite/model/dictionaryEntry.d.ts +0 -28
  810. package/dist/lite/model/dictionaryEntry.d.ts.map +0 -1
  811. package/dist/lite/model/dictionaryEntryState.d.ts +0 -5
  812. package/dist/lite/model/dictionaryEntryState.d.ts.map +0 -1
  813. package/dist/lite/model/dictionaryLanguage.d.ts +0 -10
  814. package/dist/lite/model/dictionaryLanguage.d.ts.map +0 -1
  815. package/dist/lite/model/dictionaryType.d.ts +0 -2
  816. package/dist/lite/model/dictionaryType.d.ts.map +0 -1
  817. package/dist/lite/model/fetchedIndex.d.ts +0 -47
  818. package/dist/lite/model/fetchedIndex.d.ts.map +0 -1
  819. package/dist/lite/model/languages.d.ts +0 -10
  820. package/dist/lite/model/languages.d.ts.map +0 -1
  821. package/dist/lite/model/listIndicesResponse.d.ts +0 -12
  822. package/dist/lite/model/listIndicesResponse.d.ts.map +0 -1
  823. package/dist/lite/model/logType.d.ts +0 -2
  824. package/dist/lite/model/logType.d.ts.map +0 -1
  825. package/dist/lite/model/mixedSearchFilters.d.ts +0 -2
  826. package/dist/lite/model/mixedSearchFilters.d.ts.map +0 -1
  827. package/dist/lite/model/operationType.d.ts +0 -5
  828. package/dist/lite/model/operationType.d.ts.map +0 -1
  829. package/dist/lite/model/promote.d.ts +0 -4
  830. package/dist/lite/model/promote.d.ts.map +0 -1
  831. package/dist/lite/model/promoteObjectID.d.ts +0 -14
  832. package/dist/lite/model/promoteObjectID.d.ts.map +0 -1
  833. package/dist/lite/model/promoteObjectIDs.d.ts +0 -14
  834. package/dist/lite/model/promoteObjectIDs.d.ts.map +0 -1
  835. package/dist/lite/model/rule.d.ts +0 -30
  836. package/dist/lite/model/rule.d.ts.map +0 -1
  837. package/dist/lite/model/scopeType.d.ts +0 -2
  838. package/dist/lite/model/scopeType.d.ts.map +0 -1
  839. package/dist/lite/model/searchParamsString.d.ts +0 -7
  840. package/dist/lite/model/searchParamsString.d.ts.map +0 -1
  841. package/dist/lite/model/searchSynonymsResponse.d.ts +0 -12
  842. package/dist/lite/model/searchSynonymsResponse.d.ts.map +0 -1
  843. package/dist/lite/model/source.d.ts +0 -14
  844. package/dist/lite/model/source.d.ts.map +0 -1
  845. package/dist/lite/model/standardEntries.d.ts +0 -18
  846. package/dist/lite/model/standardEntries.d.ts.map +0 -1
  847. package/dist/lite/model/synonymHit.d.ts +0 -36
  848. package/dist/lite/model/synonymHit.d.ts.map +0 -1
  849. package/dist/lite/model/synonymType.d.ts +0 -5
  850. package/dist/lite/model/synonymType.d.ts.map +0 -1
  851. package/dist/lite/model/taskStatus.d.ts +0 -5
  852. package/dist/lite/model/taskStatus.d.ts.map +0 -1
  853. package/dist/lite/model/timeRange.d.ts +0 -11
  854. package/dist/lite/model/timeRange.d.ts.map +0 -1
  855. package/dist/lite/model/updatedRuleResponse.d.ts +0 -15
  856. package/dist/lite/model/updatedRuleResponse.d.ts.map +0 -1
  857. package/dist/lite/model/userId.d.ts +0 -22
  858. package/dist/lite/model/userId.d.ts.map +0 -1
  859. package/lite/model/action.ts +0 -13
  860. package/lite/model/addApiKeyResponse.ts +0 -13
  861. package/lite/model/anchoring.ts +0 -6
  862. package/lite/model/browseParams.ts +0 -6
  863. package/lite/model/builtInOperation.ts +0 -15
  864. package/lite/model/builtInOperationType.ts +0 -13
  865. package/lite/model/condition.ts +0 -22
  866. package/lite/model/consequence.ts +0 -32
  867. package/lite/model/deleteByParams.ts +0 -36
  868. package/lite/model/dictionaryEntry.ts +0 -35
  869. package/lite/model/dictionaryLanguage.ts +0 -11
  870. package/lite/model/dictionaryType.ts +0 -3
  871. package/lite/model/fetchedIndex.ts +0 -58
  872. package/lite/model/languages.ts +0 -14
  873. package/lite/model/listIndicesResponse.ts +0 -15
  874. package/lite/model/logType.ts +0 -3
  875. package/lite/model/mixedSearchFilters.ts +0 -3
  876. package/lite/model/promoteObjectID.ts +0 -16
  877. package/lite/model/promoteObjectIDs.ts +0 -16
  878. package/lite/model/rule.ts +0 -37
  879. package/lite/model/scopeType.ts +0 -3
  880. package/lite/model/searchSynonymsResponse.ts +0 -15
  881. package/lite/model/source.ts +0 -16
  882. package/lite/model/standardEntries.ts +0 -21
  883. package/lite/model/synonymHit.ts +0 -45
  884. package/lite/model/synonymType.ts +0 -11
  885. package/lite/model/taskStatus.ts +0 -6
  886. package/lite/model/timeRange.ts +0 -13
  887. package/lite/model/updatedRuleResponse.ts +0 -18
  888. package/lite/model/userId.ts +0 -26
@@ -1,2 +1,2 @@
1
- /*! algoliasearch.umd.js | 5.0.0-alpha.99 | © Algolia, inc. | https://github.com/algolia/algoliasearch-client-javascript */
2
- !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports):"function"==typeof define&&define.amd?define(["exports"],r):r((e="undefined"!=typeof globalThis?globalThis:e||self).algoliasearch={})}(this,(function(e){"use strict";function r(e,r,t="WithinHeaders"){const a={"x-algolia-api-key":r,"x-algolia-application-id":e};return{headers:()=>"WithinHeaders"===t?a:{},queryParameters:()=>"WithinQueryParameters"===t?a:{}}}function t({func:e,validate:r,aggregator:t,error:a,timeout:n=(()=>0)}){const s=i=>new Promise(((o,d)=>{e(i).then((e=>(t&&t(e),r(e)?o(e):a&&a.validate(e)?d(new Error(a.message(e))):setTimeout((()=>{s(e).then(o).catch(d)}),n())))).catch((e=>{d(e)}))}));return s()}function a(e){let r;const t=`algolia-client-js-${e.key}`;function a(){return void 0===r&&(r=e.localStorage||window.localStorage),r}function n(){return JSON.parse(a().getItem(t)||"{}")}function s(e){a().setItem(t,JSON.stringify(e))}return{get:(r,t,a={miss:()=>Promise.resolve()})=>Promise.resolve().then((()=>(function(){const r=e.timeToLive?1e3*e.timeToLive:null,t=n(),a=Object.fromEntries(Object.entries(t).filter((([,e])=>void 0!==e.timestamp)));if(s(a),!r)return;s(Object.fromEntries(Object.entries(a).filter((([,e])=>{const t=(new Date).getTime();return!(e.timestamp+r<t)}))))}(),n()[JSON.stringify(r)]))).then((e=>Promise.all([e?e.value:t(),void 0!==e]))).then((([e,r])=>Promise.all([e,r||a.miss(e)]))).then((([e])=>e)),set:(e,r)=>Promise.resolve().then((()=>{const s=n();return s[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:r},a().setItem(t,JSON.stringify(s)),r})),delete:e=>Promise.resolve().then((()=>{const r=n();delete r[JSON.stringify(e)],a().setItem(t,JSON.stringify(r))})),clear:()=>Promise.resolve().then((()=>{a().removeItem(t)}))}}function n(e){const r=[...e.caches],t=r.shift();return void 0===t?{get:(e,r,t={miss:()=>Promise.resolve()})=>r().then((e=>Promise.all([e,t.miss(e)]))).then((([e])=>e)),set:(e,r)=>Promise.resolve(r),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}:{get:(e,a,s={miss:()=>Promise.resolve()})=>t.get(e,a,s).catch((()=>n({caches:r}).get(e,a,s))),set:(e,a)=>t.set(e,a).catch((()=>n({caches:r}).set(e,a))),delete:e=>t.delete(e).catch((()=>n({caches:r}).delete(e))),clear:()=>t.clear().catch((()=>n({caches:r}).clear()))}}function s(e={serializable:!0}){let r={};return{get(t,a,n={miss:()=>Promise.resolve()}){const s=JSON.stringify(t);if(s in r)return Promise.resolve(e.serializable?JSON.parse(r[s]):r[s]);const i=a();return i.then((e=>n.miss(e))).then((()=>i))},set:(t,a)=>(r[JSON.stringify(t)]=e.serializable?JSON.stringify(a):a,Promise.resolve(a)),delete:e=>(delete r[JSON.stringify(e)],Promise.resolve()),clear:()=>(r={},Promise.resolve())}}const i=12e4;function o(e,r="up"){const t=Date.now();return{...e,status:r,lastUpdate:t,isUp:function(){return"up"===r||Date.now()-t>i},isTimedOut:function(){return"timed out"===r&&Date.now()-t<=i}}}function d(e){var r=function(e,r){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var a=t.call(e,r||"default");if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==typeof r?r:String(r)}function c(e,r,t){return(r=d(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}class u extends Error{constructor(e,r){super(e),c(this,"name","AlgoliaError"),r&&(this.name=r)}}class h extends u{constructor(e,r,t){super(e,t),c(this,"stackTrace",void 0),this.stackTrace=r}}class l extends h{constructor(e){super("Unreachable hosts - your application id may be incorrect. If the error persists, please create a ticket at https://support.algolia.com/ sharing steps we can use to reproduce the issue.",e,"RetryError")}}class m extends h{constructor(e,r,t,a="ApiError"){super(e,t,a),c(this,"status",void 0),this.status=r}}class g extends u{constructor(e,r){super(e,"DeserializationError"),c(this,"response",void 0),this.response=r}}class p extends m{constructor(e,r,t,a){super(e,r,a,"DetailedApiError"),c(this,"error",void 0),this.error=t}}function w(e,r,t){const a=function(e){const r=e=>"[object Object]"===Object.prototype.toString.call(e)||"[object Array]"===Object.prototype.toString.call(e);return Object.keys(e).map((t=>`${t}=${encodeURIComponent(r(e[t])?JSON.stringify(e[t]):e[t])}`)).join("&")}(t);let n=`${e.protocol}://${e.url}/${"/"===r.charAt(0)?r.substr(1):r}`;return a.length&&(n+=`?${a}`),n}function P(e){const r=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...r}}}}function y({hosts:e,hostsCache:r,baseHeaders:t,baseQueryParameters:a,algoliaAgent:n,timeouts:s,requester:i,requestsCache:d,responsesCache:c}){async function u(d,c,u=!0){const h=[],y=function(e,r){if("GET"===e.method||void 0===e.data&&void 0===r.data)return;const t=Array.isArray(e.data)?e.data:{...e.data,...r.data};return JSON.stringify(t)}(d,c),q=function(e,r,t){const a={Accept:"application/json",...e,...r,...t},n={};return Object.keys(a).forEach((e=>{const r=a[e];n[e.toLowerCase()]=r})),n}(t,d.headers,c.headers),f="GET"===d.method?{...d.data,...c.data}:{},E={...a,...d.queryParameters,...f};if(n.value&&(E["x-algolia-agent"]=n.value),c&&c.queryParameters)for(const e of Object.keys(c.queryParameters))c.queryParameters[e]&&"[object Object]"!==Object.prototype.toString.call(c.queryParameters[e])?E[e]=c.queryParameters[e].toString():E[e]=c.queryParameters[e];let x=0;const S=async(e,t)=>{const a=e.pop();if(void 0===a)throw new l(function(e){return e.map((e=>P(e)))}(h));let n=c.timeout;void 0===n&&(n=u?s.read:s.write);const f={data:y,headers:q,method:d.method,url:w(a,d.path,E),connectTimeout:t(x,s.connect),responseTimeout:t(x,n)},v=r=>{const t={request:f,response:r,host:a,triesLeft:e.length};return h.push(t),t},b=await i.send(f);if(function({isTimedOut:e,status:r}){return e||function({isTimedOut:e,status:r}){return!e&&0==~~r}({isTimedOut:e,status:r})||2!=~~(r/100)&&4!=~~(r/100)}(b)){const n=v(b);return b.isTimedOut&&x++,console.log("Retryable failure",P(n)),await r.set(a,o(a,b.isTimedOut?"timed out":"down")),S(e,t)}if(function({status:e}){return 2==~~(e/100)}(b))return function(e){try{return JSON.parse(e.content)}catch(r){throw new g(r.message,e)}}(b);throw v(b),function({content:e,status:r},t){try{const a=JSON.parse(e);return"error"in a?new p(a.message,r,a.error,t):new m(a.message,r,t)}catch(e){}return new m(e,r,t)}(b,h)},v=e.filter((e=>"readWrite"===e.accept||(u?"read"===e.accept:"write"===e.accept))),b=await async function(e){const t=await Promise.all(e.map((e=>r.get(e,(()=>Promise.resolve(o(e))))))),a=t.filter((e=>e.isUp())),n=t.filter((e=>e.isTimedOut())),s=[...a,...n];return{hosts:s.length>0?s:e,getTimeout:(e,r)=>(0===n.length&&0===e?1:n.length+3+e)*r}}(v);return S([...b.hosts].reverse(),b.getTimeout)}return{hostsCache:r,requester:i,timeouts:s,algoliaAgent:n,baseHeaders:t,baseQueryParameters:a,hosts:e,request:function(e,r={}){const n=e.useReadTransporter||"GET"===e.method;if(!n)return u(e,r,n);const s=()=>u(e,r);if(!0!==(r.cacheable||e.cacheable))return s();const i={request:e,requestOptions:r,transporter:{queryParameters:a,headers:t}};return c.get(i,(()=>d.get(i,(()=>d.set(i,s()).then((e=>Promise.all([d.delete(i),e])),(e=>Promise.all([d.delete(i),Promise.reject(e)]))).then((([e,r])=>r))))),{miss:e=>c.set(i,e)})},requestsCache:d,responsesCache:c}}function q({algoliaAgents:e,client:r,version:t}){const a=function(e){const r={value:`Algolia for JavaScript (${e})`,add(e){const t=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===r.value.indexOf(t)&&(r.value=`${r.value}${t}`),r}};return r}(t).add({segment:r,version:t});return e.forEach((e=>a.add(e))),a}const f="5.0.0-alpha.99",E=["de","us"];const x="5.0.0-alpha.99",S=["de","us"];const v="5.0.0-alpha.99",b=["eu","us"];const T="5.0.0-alpha.99";function I(e){return[{url:`${e}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${e}.algolia.net`,accept:"write",protocol:"https"}].concat(function(e){const r=e;for(let t=e.length-1;t>0;t--){const a=Math.floor(Math.random()*(t+1)),n=e[t];r[t]=e[a],r[a]=n}return r}([{url:`${e}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${e}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${e}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))}function D({appId:e,apiKey:a,authMode:n,algoliaAgents:s,...i}){const o=r(e,a,n),d=y({hosts:I(e),...i,algoliaAgent:q({algoliaAgents:s,client:"Search",version:T}),baseHeaders:{"content-type":"text/plain",...o.headers(),...i.baseHeaders},baseQueryParameters:{...o.queryParameters(),...i.baseQueryParameters}});return{transporter:d,appId:e,clearCache:()=>Promise.all([d.requestsCache.clear(),d.responsesCache.clear()]).then((()=>{})),get _ua(){return d.algoliaAgent.value},addAlgoliaAgent(e,r){d.algoliaAgent.add({segment:e,version:r})},waitForTask({indexName:e,taskID:r,maxRetries:a=50,timeout:n=(e=>Math.min(200*e,5e3))},s){let i=0;return t({func:()=>this.getTask({indexName:e,taskID:r},s),validate:e=>"published"===e.status,aggregator:()=>i+=1,error:{validate:()=>i>=a,message:()=>`The maximum number of retries exceeded. (${i}/${a})`},timeout:()=>n(i)})},waitForApiKey({operation:e,key:r,apiKey:a,maxRetries:n=50,timeout:s=(e=>Math.min(200*e,5e3))},i){let o=0;const d={aggregator:()=>o+=1,error:{validate:()=>o>=n,message:()=>`The maximum number of retries exceeded. (${o}/${n})`},timeout:()=>s(o)};if("update"===e){if(!a)throw new Error("`apiKey` is required when waiting for an `update` operation.");return t({...d,func:()=>this.getApiKey({key:r},i),validate:e=>{for(const r of Object.keys(a)){const t=a[r],n=e[r];if(Array.isArray(t)&&Array.isArray(n)){if(t.length!==n.length||t.some(((e,r)=>e!==n[r])))return!1}else if(t!==n)return!1}return!0}})}return t({...d,func:()=>this.getApiKey({key:r},i).catch((e=>e)),validate:r=>"add"===e?404!==r.status:404===r.status})},browseObjects({indexName:e,browseParams:r,...a},n){return t({func:t=>this.browse({indexName:e,browseParams:{cursor:t?t.cursor:void 0,...r}},n),validate:e=>void 0===e.cursor,...a})},browseRules({indexName:e,searchRulesParams:r,...a},n){const s={hitsPerPage:1e3,...r};return t({func:r=>this.searchRules({indexName:e,searchRulesParams:{...s,page:r?r.page+1:s.page||0}},n),validate:e=>e.nbHits<s.hitsPerPage,...a})},browseSynonyms({indexName:e,searchSynonymsParams:r,...a},n){const s={page:0,...r,hitsPerPage:1e3};return t({func:r=>this.searchSynonyms({indexName:e,searchSynonymsParams:{...s,page:r?r.page+1:s.page}},n),validate:e=>e.nbHits<s.hitsPerPage,...a})},searchForHits(e,r){return this.search(e,r)},searchForFacets(e,r){return this.search(e,r)},addApiKey(e,r){if(!e)throw new Error("Parameter `apiKey` is required when calling `addApiKey`.");if(!e.acl)throw new Error("Parameter `apiKey.acl` is required when calling `addApiKey`.");const t={method:"POST",path:"/1/keys",queryParameters:{},headers:{},data:e};return d.request(t,r)},addOrUpdateObject({indexName:e,objectID:r,body:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `addOrUpdateObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `addOrUpdateObject`.");if(!t)throw new Error("Parameter `body` is required when calling `addOrUpdateObject`.");const n={method:"PUT",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{},data:t};return d.request(n,a)},appendSource(e,r){if(!e)throw new Error("Parameter `source` is required when calling `appendSource`.");if(!e.source)throw new Error("Parameter `source.source` is required when calling `appendSource`.");const t={method:"POST",path:"/1/security/sources/append",queryParameters:{},headers:{},data:e};return d.request(t,r)},assignUserId({xAlgoliaUserID:e,assignUserIdParams:r},t){if(!e)throw new Error("Parameter `xAlgoliaUserID` is required when calling `assignUserId`.");if(!r)throw new Error("Parameter `assignUserIdParams` is required when calling `assignUserId`.");if(!r.cluster)throw new Error("Parameter `assignUserIdParams.cluster` is required when calling `assignUserId`.");const a={};void 0!==e&&(a["X-Algolia-User-ID"]=e.toString());const n={method:"POST",path:"/1/clusters/mapping",queryParameters:{},headers:a,data:r};return d.request(n,t)},batch({indexName:e,batchWriteParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `batch`.");if(!r)throw new Error("Parameter `batchWriteParams` is required when calling `batch`.");if(!r.requests)throw new Error("Parameter `batchWriteParams.requests` is required when calling `batch`.");const a={method:"POST",path:"/1/indexes/{indexName}/batch".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},batchAssignUserIds({xAlgoliaUserID:e,batchAssignUserIdsParams:r},t){if(!e)throw new Error("Parameter `xAlgoliaUserID` is required when calling `batchAssignUserIds`.");if(!r)throw new Error("Parameter `batchAssignUserIdsParams` is required when calling `batchAssignUserIds`.");if(!r.cluster)throw new Error("Parameter `batchAssignUserIdsParams.cluster` is required when calling `batchAssignUserIds`.");if(!r.users)throw new Error("Parameter `batchAssignUserIdsParams.users` is required when calling `batchAssignUserIds`.");const a={};void 0!==e&&(a["X-Algolia-User-ID"]=e.toString());const n={method:"POST",path:"/1/clusters/mapping/batch",queryParameters:{},headers:a,data:r};return d.request(n,t)},batchDictionaryEntries({dictionaryName:e,batchDictionaryEntriesParams:r},t){if(!e)throw new Error("Parameter `dictionaryName` is required when calling `batchDictionaryEntries`.");if(!r)throw new Error("Parameter `batchDictionaryEntriesParams` is required when calling `batchDictionaryEntries`.");if(!r.requests)throw new Error("Parameter `batchDictionaryEntriesParams.requests` is required when calling `batchDictionaryEntries`.");const a={method:"POST",path:"/1/dictionaries/{dictionaryName}/batch".replace("{dictionaryName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},browse({indexName:e,browseParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `browse`.");const a={method:"POST",path:"/1/indexes/{indexName}/browse".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return d.request(a,t)},clearObjects({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `clearObjects`.");const t={method:"POST",path:"/1/indexes/{indexName}/clear".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},clearRules({indexName:e,forwardToReplicas:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `clearRules`.");const a="/1/indexes/{indexName}/rules/clear".replace("{indexName}",encodeURIComponent(e)),n={};void 0!==r&&(n.forwardToReplicas=r.toString());const s={method:"POST",path:a,queryParameters:n,headers:{}};return d.request(s,t)},clearSynonyms({indexName:e,forwardToReplicas:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `clearSynonyms`.");const a="/1/indexes/{indexName}/synonyms/clear".replace("{indexName}",encodeURIComponent(e)),n={};void 0!==r&&(n.forwardToReplicas=r.toString());const s={method:"POST",path:a,queryParameters:n,headers:{}};return d.request(s,t)},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},deleteApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `deleteApiKey`.");const t={method:"DELETE",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},deleteBy({indexName:e,deleteByParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteBy`.");if(!r)throw new Error("Parameter `deleteByParams` is required when calling `deleteBy`.");const a={method:"POST",path:"/1/indexes/{indexName}/deleteByQuery".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},deleteIndex({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteIndex`.");const t={method:"DELETE",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},deleteObject({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteObject`.");const a={method:"DELETE",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return d.request(a,t)},deleteRule({indexName:e,objectID:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteRule`.");const n="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const i={method:"DELETE",path:n,queryParameters:s,headers:{}};return d.request(i,a)},deleteSource({source:e},r){if(!e)throw new Error("Parameter `source` is required when calling `deleteSource`.");const t={method:"DELETE",path:"/1/security/sources/{source}".replace("{source}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},deleteSynonym({indexName:e,objectID:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteSynonym`.");const n="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const i={method:"DELETE",path:n,queryParameters:s,headers:{}};return d.request(i,a)},getApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `getApiKey`.");const t={method:"GET",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},getDictionaryLanguages(e){const r={method:"GET",path:"/1/dictionaries/*/languages",queryParameters:{},headers:{}};return d.request(r,e)},getDictionarySettings(e){const r={method:"GET",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{}};return d.request(r,e)},getLogs({offset:e,length:r,indexName:t,type:a}={},n=void 0){const s={};void 0!==e&&(s.offset=e.toString()),void 0!==r&&(s.length=r.toString()),void 0!==t&&(s.indexName=t.toString()),void 0!==a&&(s.type=a.toString());const i={method:"GET",path:"/1/logs",queryParameters:s,headers:{}};return d.request(i,n)},getObject({indexName:e,objectID:r,attributesToRetrieve:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `getObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getObject`.");const n="/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.attributesToRetrieve=t.toString());const i={method:"GET",path:n,queryParameters:s,headers:{}};return d.request(i,a)},getObjects(e,r){if(!e)throw new Error("Parameter `getObjectsParams` is required when calling `getObjects`.");if(!e.requests)throw new Error("Parameter `getObjectsParams.requests` is required when calling `getObjects`.");const t={method:"POST",path:"/1/indexes/*/objects",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return d.request(t,r)},getRule({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getRule`.");const a={method:"GET",path:"/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return d.request(a,t)},getSettings({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getSettings`.");const t={method:"GET",path:"/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},getSources(e){const r={method:"GET",path:"/1/security/sources",queryParameters:{},headers:{}};return d.request(r,e)},getSynonym({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getSynonym`.");const a={method:"GET",path:"/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return d.request(a,t)},getTask({indexName:e,taskID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getTask`.");if(!r)throw new Error("Parameter `taskID` is required when calling `getTask`.");const a={method:"GET",path:"/1/indexes/{indexName}/task/{taskID}".replace("{indexName}",encodeURIComponent(e)).replace("{taskID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return d.request(a,t)},getTopUserIds(e){const r={method:"GET",path:"/1/clusters/mapping/top",queryParameters:{},headers:{}};return d.request(r,e)},getUserId({userID:e},r){if(!e)throw new Error("Parameter `userID` is required when calling `getUserId`.");const t={method:"GET",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},hasPendingMappings({getClusters:e}={},r=void 0){const t={};void 0!==e&&(t.getClusters=e.toString());const a={method:"GET",path:"/1/clusters/mapping/pending",queryParameters:t,headers:{}};return d.request(a,r)},listApiKeys(e){const r={method:"GET",path:"/1/keys",queryParameters:{},headers:{}};return d.request(r,e)},listClusters(e){const r={method:"GET",path:"/1/clusters",queryParameters:{},headers:{}};return d.request(r,e)},listIndices({page:e,hitsPerPage:r}={},t=void 0){const a={};void 0!==e&&(a.page=e.toString()),void 0!==r&&(a.hitsPerPage=r.toString());const n={method:"GET",path:"/1/indexes",queryParameters:a,headers:{}};return d.request(n,t)},listUserIds({page:e,hitsPerPage:r}={},t=void 0){const a={};void 0!==e&&(a.page=e.toString()),void 0!==r&&(a.hitsPerPage=r.toString());const n={method:"GET",path:"/1/clusters/mapping",queryParameters:a,headers:{}};return d.request(n,t)},multipleBatch(e,r){if(!e)throw new Error("Parameter `batchParams` is required when calling `multipleBatch`.");if(!e.requests)throw new Error("Parameter `batchParams.requests` is required when calling `multipleBatch`.");const t={method:"POST",path:"/1/indexes/*/batch",queryParameters:{},headers:{},data:e};return d.request(t,r)},operationIndex({indexName:e,operationIndexParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `operationIndex`.");if(!r)throw new Error("Parameter `operationIndexParams` is required when calling `operationIndex`.");if(!r.operation)throw new Error("Parameter `operationIndexParams.operation` is required when calling `operationIndex`.");if(!r.destination)throw new Error("Parameter `operationIndexParams.destination` is required when calling `operationIndex`.");const a={method:"POST",path:"/1/indexes/{indexName}/operation".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},partialUpdateObject({indexName:e,objectID:r,attributesToUpdate:t,createIfNotExists:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `partialUpdateObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `partialUpdateObject`.");if(!t)throw new Error("Parameter `attributesToUpdate` is required when calling `partialUpdateObject`.");const s="/1/indexes/{indexName}/{objectID}/partial".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),i={};void 0!==a&&(i.createIfNotExists=a.toString());const o={method:"POST",path:s,queryParameters:i,headers:{},data:t};return d.request(o,n)},removeUserId({userID:e},r){if(!e)throw new Error("Parameter `userID` is required when calling `removeUserId`.");const t={method:"DELETE",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},replaceSources({source:e},r){if(!e)throw new Error("Parameter `source` is required when calling `replaceSources`.");const t={method:"PUT",path:"/1/security/sources",queryParameters:{},headers:{},data:e};return d.request(t,r)},restoreApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `restoreApiKey`.");const t={method:"POST",path:"/1/keys/{key}/restore".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},saveObject({indexName:e,body:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `saveObject`.");if(!r)throw new Error("Parameter `body` is required when calling `saveObject`.");const a={method:"POST",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},saveRule({indexName:e,objectID:r,rule:t,forwardToReplicas:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `saveRule`.");if(!t)throw new Error("Parameter `rule` is required when calling `saveRule`.");if(!t.objectID)throw new Error("Parameter `rule.objectID` is required when calling `saveRule`.");const s="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),i={};void 0!==a&&(i.forwardToReplicas=a.toString());const o={method:"PUT",path:s,queryParameters:i,headers:{},data:t};return d.request(o,n)},saveRules({indexName:e,rules:r,forwardToReplicas:t,clearExistingRules:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveRules`.");if(!r)throw new Error("Parameter `rules` is required when calling `saveRules`.");const s="/1/indexes/{indexName}/rules/batch".replace("{indexName}",encodeURIComponent(e)),i={};void 0!==t&&(i.forwardToReplicas=t.toString()),void 0!==a&&(i.clearExistingRules=a.toString());const o={method:"POST",path:s,queryParameters:i,headers:{},data:r};return d.request(o,n)},saveSynonym({indexName:e,objectID:r,synonymHit:t,forwardToReplicas:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `saveSynonym`.");if(!t)throw new Error("Parameter `synonymHit` is required when calling `saveSynonym`.");if(!t.objectID)throw new Error("Parameter `synonymHit.objectID` is required when calling `saveSynonym`.");if(!t.type)throw new Error("Parameter `synonymHit.type` is required when calling `saveSynonym`.");const s="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),i={};void 0!==a&&(i.forwardToReplicas=a.toString());const o={method:"PUT",path:s,queryParameters:i,headers:{},data:t};return d.request(o,n)},saveSynonyms({indexName:e,synonymHit:r,forwardToReplicas:t,replaceExistingSynonyms:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveSynonyms`.");if(!r)throw new Error("Parameter `synonymHit` is required when calling `saveSynonyms`.");const s="/1/indexes/{indexName}/synonyms/batch".replace("{indexName}",encodeURIComponent(e)),i={};void 0!==t&&(i.forwardToReplicas=t.toString()),void 0!==a&&(i.replaceExistingSynonyms=a.toString());const o={method:"POST",path:s,queryParameters:i,headers:{},data:r};return d.request(o,n)},search(e,r){if(e&&Array.isArray(e)){const r={requests:e.map((({params:e,...r})=>"facet"===r.type?{...r,...e,type:"facet"}:{...r,...e,facet:void 0,maxFacetHits:void 0,facetQuery:void 0}))};e=r}if(!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");const t={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return d.request(t,r)},searchDictionaryEntries({dictionaryName:e,searchDictionaryEntriesParams:r},t){if(!e)throw new Error("Parameter `dictionaryName` is required when calling `searchDictionaryEntries`.");if(!r)throw new Error("Parameter `searchDictionaryEntriesParams` is required when calling `searchDictionaryEntries`.");if(!r.query)throw new Error("Parameter `searchDictionaryEntriesParams.query` is required when calling `searchDictionaryEntries`.");const a={method:"POST",path:"/1/dictionaries/{dictionaryName}/search".replace("{dictionaryName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r,useReadTransporter:!0,cacheable:!0};return d.request(a,t)},searchForFacetValues({indexName:e,facetName:r,searchForFacetValuesRequest:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `searchForFacetValues`.");if(!r)throw new Error("Parameter `facetName` is required when calling `searchForFacetValues`.");const n={method:"POST",path:"/1/indexes/{indexName}/facets/{facetName}/query".replace("{indexName}",encodeURIComponent(e)).replace("{facetName}",encodeURIComponent(r)),queryParameters:{},headers:{},data:t||{},useReadTransporter:!0,cacheable:!0};return d.request(n,a)},searchRules({indexName:e,searchRulesParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchRules`.");const a={method:"POST",path:"/1/indexes/{indexName}/rules/search".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return d.request(a,t)},searchSingleIndex({indexName:e,searchParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchSingleIndex`.");const a={method:"POST",path:"/1/indexes/{indexName}/query".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return d.request(a,t)},searchSynonyms({indexName:e,searchSynonymsParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchSynonyms`.");const a={method:"POST",path:"/1/indexes/{indexName}/synonyms/search".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return d.request(a,t)},searchUserIds(e,r){if(!e)throw new Error("Parameter `searchUserIdsParams` is required when calling `searchUserIds`.");if(!e.query)throw new Error("Parameter `searchUserIdsParams.query` is required when calling `searchUserIds`.");const t={method:"POST",path:"/1/clusters/mapping/search",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return d.request(t,r)},setDictionarySettings(e,r){if(!e)throw new Error("Parameter `dictionarySettingsParams` is required when calling `setDictionarySettings`.");if(!e.disableStandardEntries)throw new Error("Parameter `dictionarySettingsParams.disableStandardEntries` is required when calling `setDictionarySettings`.");const t={method:"PUT",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{},data:e};return d.request(t,r)},setSettings({indexName:e,indexSettings:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `setSettings`.");if(!r)throw new Error("Parameter `indexSettings` is required when calling `setSettings`.");const n="/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(e)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const i={method:"PUT",path:n,queryParameters:s,headers:{},data:r};return d.request(i,a)},updateApiKey({key:e,apiKey:r},t){if(!e)throw new Error("Parameter `key` is required when calling `updateApiKey`.");if(!r)throw new Error("Parameter `apiKey` is required when calling `updateApiKey`.");if(!r.acl)throw new Error("Parameter `apiKey.acl` is required when calling `updateApiKey`.");const a={method:"PUT",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)}}}const N=T;e.algoliasearch=function(e,t,i){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!t||"string"!=typeof t)throw new Error("`apiKey` is missing.");const o={apiKey:t,appId:e,timeouts:{connect:1e3,read:2e3,write:3e4},requester:{send:function(e){return new Promise((r=>{const t=new XMLHttpRequest;t.open(e.method,e.url,!0),Object.keys(e.headers).forEach((r=>t.setRequestHeader(r,e.headers[r])));const a=(e,a)=>setTimeout((()=>{t.abort(),r({status:0,content:a,isTimedOut:!0})}),e),n=a(e.connectTimeout,"Connection timeout");let s;t.onreadystatechange=()=>{t.readyState>t.OPENED&&void 0===s&&(clearTimeout(n),s=a(e.responseTimeout,"Socket timeout"))},t.onerror=()=>{0===t.status&&(clearTimeout(n),clearTimeout(s),r({content:t.responseText||"Network request failed",status:t.status,isTimedOut:!1}))},t.onload=()=>{clearTimeout(n),clearTimeout(s),r({content:t.responseText,status:t.status,isTimedOut:!1})},t.send(e.data)}))}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:s(),requestsCache:s({serializable:!1}),hostsCache:n({caches:[a({key:`${N}-${e}`}),s()]}),...i};return{...D(o),get _ua(){return this.transporter.algoliaAgent.value},initAnalytics:function(e={}){if(e.region&&("string"!=typeof e.region||!S.includes(e.region)))throw new Error(`\`region\` must be one of the following: ${S.join(", ")}`);return function({appId:e,apiKey:t,authMode:a,algoliaAgents:n,region:s,...i}){const o=r(e,t,a),d=y({hosts:(c=s,[{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]),...i,algoliaAgent:q({algoliaAgents:n,client:"Analytics",version:x}),baseHeaders:{"content-type":"text/plain",...o.headers(),...i.baseHeaders},baseQueryParameters:{...o.queryParameters(),...i.baseQueryParameters}});var c;return{transporter:d,appId:e,clearCache:()=>Promise.all([d.requestsCache.clear(),d.responsesCache.clear()]).then((()=>{})),get _ua(){return d.algoliaAgent.value},addAlgoliaAgent(e,r){d.algoliaAgent.add({segment:e,version:r})},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},getAverageClickPosition({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getAverageClickPosition`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const i={method:"GET",path:"/2/clicks/averageClickPosition",queryParameters:s,headers:{}};return d.request(i,n)},getClickPositions({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getClickPositions`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const i={method:"GET",path:"/2/clicks/positions",queryParameters:s,headers:{}};return d.request(i,n)},getClickThroughRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getClickThroughRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const i={method:"GET",path:"/2/clicks/clickThroughRate",queryParameters:s,headers:{}};return d.request(i,n)},getConversationRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getConversationRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const i={method:"GET",path:"/2/conversions/conversionRate",queryParameters:s,headers:{}};return d.request(i,n)},getNoClickRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getNoClickRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const i={method:"GET",path:"/2/searches/noClickRate",queryParameters:s,headers:{}};return d.request(i,n)},getNoResultsRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getNoResultsRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const i={method:"GET",path:"/2/searches/noResultRate",queryParameters:s,headers:{}};return d.request(i,n)},getSearchesCount({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesCount`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const i={method:"GET",path:"/2/searches/count",queryParameters:s,headers:{}};return d.request(i,n)},getSearchesNoClicks({index:e,startDate:r,endDate:t,limit:a,offset:n,tags:s},i){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesNoClicks`.");const o={};void 0!==e&&(o.index=e.toString()),void 0!==r&&(o.startDate=r.toString()),void 0!==t&&(o.endDate=t.toString()),void 0!==a&&(o.limit=a.toString()),void 0!==n&&(o.offset=n.toString()),void 0!==s&&(o.tags=s.toString());const c={method:"GET",path:"/2/searches/noClicks",queryParameters:o,headers:{}};return d.request(c,i)},getSearchesNoResults({index:e,startDate:r,endDate:t,limit:a,offset:n,tags:s},i){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesNoResults`.");const o={};void 0!==e&&(o.index=e.toString()),void 0!==r&&(o.startDate=r.toString()),void 0!==t&&(o.endDate=t.toString()),void 0!==a&&(o.limit=a.toString()),void 0!==n&&(o.offset=n.toString()),void 0!==s&&(o.tags=s.toString());const c={method:"GET",path:"/2/searches/noResults",queryParameters:o,headers:{}};return d.request(c,i)},getStatus({index:e},r){if(!e)throw new Error("Parameter `index` is required when calling `getStatus`.");const t={};void 0!==e&&(t.index=e.toString());const a={method:"GET",path:"/2/status",queryParameters:t,headers:{}};return d.request(a,r)},getTopCountries({index:e,startDate:r,endDate:t,limit:a,offset:n,tags:s},i){if(!e)throw new Error("Parameter `index` is required when calling `getTopCountries`.");const o={};void 0!==e&&(o.index=e.toString()),void 0!==r&&(o.startDate=r.toString()),void 0!==t&&(o.endDate=t.toString()),void 0!==a&&(o.limit=a.toString()),void 0!==n&&(o.offset=n.toString()),void 0!==s&&(o.tags=s.toString());const c={method:"GET",path:"/2/countries",queryParameters:o,headers:{}};return d.request(c,i)},getTopFilterAttributes({index:e,search:r,startDate:t,endDate:a,limit:n,offset:s,tags:i},o){if(!e)throw new Error("Parameter `index` is required when calling `getTopFilterAttributes`.");const c={};void 0!==e&&(c.index=e.toString()),void 0!==r&&(c.search=r.toString()),void 0!==t&&(c.startDate=t.toString()),void 0!==a&&(c.endDate=a.toString()),void 0!==n&&(c.limit=n.toString()),void 0!==s&&(c.offset=s.toString()),void 0!==i&&(c.tags=i.toString());const u={method:"GET",path:"/2/filters",queryParameters:c,headers:{}};return d.request(u,o)},getTopFilterForAttribute({attribute:e,index:r,search:t,startDate:a,endDate:n,limit:s,offset:i,tags:o},c){if(!e)throw new Error("Parameter `attribute` is required when calling `getTopFilterForAttribute`.");if(!r)throw new Error("Parameter `index` is required when calling `getTopFilterForAttribute`.");const u="/2/filters/{attribute}".replace("{attribute}",encodeURIComponent(e)),h={};void 0!==r&&(h.index=r.toString()),void 0!==t&&(h.search=t.toString()),void 0!==a&&(h.startDate=a.toString()),void 0!==n&&(h.endDate=n.toString()),void 0!==s&&(h.limit=s.toString()),void 0!==i&&(h.offset=i.toString()),void 0!==o&&(h.tags=o.toString());const l={method:"GET",path:u,queryParameters:h,headers:{}};return d.request(l,c)},getTopFiltersNoResults({index:e,search:r,startDate:t,endDate:a,limit:n,offset:s,tags:i},o){if(!e)throw new Error("Parameter `index` is required when calling `getTopFiltersNoResults`.");const c={};void 0!==e&&(c.index=e.toString()),void 0!==r&&(c.search=r.toString()),void 0!==t&&(c.startDate=t.toString()),void 0!==a&&(c.endDate=a.toString()),void 0!==n&&(c.limit=n.toString()),void 0!==s&&(c.offset=s.toString()),void 0!==i&&(c.tags=i.toString());const u={method:"GET",path:"/2/filters/noResults",queryParameters:c,headers:{}};return d.request(u,o)},getTopHits({index:e,search:r,clickAnalytics:t,startDate:a,endDate:n,limit:s,offset:i,tags:o},c){if(!e)throw new Error("Parameter `index` is required when calling `getTopHits`.");const u={};void 0!==e&&(u.index=e.toString()),void 0!==r&&(u.search=r.toString()),void 0!==t&&(u.clickAnalytics=t.toString()),void 0!==a&&(u.startDate=a.toString()),void 0!==n&&(u.endDate=n.toString()),void 0!==s&&(u.limit=s.toString()),void 0!==i&&(u.offset=i.toString()),void 0!==o&&(u.tags=o.toString());const h={method:"GET",path:"/2/hits",queryParameters:u,headers:{}};return d.request(h,c)},getTopSearches({index:e,clickAnalytics:r,startDate:t,endDate:a,orderBy:n,direction:s,limit:i,offset:o,tags:c},u){if(!e)throw new Error("Parameter `index` is required when calling `getTopSearches`.");const h={};void 0!==e&&(h.index=e.toString()),void 0!==r&&(h.clickAnalytics=r.toString()),void 0!==t&&(h.startDate=t.toString()),void 0!==a&&(h.endDate=a.toString()),void 0!==n&&(h.orderBy=n.toString()),void 0!==s&&(h.direction=s.toString()),void 0!==i&&(h.limit=i.toString()),void 0!==o&&(h.offset=o.toString()),void 0!==c&&(h.tags=c.toString());const l={method:"GET",path:"/2/searches",queryParameters:h,headers:{}};return d.request(l,u)},getUsersCount({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getUsersCount`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const i={method:"GET",path:"/2/users/count",queryParameters:s,headers:{}};return d.request(i,n)}}}({...o,...e.options,...e})},initPersonalization:function(e){if(!e.region||e.region&&("string"!=typeof e.region||!b.includes(e.region)))throw new Error(`\`region\` is required and must be one of the following: ${b.join(", ")}`);return function({appId:e,apiKey:t,authMode:a,algoliaAgents:n,region:s,...i}){const o=r(e,t,a),d=y({hosts:(c=s,[{url:"personalization.{region}.algolia.com".replace("{region}",c),accept:"readWrite",protocol:"https"}]),...i,algoliaAgent:q({algoliaAgents:n,client:"Personalization",version:v}),baseHeaders:{"content-type":"text/plain",...o.headers(),...i.baseHeaders},baseQueryParameters:{...o.queryParameters(),...i.baseQueryParameters}});var c;return{transporter:d,appId:e,clearCache:()=>Promise.all([d.requestsCache.clear(),d.responsesCache.clear()]).then((()=>{})),get _ua(){return d.algoliaAgent.value},addAlgoliaAgent(e,r){d.algoliaAgent.add({segment:e,version:r})},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},deleteUserProfile({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `deleteUserProfile`.");const t={method:"DELETE",path:"/1/profiles/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},getPersonalizationStrategy(e){const r={method:"GET",path:"/1/strategies/personalization",queryParameters:{},headers:{}};return d.request(r,e)},getUserTokenProfile({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `getUserTokenProfile`.");const t={method:"GET",path:"/1/profiles/personalization/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},setPersonalizationStrategy(e,r){if(!e)throw new Error("Parameter `personalizationStrategyParams` is required when calling `setPersonalizationStrategy`.");if(!e.eventScoring)throw new Error("Parameter `personalizationStrategyParams.eventScoring` is required when calling `setPersonalizationStrategy`.");if(!e.facetScoring)throw new Error("Parameter `personalizationStrategyParams.facetScoring` is required when calling `setPersonalizationStrategy`.");if(!e.personalizationImpact)throw new Error("Parameter `personalizationStrategyParams.personalizationImpact` is required when calling `setPersonalizationStrategy`.");const t={method:"POST",path:"/1/strategies/personalization",queryParameters:{},headers:{},data:e};return d.request(t,r)}}}({...o,...e.options,...e})},initAbtesting:function(e={}){if(e.region&&("string"!=typeof e.region||!E.includes(e.region)))throw new Error(`\`region\` must be one of the following: ${E.join(", ")}`);return function({appId:e,apiKey:t,authMode:a,algoliaAgents:n,region:s,...i}){const o=r(e,t,a),d=y({hosts:(c=s,[{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]),...i,algoliaAgent:q({algoliaAgents:n,client:"Abtesting",version:f}),baseHeaders:{"content-type":"text/plain",...o.headers(),...i.baseHeaders},baseQueryParameters:{...o.queryParameters(),...i.baseQueryParameters}});var c;return{transporter:d,appId:e,clearCache:()=>Promise.all([d.requestsCache.clear(),d.responsesCache.clear()]).then((()=>{})),get _ua(){return d.algoliaAgent.value},addAlgoliaAgent(e,r){d.algoliaAgent.add({segment:e,version:r})},addABTests(e,r){if(!e)throw new Error("Parameter `addABTestsRequest` is required when calling `addABTests`.");if(!e.name)throw new Error("Parameter `addABTestsRequest.name` is required when calling `addABTests`.");if(!e.variants)throw new Error("Parameter `addABTestsRequest.variants` is required when calling `addABTests`.");if(!e.endAt)throw new Error("Parameter `addABTestsRequest.endAt` is required when calling `addABTests`.");const t={method:"POST",path:"/2/abtests",queryParameters:{},headers:{},data:e};return d.request(t,r)},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},deleteABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `deleteABTest`.");const t={method:"DELETE",path:"/2/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},getABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `getABTest`.");const t={method:"GET",path:"/2/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},listABTests({offset:e,limit:r,indexPrefix:t,indexSuffix:a}={},n=void 0){const s={};void 0!==e&&(s.offset=e.toString()),void 0!==r&&(s.limit=r.toString()),void 0!==t&&(s.indexPrefix=t.toString()),void 0!==a&&(s.indexSuffix=a.toString());const i={method:"GET",path:"/2/abtests",queryParameters:s,headers:{}};return d.request(i,n)},stopABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `stopABTest`.");const t={method:"POST",path:"/2/abtests/{id}/stop".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)}}}({...o,...e.options,...e})}}},e.apiClientVersion=N}));
1
+ /*! algoliasearch.umd.js | 5.0.0-beta.10 | © Algolia, inc. | https://github.com/algolia/algoliasearch-client-javascript */
2
+ !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports):"function"==typeof define&&define.amd?define(["exports"],r):r((e="undefined"!=typeof globalThis?globalThis:e||self).algoliasearch={})}(this,(function(e){"use strict";function r(e,r,t="WithinHeaders"){const a={"x-algolia-api-key":r,"x-algolia-application-id":e};return{headers:()=>"WithinHeaders"===t?a:{},queryParameters:()=>"WithinQueryParameters"===t?a:{}}}function t({func:e,validate:r,aggregator:t,error:a,timeout:n=(()=>0)}){const s=o=>new Promise(((i,d)=>{e(o).then((e=>(t&&t(e),r(e)?i(e):a&&a.validate(e)?d(new Error(a.message(e))):setTimeout((()=>{s(e).then(i).catch(d)}),n())))).catch((e=>{d(e)}))}));return s()}function a(e){let r;const t=`algolia-client-js-${e.key}`;function a(){return void 0===r&&(r=e.localStorage||window.localStorage),r}function n(){return JSON.parse(a().getItem(t)||"{}")}function s(e){a().setItem(t,JSON.stringify(e))}return{get:(r,t,a={miss:()=>Promise.resolve()})=>Promise.resolve().then((()=>(function(){const r=e.timeToLive?1e3*e.timeToLive:null,t=n(),a=Object.fromEntries(Object.entries(t).filter((([,e])=>void 0!==e.timestamp)));if(s(a),!r)return;s(Object.fromEntries(Object.entries(a).filter((([,e])=>{const t=(new Date).getTime();return!(e.timestamp+r<t)}))))}(),n()[JSON.stringify(r)]))).then((e=>Promise.all([e?e.value:t(),void 0!==e]))).then((([e,r])=>Promise.all([e,r||a.miss(e)]))).then((([e])=>e)),set:(e,r)=>Promise.resolve().then((()=>{const s=n();return s[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:r},a().setItem(t,JSON.stringify(s)),r})),delete:e=>Promise.resolve().then((()=>{const r=n();delete r[JSON.stringify(e)],a().setItem(t,JSON.stringify(r))})),clear:()=>Promise.resolve().then((()=>{a().removeItem(t)}))}}function n(e){const r=[...e.caches],t=r.shift();return void 0===t?{get:(e,r,t={miss:()=>Promise.resolve()})=>r().then((e=>Promise.all([e,t.miss(e)]))).then((([e])=>e)),set:(e,r)=>Promise.resolve(r),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}:{get:(e,a,s={miss:()=>Promise.resolve()})=>t.get(e,a,s).catch((()=>n({caches:r}).get(e,a,s))),set:(e,a)=>t.set(e,a).catch((()=>n({caches:r}).set(e,a))),delete:e=>t.delete(e).catch((()=>n({caches:r}).delete(e))),clear:()=>t.clear().catch((()=>n({caches:r}).clear()))}}function s(e={serializable:!0}){let r={};return{get(t,a,n={miss:()=>Promise.resolve()}){const s=JSON.stringify(t);if(s in r)return Promise.resolve(e.serializable?JSON.parse(r[s]):r[s]);const o=a();return o.then((e=>n.miss(e))).then((()=>o))},set:(t,a)=>(r[JSON.stringify(t)]=e.serializable?JSON.stringify(a):a,Promise.resolve(a)),delete:e=>(delete r[JSON.stringify(e)],Promise.resolve()),clear:()=>(r={},Promise.resolve())}}const o=12e4;function i(e,r="up"){const t=Date.now();return{...e,status:r,lastUpdate:t,isUp:function(){return"up"===r||Date.now()-t>o},isTimedOut:function(){return"timed out"===r&&Date.now()-t<=o}}}function d(e,r,t){return(r=function(e){var r=function(e,r){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var a=t.call(e,r||"default");if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==typeof r?r:r+""}(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}class c extends Error{constructor(e,r){super(e),d(this,"name","AlgoliaError"),r&&(this.name=r)}}class u extends c{constructor(e,r,t){super(e,t),d(this,"stackTrace",void 0),this.stackTrace=r}}class h extends u{constructor(e){super("Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support.",e,"RetryError")}}class l extends u{constructor(e,r,t,a="ApiError"){super(e,t,a),d(this,"status",void 0),this.status=r}}class m extends c{constructor(e,r){super(e,"DeserializationError"),d(this,"response",void 0),this.response=r}}class p extends l{constructor(e,r,t,a){super(e,r,a,"DetailedApiError"),d(this,"error",void 0),this.error=t}}function g(e){const r=e;for(let t=e.length-1;t>0;t--){const a=Math.floor(Math.random()*(t+1)),n=e[t];r[t]=e[a],r[a]=n}return r}function w(e,r,t){const a=(n=t,Object.keys(n).filter((e=>void 0!==n[e])).sort().map((e=>`${e}=${encodeURIComponent("[object Array]"===Object.prototype.toString.call(n[e])?n[e].join(","):n[e]).replaceAll("+","%20")}`)).join("&"));var n;let s=`${e.protocol}://${e.url}${e.port?`:${e.port}`:""}/${"/"===r.charAt(0)?r.substring(1):r}`;return a.length&&(s+=`?${a}`),s}function P(e){const r=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...r}}}}function q({hosts:e,hostsCache:r,baseHeaders:t,baseQueryParameters:a,algoliaAgent:n,timeouts:s,requester:o,requestsCache:d,responsesCache:c}){async function u(d,c,u=!0){const g=[],q=function(e,r){if("GET"===e.method||void 0===e.data&&void 0===r.data)return;const t=Array.isArray(e.data)?e.data:{...e.data,...r.data};return JSON.stringify(t)}(d,c),y=function(e,r,t){const a={Accept:"application/json",...e,...r,...t},n={};return Object.keys(a).forEach((e=>{const r=a[e];n[e.toLowerCase()]=r})),n}(t,d.headers,c.headers),f="GET"===d.method?{...d.data,...c.data}:{},x={...a,...d.queryParameters,...f};if(n.value&&(x["x-algolia-agent"]=n.value),c&&c.queryParameters)for(const e of Object.keys(c.queryParameters))c.queryParameters[e]&&"[object Object]"!==Object.prototype.toString.call(c.queryParameters[e])?x[e]=c.queryParameters[e].toString():x[e]=c.queryParameters[e];let E=0;const v=async(e,t)=>{const a=e.pop();if(void 0===a)throw new h(function(e){return e.map((e=>P(e)))}(g));let n=u?c.timeouts?.read||s.read:c.timeouts?.write||s.write;const f={data:q,headers:y,method:d.method,url:w(a,d.path,x),connectTimeout:t(E,c.timeouts?.connect||s.connect),responseTimeout:t(E,n)},S=r=>{const t={request:f,response:r,host:a,triesLeft:e.length};return g.push(t),t},b=await o.send(f);if(function({isTimedOut:e,status:r}){return e||function({isTimedOut:e,status:r}){return!e&&!~~r}({isTimedOut:e,status:r})||2!=~~(r/100)&&4!=~~(r/100)}(b)){const n=S(b);return b.isTimedOut&&E++,console.log("Retryable failure",P(n)),await r.set(a,i(a,b.isTimedOut?"timed out":"down")),v(e,t)}if(function({status:e}){return 2==~~(e/100)}(b))return function(e){try{return JSON.parse(e.content)}catch(r){throw new m(r.message,e)}}(b);throw S(b),function({content:e,status:r},t){try{const a=JSON.parse(e);return"error"in a?new p(a.message,r,a.error,t):new l(a.message,r,t)}catch(e){}return new l(e,r,t)}(b,g)},S=e.filter((e=>"readWrite"===e.accept||(u?"read"===e.accept:"write"===e.accept))),b=await async function(e){const t=await Promise.all(e.map((e=>r.get(e,(()=>Promise.resolve(i(e))))))),a=t.filter((e=>e.isUp())),n=t.filter((e=>e.isTimedOut())),s=[...a,...n];return{hosts:s.length>0?s:e,getTimeout:(e,r)=>(0===n.length&&0===e?1:n.length+3+e)*r}}(S);return v([...b.hosts].reverse(),b.getTimeout)}return{hostsCache:r,requester:o,timeouts:s,algoliaAgent:n,baseHeaders:t,baseQueryParameters:a,hosts:e,request:function(e,r={}){const n=e.useReadTransporter||"GET"===e.method;if(!n)return u(e,r,n);const s=()=>u(e,r);if(!0!==(r.cacheable||e.cacheable))return s();const o={request:e,requestOptions:r,transporter:{queryParameters:a,headers:t}};return c.get(o,(()=>d.get(o,(()=>d.set(o,s()).then((e=>Promise.all([d.delete(o),e])),(e=>Promise.all([d.delete(o),Promise.reject(e)]))).then((([e,r])=>r))))),{miss:e=>c.set(o,e)})},requestsCache:d,responsesCache:c}}function y({algoliaAgents:e,client:r,version:t}){const a=function(e){const r={value:`Algolia for JavaScript (${e})`,add(e){const t=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===r.value.indexOf(t)&&(r.value=`${r.value}${t}`),r}};return r}(t).add({segment:r,version:t});return e.forEach((e=>a.add(e))),a}const f="5.0.0-beta.10",x=["de","us"];const E="5.0.0-beta.10",v=["de","us"];const S="5.0.0-beta.10",b=["eu","us"];const T="5.0.0-beta.10";function I({appId:e,apiKey:a,authMode:n,algoliaAgents:s,...o}){const i=r(e,a,n),d=q({hosts:(c=e,[{url:`${c}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${c}.algolia.net`,accept:"write",protocol:"https"}].concat(g([{url:`${c}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))),...o,algoliaAgent:y({algoliaAgents:s,client:"Search",version:T}),baseHeaders:{"content-type":"text/plain",...i.headers(),...o.baseHeaders},baseQueryParameters:{...i.queryParameters(),...o.baseQueryParameters}});var c;return{transporter:d,appId:e,clearCache:()=>Promise.all([d.requestsCache.clear(),d.responsesCache.clear()]).then((()=>{})),get _ua(){return d.algoliaAgent.value},addAlgoliaAgent(e,r){d.algoliaAgent.add({segment:e,version:r})},waitForTask({indexName:e,taskID:r,maxRetries:a=50,timeout:n=(e=>Math.min(200*e,5e3))},s){let o=0;return t({func:()=>this.getTask({indexName:e,taskID:r},s),validate:e=>"published"===e.status,aggregator:()=>o+=1,error:{validate:()=>o>=a,message:()=>`The maximum number of retries exceeded. (${o}/${a})`},timeout:()=>n(o)})},waitForAppTask({taskID:e,maxRetries:r=50,timeout:a=(e=>Math.min(200*e,5e3))},n){let s=0;return t({func:()=>this.getAppTask({taskID:e},n),validate:e=>"published"===e.status,aggregator:()=>s+=1,error:{validate:()=>s>=r,message:()=>`The maximum number of retries exceeded. (${s}/${r})`},timeout:()=>a(s)})},waitForApiKey({operation:e,key:r,apiKey:a,maxRetries:n=50,timeout:s=(e=>Math.min(200*e,5e3))},o){let i=0;const d={aggregator:()=>i+=1,error:{validate:()=>i>=n,message:()=>`The maximum number of retries exceeded. (${i}/${n})`},timeout:()=>s(i)};if("update"===e){if(!a)throw new Error("`apiKey` is required when waiting for an `update` operation.");return t({...d,func:()=>this.getApiKey({key:r},o),validate:e=>{for(const r of Object.keys(a)){const t=a[r],n=e[r];if(Array.isArray(t)&&Array.isArray(n)){if(t.length!==n.length||t.some(((e,r)=>e!==n[r])))return!1}else if(t!==n)return!1}return!0}})}return t({...d,func:()=>this.getApiKey({key:r},o).catch((e=>e)),validate:r=>"add"===e?404!==r.status:404===r.status})},browseObjects({indexName:e,browseParams:r,...a},n){return t({func:t=>this.browse({indexName:e,browseParams:{cursor:t?t.cursor:void 0,...r}},n),validate:e=>void 0===e.cursor,...a})},browseRules({indexName:e,searchRulesParams:r,...a},n){const s={hitsPerPage:1e3,...r};return t({func:r=>this.searchRules({indexName:e,searchRulesParams:{...s,page:r?r.page+1:s.page||0}},n),validate:e=>e.nbHits<s.hitsPerPage,...a})},browseSynonyms({indexName:e,searchSynonymsParams:r,...a},n){const s={page:0,...r,hitsPerPage:1e3};return t({func:r=>{const t=this.searchSynonyms({indexName:e,searchSynonymsParams:{...s,page:s.page}},n);return s.page+=1,t},validate:e=>e.nbHits<s.hitsPerPage,...a})},searchForHits(e,r){return this.search(e,r)},searchForFacets(e,r){return this.search(e,r)},async chunkedBatch({indexName:e,objects:r,action:t="addObject",waitForTasks:a,batchSize:n=1e3},s){let o=[];const i=[],d=r.entries();for(const[a,c]of d)o.push({action:t,body:c}),o.length!==n&&a!==r.length-1||(i.push(await this.batch({indexName:e,batchWriteParams:{requests:o}},s)),o=[]);if(a)for(const r of i)await this.waitForTask({indexName:e,taskID:r.taskID});return i},async saveObjects({indexName:e,objects:r},t){return await this.chunkedBatch({indexName:e,objects:r,action:"addObject"},t)},async deleteObjects({indexName:e,objectIDs:r},t){return await this.chunkedBatch({indexName:e,objects:r.map((e=>({objectID:e}))),action:"deleteObject"},t)},async partialUpdateObjects({indexName:e,objects:r,createIfNotExists:t},a){return await this.chunkedBatch({indexName:e,objects:r,action:t?"partialUpdateObject":"partialUpdateObjectNoCreate"},a)},async replaceAllObjects({indexName:e,objects:r,batchSize:t},a){const n=`${e}_tmp_${Math.floor(1e6*Math.random())+1e5}`;let s=await this.operationIndex({indexName:e,operationIndexParams:{operation:"copy",destination:n,scope:["settings","rules","synonyms"]}},a);const o=await this.chunkedBatch({indexName:n,objects:r,waitForTasks:!0,batchSize:t},a);await this.waitForTask({indexName:n,taskID:s.taskID}),s=await this.operationIndex({indexName:e,operationIndexParams:{operation:"copy",destination:n,scope:["settings","rules","synonyms"]}},a),await this.waitForTask({indexName:n,taskID:s.taskID});const i=await this.operationIndex({indexName:n,operationIndexParams:{operation:"move",destination:e}},a);return await this.waitForTask({indexName:n,taskID:i.taskID}),{copyOperationResponse:s,batchResponses:o,moveOperationResponse:i}},addApiKey(e,r){if(!e)throw new Error("Parameter `apiKey` is required when calling `addApiKey`.");if(!e.acl)throw new Error("Parameter `apiKey.acl` is required when calling `addApiKey`.");const t={method:"POST",path:"/1/keys",queryParameters:{},headers:{},data:e};return d.request(t,r)},addOrUpdateObject({indexName:e,objectID:r,body:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `addOrUpdateObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `addOrUpdateObject`.");if(!t)throw new Error("Parameter `body` is required when calling `addOrUpdateObject`.");const n={method:"PUT",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{},data:t};return d.request(n,a)},appendSource(e,r){if(!e)throw new Error("Parameter `source` is required when calling `appendSource`.");if(!e.source)throw new Error("Parameter `source.source` is required when calling `appendSource`.");const t={method:"POST",path:"/1/security/sources/append",queryParameters:{},headers:{},data:e};return d.request(t,r)},assignUserId({xAlgoliaUserID:e,assignUserIdParams:r},t){if(!e)throw new Error("Parameter `xAlgoliaUserID` is required when calling `assignUserId`.");if(!r)throw new Error("Parameter `assignUserIdParams` is required when calling `assignUserId`.");if(!r.cluster)throw new Error("Parameter `assignUserIdParams.cluster` is required when calling `assignUserId`.");const a={};void 0!==e&&(a["X-Algolia-User-ID"]=e.toString());const n={method:"POST",path:"/1/clusters/mapping",queryParameters:{},headers:a,data:r};return d.request(n,t)},batch({indexName:e,batchWriteParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `batch`.");if(!r)throw new Error("Parameter `batchWriteParams` is required when calling `batch`.");if(!r.requests)throw new Error("Parameter `batchWriteParams.requests` is required when calling `batch`.");const a={method:"POST",path:"/1/indexes/{indexName}/batch".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},batchAssignUserIds({xAlgoliaUserID:e,batchAssignUserIdsParams:r},t){if(!e)throw new Error("Parameter `xAlgoliaUserID` is required when calling `batchAssignUserIds`.");if(!r)throw new Error("Parameter `batchAssignUserIdsParams` is required when calling `batchAssignUserIds`.");if(!r.cluster)throw new Error("Parameter `batchAssignUserIdsParams.cluster` is required when calling `batchAssignUserIds`.");if(!r.users)throw new Error("Parameter `batchAssignUserIdsParams.users` is required when calling `batchAssignUserIds`.");const a={};void 0!==e&&(a["X-Algolia-User-ID"]=e.toString());const n={method:"POST",path:"/1/clusters/mapping/batch",queryParameters:{},headers:a,data:r};return d.request(n,t)},batchDictionaryEntries({dictionaryName:e,batchDictionaryEntriesParams:r},t){if(!e)throw new Error("Parameter `dictionaryName` is required when calling `batchDictionaryEntries`.");if(!r)throw new Error("Parameter `batchDictionaryEntriesParams` is required when calling `batchDictionaryEntries`.");if(!r.requests)throw new Error("Parameter `batchDictionaryEntriesParams.requests` is required when calling `batchDictionaryEntries`.");const a={method:"POST",path:"/1/dictionaries/{dictionaryName}/batch".replace("{dictionaryName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},browse({indexName:e,browseParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `browse`.");const a={method:"POST",path:"/1/indexes/{indexName}/browse".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return d.request(a,t)},clearObjects({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `clearObjects`.");const t={method:"POST",path:"/1/indexes/{indexName}/clear".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},clearRules({indexName:e,forwardToReplicas:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `clearRules`.");const a="/1/indexes/{indexName}/rules/clear".replace("{indexName}",encodeURIComponent(e)),n={};void 0!==r&&(n.forwardToReplicas=r.toString());const s={method:"POST",path:a,queryParameters:n,headers:{}};return d.request(s,t)},clearSynonyms({indexName:e,forwardToReplicas:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `clearSynonyms`.");const a="/1/indexes/{indexName}/synonyms/clear".replace("{indexName}",encodeURIComponent(e)),n={};void 0!==r&&(n.forwardToReplicas=r.toString());const s={method:"POST",path:a,queryParameters:n,headers:{}};return d.request(s,t)},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},deleteApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `deleteApiKey`.");const t={method:"DELETE",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},deleteBy({indexName:e,deleteByParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteBy`.");if(!r)throw new Error("Parameter `deleteByParams` is required when calling `deleteBy`.");const a={method:"POST",path:"/1/indexes/{indexName}/deleteByQuery".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},deleteIndex({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteIndex`.");const t={method:"DELETE",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},deleteObject({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteObject`.");const a={method:"DELETE",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return d.request(a,t)},deleteRule({indexName:e,objectID:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteRule`.");const n="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const o={method:"DELETE",path:n,queryParameters:s,headers:{}};return d.request(o,a)},deleteSource({source:e},r){if(!e)throw new Error("Parameter `source` is required when calling `deleteSource`.");const t={method:"DELETE",path:"/1/security/sources/{source}".replace("{source}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},deleteSynonym({indexName:e,objectID:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteSynonym`.");const n="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const o={method:"DELETE",path:n,queryParameters:s,headers:{}};return d.request(o,a)},getApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `getApiKey`.");const t={method:"GET",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},getAppTask({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `getAppTask`.");const t={method:"GET",path:"/1/task/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},getDictionaryLanguages(e){const r={method:"GET",path:"/1/dictionaries/*/languages",queryParameters:{},headers:{}};return d.request(r,e)},getDictionarySettings(e){const r={method:"GET",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{}};return d.request(r,e)},getLogs({offset:e,length:r,indexName:t,type:a}={},n=void 0){const s={};void 0!==e&&(s.offset=e.toString()),void 0!==r&&(s.length=r.toString()),void 0!==t&&(s.indexName=t.toString()),void 0!==a&&(s.type=a.toString());const o={method:"GET",path:"/1/logs",queryParameters:s,headers:{}};return d.request(o,n)},getObject({indexName:e,objectID:r,attributesToRetrieve:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `getObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getObject`.");const n="/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.attributesToRetrieve=t.toString());const o={method:"GET",path:n,queryParameters:s,headers:{}};return d.request(o,a)},getObjects(e,r){if(!e)throw new Error("Parameter `getObjectsParams` is required when calling `getObjects`.");if(!e.requests)throw new Error("Parameter `getObjectsParams.requests` is required when calling `getObjects`.");const t={method:"POST",path:"/1/indexes/*/objects",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return d.request(t,r)},getRule({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getRule`.");const a={method:"GET",path:"/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return d.request(a,t)},getSettings({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getSettings`.");const t={method:"GET",path:"/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},getSources(e){const r={method:"GET",path:"/1/security/sources",queryParameters:{},headers:{}};return d.request(r,e)},getSynonym({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getSynonym`.");const a={method:"GET",path:"/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return d.request(a,t)},getTask({indexName:e,taskID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getTask`.");if(!r)throw new Error("Parameter `taskID` is required when calling `getTask`.");const a={method:"GET",path:"/1/indexes/{indexName}/task/{taskID}".replace("{indexName}",encodeURIComponent(e)).replace("{taskID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return d.request(a,t)},getTopUserIds(e){const r={method:"GET",path:"/1/clusters/mapping/top",queryParameters:{},headers:{}};return d.request(r,e)},getUserId({userID:e},r){if(!e)throw new Error("Parameter `userID` is required when calling `getUserId`.");const t={method:"GET",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},hasPendingMappings({getClusters:e}={},r=void 0){const t={};void 0!==e&&(t.getClusters=e.toString());const a={method:"GET",path:"/1/clusters/mapping/pending",queryParameters:t,headers:{}};return d.request(a,r)},listApiKeys(e){const r={method:"GET",path:"/1/keys",queryParameters:{},headers:{}};return d.request(r,e)},listClusters(e){const r={method:"GET",path:"/1/clusters",queryParameters:{},headers:{}};return d.request(r,e)},listIndices({page:e,hitsPerPage:r}={},t=void 0){const a={};void 0!==e&&(a.page=e.toString()),void 0!==r&&(a.hitsPerPage=r.toString());const n={method:"GET",path:"/1/indexes",queryParameters:a,headers:{}};return d.request(n,t)},listUserIds({page:e,hitsPerPage:r}={},t=void 0){const a={};void 0!==e&&(a.page=e.toString()),void 0!==r&&(a.hitsPerPage=r.toString());const n={method:"GET",path:"/1/clusters/mapping",queryParameters:a,headers:{}};return d.request(n,t)},multipleBatch(e,r){if(!e)throw new Error("Parameter `batchParams` is required when calling `multipleBatch`.");if(!e.requests)throw new Error("Parameter `batchParams.requests` is required when calling `multipleBatch`.");const t={method:"POST",path:"/1/indexes/*/batch",queryParameters:{},headers:{},data:e};return d.request(t,r)},operationIndex({indexName:e,operationIndexParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `operationIndex`.");if(!r)throw new Error("Parameter `operationIndexParams` is required when calling `operationIndex`.");if(!r.operation)throw new Error("Parameter `operationIndexParams.operation` is required when calling `operationIndex`.");if(!r.destination)throw new Error("Parameter `operationIndexParams.destination` is required when calling `operationIndex`.");const a={method:"POST",path:"/1/indexes/{indexName}/operation".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},partialUpdateObject({indexName:e,objectID:r,attributesToUpdate:t,createIfNotExists:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `partialUpdateObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `partialUpdateObject`.");if(!t)throw new Error("Parameter `attributesToUpdate` is required when calling `partialUpdateObject`.");const s="/1/indexes/{indexName}/{objectID}/partial".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),o={};void 0!==a&&(o.createIfNotExists=a.toString());const i={method:"POST",path:s,queryParameters:o,headers:{},data:t};return d.request(i,n)},removeUserId({userID:e},r){if(!e)throw new Error("Parameter `userID` is required when calling `removeUserId`.");const t={method:"DELETE",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},replaceSources({source:e},r){if(!e)throw new Error("Parameter `source` is required when calling `replaceSources`.");const t={method:"PUT",path:"/1/security/sources",queryParameters:{},headers:{},data:e};return d.request(t,r)},restoreApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `restoreApiKey`.");const t={method:"POST",path:"/1/keys/{key}/restore".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},saveObject({indexName:e,body:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `saveObject`.");if(!r)throw new Error("Parameter `body` is required when calling `saveObject`.");const a={method:"POST",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)},saveRule({indexName:e,objectID:r,rule:t,forwardToReplicas:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `saveRule`.");if(!t)throw new Error("Parameter `rule` is required when calling `saveRule`.");if(!t.objectID)throw new Error("Parameter `rule.objectID` is required when calling `saveRule`.");const s="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),o={};void 0!==a&&(o.forwardToReplicas=a.toString());const i={method:"PUT",path:s,queryParameters:o,headers:{},data:t};return d.request(i,n)},saveRules({indexName:e,rules:r,forwardToReplicas:t,clearExistingRules:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveRules`.");if(!r)throw new Error("Parameter `rules` is required when calling `saveRules`.");const s="/1/indexes/{indexName}/rules/batch".replace("{indexName}",encodeURIComponent(e)),o={};void 0!==t&&(o.forwardToReplicas=t.toString()),void 0!==a&&(o.clearExistingRules=a.toString());const i={method:"POST",path:s,queryParameters:o,headers:{},data:r};return d.request(i,n)},saveSynonym({indexName:e,objectID:r,synonymHit:t,forwardToReplicas:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `saveSynonym`.");if(!t)throw new Error("Parameter `synonymHit` is required when calling `saveSynonym`.");if(!t.objectID)throw new Error("Parameter `synonymHit.objectID` is required when calling `saveSynonym`.");if(!t.type)throw new Error("Parameter `synonymHit.type` is required when calling `saveSynonym`.");const s="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),o={};void 0!==a&&(o.forwardToReplicas=a.toString());const i={method:"PUT",path:s,queryParameters:o,headers:{},data:t};return d.request(i,n)},saveSynonyms({indexName:e,synonymHit:r,forwardToReplicas:t,replaceExistingSynonyms:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveSynonyms`.");if(!r)throw new Error("Parameter `synonymHit` is required when calling `saveSynonyms`.");const s="/1/indexes/{indexName}/synonyms/batch".replace("{indexName}",encodeURIComponent(e)),o={};void 0!==t&&(o.forwardToReplicas=t.toString()),void 0!==a&&(o.replaceExistingSynonyms=a.toString());const i={method:"POST",path:s,queryParameters:o,headers:{},data:r};return d.request(i,n)},search(e,r){if(e&&Array.isArray(e)){const r={requests:e.map((({params:e,...r})=>"facet"===r.type?{...r,...e,type:"facet"}:{...r,...e,facet:void 0,maxFacetHits:void 0,facetQuery:void 0}))};e=r}if(!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");const t={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return d.request(t,r)},searchDictionaryEntries({dictionaryName:e,searchDictionaryEntriesParams:r},t){if(!e)throw new Error("Parameter `dictionaryName` is required when calling `searchDictionaryEntries`.");if(!r)throw new Error("Parameter `searchDictionaryEntriesParams` is required when calling `searchDictionaryEntries`.");if(!r.query)throw new Error("Parameter `searchDictionaryEntriesParams.query` is required when calling `searchDictionaryEntries`.");const a={method:"POST",path:"/1/dictionaries/{dictionaryName}/search".replace("{dictionaryName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r,useReadTransporter:!0,cacheable:!0};return d.request(a,t)},searchForFacetValues({indexName:e,facetName:r,searchForFacetValuesRequest:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `searchForFacetValues`.");if(!r)throw new Error("Parameter `facetName` is required when calling `searchForFacetValues`.");const n={method:"POST",path:"/1/indexes/{indexName}/facets/{facetName}/query".replace("{indexName}",encodeURIComponent(e)).replace("{facetName}",encodeURIComponent(r)),queryParameters:{},headers:{},data:t||{},useReadTransporter:!0,cacheable:!0};return d.request(n,a)},searchRules({indexName:e,searchRulesParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchRules`.");const a={method:"POST",path:"/1/indexes/{indexName}/rules/search".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return d.request(a,t)},searchSingleIndex({indexName:e,searchParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchSingleIndex`.");const a={method:"POST",path:"/1/indexes/{indexName}/query".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return d.request(a,t)},searchSynonyms({indexName:e,searchSynonymsParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchSynonyms`.");const a={method:"POST",path:"/1/indexes/{indexName}/synonyms/search".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return d.request(a,t)},searchUserIds(e,r){if(!e)throw new Error("Parameter `searchUserIdsParams` is required when calling `searchUserIds`.");if(!e.query)throw new Error("Parameter `searchUserIdsParams.query` is required when calling `searchUserIds`.");const t={method:"POST",path:"/1/clusters/mapping/search",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return d.request(t,r)},setDictionarySettings(e,r){if(!e)throw new Error("Parameter `dictionarySettingsParams` is required when calling `setDictionarySettings`.");if(!e.disableStandardEntries)throw new Error("Parameter `dictionarySettingsParams.disableStandardEntries` is required when calling `setDictionarySettings`.");const t={method:"PUT",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{},data:e};return d.request(t,r)},setSettings({indexName:e,indexSettings:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `setSettings`.");if(!r)throw new Error("Parameter `indexSettings` is required when calling `setSettings`.");const n="/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(e)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const o={method:"PUT",path:n,queryParameters:s,headers:{},data:r};return d.request(o,a)},updateApiKey({key:e,apiKey:r},t){if(!e)throw new Error("Parameter `key` is required when calling `updateApiKey`.");if(!r)throw new Error("Parameter `apiKey` is required when calling `updateApiKey`.");if(!r.acl)throw new Error("Parameter `apiKey.acl` is required when calling `updateApiKey`.");const a={method:"PUT",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return d.request(a,t)}}}const D="5.0.0-beta.10";const R=T;e.algoliasearch=function(e,t,o){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!t||"string"!=typeof t)throw new Error("`apiKey` is missing.");const i={apiKey:t,appId:e,timeouts:{connect:1e3,read:2e3,write:3e4},requester:{send:function(e){return new Promise((r=>{const t=new XMLHttpRequest;t.open(e.method,e.url,!0),Object.keys(e.headers).forEach((r=>t.setRequestHeader(r,e.headers[r])));const a=(e,a)=>setTimeout((()=>{t.abort(),r({status:0,content:a,isTimedOut:!0})}),e),n=a(e.connectTimeout,"Connection timeout");let s;t.onreadystatechange=()=>{t.readyState>t.OPENED&&void 0===s&&(clearTimeout(n),s=a(e.responseTimeout,"Socket timeout"))},t.onerror=()=>{0===t.status&&(clearTimeout(n),clearTimeout(s),r({content:t.responseText||"Network request failed",status:t.status,isTimedOut:!1}))},t.onload=()=>{clearTimeout(n),clearTimeout(s),r({content:t.responseText,status:t.status,isTimedOut:!1})},t.send(e.data)}))}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:s(),requestsCache:s({serializable:!1}),hostsCache:n({caches:[a({key:`${R}-${e}`}),s()]}),...o};return{...I(i),get _ua(){return this.transporter.algoliaAgent.value},initAbtesting:function(e={}){if(e.region&&("string"!=typeof e.region||!x.includes(e.region)))throw new Error(`\`region\` must be one of the following: ${x.join(", ")}`);return function({appId:e,apiKey:t,authMode:a,algoliaAgents:n,region:s,...o}){const i=r(e,t,a),d=q({hosts:(c=s,[{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]),...o,algoliaAgent:y({algoliaAgents:n,client:"Abtesting",version:f}),baseHeaders:{"content-type":"text/plain",...i.headers(),...o.baseHeaders},baseQueryParameters:{...i.queryParameters(),...o.baseQueryParameters}});var c;return{transporter:d,appId:e,clearCache:()=>Promise.all([d.requestsCache.clear(),d.responsesCache.clear()]).then((()=>{})),get _ua(){return d.algoliaAgent.value},addAlgoliaAgent(e,r){d.algoliaAgent.add({segment:e,version:r})},addABTests(e,r){if(!e)throw new Error("Parameter `addABTestsRequest` is required when calling `addABTests`.");if(!e.name)throw new Error("Parameter `addABTestsRequest.name` is required when calling `addABTests`.");if(!e.variants)throw new Error("Parameter `addABTestsRequest.variants` is required when calling `addABTests`.");if(!e.endAt)throw new Error("Parameter `addABTestsRequest.endAt` is required when calling `addABTests`.");const t={method:"POST",path:"/2/abtests",queryParameters:{},headers:{},data:e};return d.request(t,r)},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},deleteABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `deleteABTest`.");const t={method:"DELETE",path:"/2/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},getABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `getABTest`.");const t={method:"GET",path:"/2/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},listABTests({offset:e,limit:r,indexPrefix:t,indexSuffix:a}={},n=void 0){const s={};void 0!==e&&(s.offset=e.toString()),void 0!==r&&(s.limit=r.toString()),void 0!==t&&(s.indexPrefix=t.toString()),void 0!==a&&(s.indexSuffix=a.toString());const o={method:"GET",path:"/2/abtests",queryParameters:s,headers:{}};return d.request(o,n)},stopABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `stopABTest`.");const t={method:"POST",path:"/2/abtests/{id}/stop".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)}}}({...i,...e.options,...e})},initAnalytics:function(e={}){if(e.region&&("string"!=typeof e.region||!v.includes(e.region)))throw new Error(`\`region\` must be one of the following: ${v.join(", ")}`);return function({appId:e,apiKey:t,authMode:a,algoliaAgents:n,region:s,...o}){const i=r(e,t,a),d=q({hosts:(c=s,[{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]),...o,algoliaAgent:y({algoliaAgents:n,client:"Analytics",version:E}),baseHeaders:{"content-type":"text/plain",...i.headers(),...o.baseHeaders},baseQueryParameters:{...i.queryParameters(),...o.baseQueryParameters}});var c;return{transporter:d,appId:e,clearCache:()=>Promise.all([d.requestsCache.clear(),d.responsesCache.clear()]).then((()=>{})),get _ua(){return d.algoliaAgent.value},addAlgoliaAgent(e,r){d.algoliaAgent.add({segment:e,version:r})},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},getAddToCartRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getAddToCartRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/conversions/addToCartRate",queryParameters:s,headers:{}};return d.request(o,n)},getAverageClickPosition({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getAverageClickPosition`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/clicks/averageClickPosition",queryParameters:s,headers:{}};return d.request(o,n)},getClickPositions({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getClickPositions`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/clicks/positions",queryParameters:s,headers:{}};return d.request(o,n)},getClickThroughRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getClickThroughRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/clicks/clickThroughRate",queryParameters:s,headers:{}};return d.request(o,n)},getConversionRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getConversionRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/conversions/conversionRate",queryParameters:s,headers:{}};return d.request(o,n)},getNoClickRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getNoClickRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/searches/noClickRate",queryParameters:s,headers:{}};return d.request(o,n)},getNoResultsRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getNoResultsRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/searches/noResultRate",queryParameters:s,headers:{}};return d.request(o,n)},getPurchaseRate({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getPurchaseRate`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/conversions/purchaseRate",queryParameters:s,headers:{}};return d.request(o,n)},getRevenue({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getRevenue`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/conversions/revenue",queryParameters:s,headers:{}};return d.request(o,n)},getSearchesCount({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesCount`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/searches/count",queryParameters:s,headers:{}};return d.request(o,n)},getSearchesNoClicks({index:e,startDate:r,endDate:t,limit:a,offset:n,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesNoClicks`.");const i={};void 0!==e&&(i.index=e.toString()),void 0!==r&&(i.startDate=r.toString()),void 0!==t&&(i.endDate=t.toString()),void 0!==a&&(i.limit=a.toString()),void 0!==n&&(i.offset=n.toString()),void 0!==s&&(i.tags=s.toString());const c={method:"GET",path:"/2/searches/noClicks",queryParameters:i,headers:{}};return d.request(c,o)},getSearchesNoResults({index:e,startDate:r,endDate:t,limit:a,offset:n,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesNoResults`.");const i={};void 0!==e&&(i.index=e.toString()),void 0!==r&&(i.startDate=r.toString()),void 0!==t&&(i.endDate=t.toString()),void 0!==a&&(i.limit=a.toString()),void 0!==n&&(i.offset=n.toString()),void 0!==s&&(i.tags=s.toString());const c={method:"GET",path:"/2/searches/noResults",queryParameters:i,headers:{}};return d.request(c,o)},getStatus({index:e},r){if(!e)throw new Error("Parameter `index` is required when calling `getStatus`.");const t={};void 0!==e&&(t.index=e.toString());const a={method:"GET",path:"/2/status",queryParameters:t,headers:{}};return d.request(a,r)},getTopCountries({index:e,startDate:r,endDate:t,limit:a,offset:n,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getTopCountries`.");const i={};void 0!==e&&(i.index=e.toString()),void 0!==r&&(i.startDate=r.toString()),void 0!==t&&(i.endDate=t.toString()),void 0!==a&&(i.limit=a.toString()),void 0!==n&&(i.offset=n.toString()),void 0!==s&&(i.tags=s.toString());const c={method:"GET",path:"/2/countries",queryParameters:i,headers:{}};return d.request(c,o)},getTopFilterAttributes({index:e,search:r,startDate:t,endDate:a,limit:n,offset:s,tags:o},i){if(!e)throw new Error("Parameter `index` is required when calling `getTopFilterAttributes`.");const c={};void 0!==e&&(c.index=e.toString()),void 0!==r&&(c.search=r.toString()),void 0!==t&&(c.startDate=t.toString()),void 0!==a&&(c.endDate=a.toString()),void 0!==n&&(c.limit=n.toString()),void 0!==s&&(c.offset=s.toString()),void 0!==o&&(c.tags=o.toString());const u={method:"GET",path:"/2/filters",queryParameters:c,headers:{}};return d.request(u,i)},getTopFilterForAttribute({attribute:e,index:r,search:t,startDate:a,endDate:n,limit:s,offset:o,tags:i},c){if(!e)throw new Error("Parameter `attribute` is required when calling `getTopFilterForAttribute`.");if(!r)throw new Error("Parameter `index` is required when calling `getTopFilterForAttribute`.");const u="/2/filters/{attribute}".replace("{attribute}",encodeURIComponent(e)),h={};void 0!==r&&(h.index=r.toString()),void 0!==t&&(h.search=t.toString()),void 0!==a&&(h.startDate=a.toString()),void 0!==n&&(h.endDate=n.toString()),void 0!==s&&(h.limit=s.toString()),void 0!==o&&(h.offset=o.toString()),void 0!==i&&(h.tags=i.toString());const l={method:"GET",path:u,queryParameters:h,headers:{}};return d.request(l,c)},getTopFiltersNoResults({index:e,search:r,startDate:t,endDate:a,limit:n,offset:s,tags:o},i){if(!e)throw new Error("Parameter `index` is required when calling `getTopFiltersNoResults`.");const c={};void 0!==e&&(c.index=e.toString()),void 0!==r&&(c.search=r.toString()),void 0!==t&&(c.startDate=t.toString()),void 0!==a&&(c.endDate=a.toString()),void 0!==n&&(c.limit=n.toString()),void 0!==s&&(c.offset=s.toString()),void 0!==o&&(c.tags=o.toString());const u={method:"GET",path:"/2/filters/noResults",queryParameters:c,headers:{}};return d.request(u,i)},getTopHits({index:e,search:r,clickAnalytics:t,revenueAnalytics:a,startDate:n,endDate:s,limit:o,offset:i,tags:c},u){if(!e)throw new Error("Parameter `index` is required when calling `getTopHits`.");const h={};void 0!==e&&(h.index=e.toString()),void 0!==r&&(h.search=r.toString()),void 0!==t&&(h.clickAnalytics=t.toString()),void 0!==a&&(h.revenueAnalytics=a.toString()),void 0!==n&&(h.startDate=n.toString()),void 0!==s&&(h.endDate=s.toString()),void 0!==o&&(h.limit=o.toString()),void 0!==i&&(h.offset=i.toString()),void 0!==c&&(h.tags=c.toString());const l={method:"GET",path:"/2/hits",queryParameters:h,headers:{}};return d.request(l,u)},getTopSearches({index:e,clickAnalytics:r,revenueAnalytics:t,startDate:a,endDate:n,orderBy:s,direction:o,limit:i,offset:c,tags:u},h){if(!e)throw new Error("Parameter `index` is required when calling `getTopSearches`.");const l={};void 0!==e&&(l.index=e.toString()),void 0!==r&&(l.clickAnalytics=r.toString()),void 0!==t&&(l.revenueAnalytics=t.toString()),void 0!==a&&(l.startDate=a.toString()),void 0!==n&&(l.endDate=n.toString()),void 0!==s&&(l.orderBy=s.toString()),void 0!==o&&(l.direction=o.toString()),void 0!==i&&(l.limit=i.toString()),void 0!==c&&(l.offset=c.toString()),void 0!==u&&(l.tags=u.toString());const m={method:"GET",path:"/2/searches",queryParameters:l,headers:{}};return d.request(m,h)},getUsersCount({index:e,startDate:r,endDate:t,tags:a},n){if(!e)throw new Error("Parameter `index` is required when calling `getUsersCount`.");const s={};void 0!==e&&(s.index=e.toString()),void 0!==r&&(s.startDate=r.toString()),void 0!==t&&(s.endDate=t.toString()),void 0!==a&&(s.tags=a.toString());const o={method:"GET",path:"/2/users/count",queryParameters:s,headers:{}};return d.request(o,n)}}}({...i,...e.options,...e})},initPersonalization:function(e){if(!e.region||e.region&&("string"!=typeof e.region||!b.includes(e.region)))throw new Error(`\`region\` is required and must be one of the following: ${b.join(", ")}`);return function({appId:e,apiKey:t,authMode:a,algoliaAgents:n,region:s,...o}){const i=r(e,t,a),d=q({hosts:(c=s,[{url:"personalization.{region}.algolia.com".replace("{region}",c),accept:"readWrite",protocol:"https"}]),...o,algoliaAgent:y({algoliaAgents:n,client:"Personalization",version:S}),baseHeaders:{"content-type":"text/plain",...i.headers(),...o.baseHeaders},baseQueryParameters:{...i.queryParameters(),...o.baseQueryParameters}});var c;return{transporter:d,appId:e,clearCache:()=>Promise.all([d.requestsCache.clear(),d.responsesCache.clear()]).then((()=>{})),get _ua(){return d.algoliaAgent.value},addAlgoliaAgent(e,r){d.algoliaAgent.add({segment:e,version:r})},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return d.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return d.request(n,a)},deleteUserProfile({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `deleteUserProfile`.");const t={method:"DELETE",path:"/1/profiles/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},getPersonalizationStrategy(e){const r={method:"GET",path:"/1/strategies/personalization",queryParameters:{},headers:{}};return d.request(r,e)},getUserTokenProfile({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `getUserTokenProfile`.");const t={method:"GET",path:"/1/profiles/personalization/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return d.request(t,r)},setPersonalizationStrategy(e,r){if(!e)throw new Error("Parameter `personalizationStrategyParams` is required when calling `setPersonalizationStrategy`.");if(!e.eventScoring)throw new Error("Parameter `personalizationStrategyParams.eventScoring` is required when calling `setPersonalizationStrategy`.");if(!e.facetScoring)throw new Error("Parameter `personalizationStrategyParams.facetScoring` is required when calling `setPersonalizationStrategy`.");if(!e.personalizationImpact)throw new Error("Parameter `personalizationStrategyParams.personalizationImpact` is required when calling `setPersonalizationStrategy`.");const t={method:"POST",path:"/1/strategies/personalization",queryParameters:{},headers:{},data:e};return d.request(t,r)}}}({...i,...e.options,...e})},initRecommend:function(e={}){return function({appId:e,apiKey:t,authMode:a,algoliaAgents:n,...s}){const o=r(e,t,a),i=q({hosts:(d=e,[{url:`${d}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${d}.algolia.net`,accept:"write",protocol:"https"}].concat(g([{url:`${d}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${d}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${d}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))),...s,algoliaAgent:y({algoliaAgents:n,client:"Recommend",version:D}),baseHeaders:{"content-type":"text/plain",...o.headers(),...s.baseHeaders},baseQueryParameters:{...o.queryParameters(),...s.baseQueryParameters}});var d;return{transporter:i,appId:e,clearCache:()=>Promise.all([i.requestsCache.clear(),i.responsesCache.clear()]).then((()=>{})),get _ua(){return i.algoliaAgent.value},addAlgoliaAgent(e,r){i.algoliaAgent.add({segment:e,version:r})},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return i.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return i.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return i.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return i.request(n,a)},deleteRecommendRule({indexName:e,model:r,objectID:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteRecommendRule`.");if(!r)throw new Error("Parameter `model` is required when calling `deleteRecommendRule`.");if(!t)throw new Error("Parameter `objectID` is required when calling `deleteRecommendRule`.");const n={method:"DELETE",path:"/1/indexes/{indexName}/{model}/recommend/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{model}",encodeURIComponent(r)).replace("{objectID}",encodeURIComponent(t)),queryParameters:{},headers:{}};return i.request(n,a)},getRecommendRule({indexName:e,model:r,objectID:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `getRecommendRule`.");if(!r)throw new Error("Parameter `model` is required when calling `getRecommendRule`.");if(!t)throw new Error("Parameter `objectID` is required when calling `getRecommendRule`.");const n={method:"GET",path:"/1/indexes/{indexName}/{model}/recommend/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{model}",encodeURIComponent(r)).replace("{objectID}",encodeURIComponent(t)),queryParameters:{},headers:{}};return i.request(n,a)},getRecommendStatus({indexName:e,model:r,taskID:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `getRecommendStatus`.");if(!r)throw new Error("Parameter `model` is required when calling `getRecommendStatus`.");if(!t)throw new Error("Parameter `taskID` is required when calling `getRecommendStatus`.");const n={method:"GET",path:"/1/indexes/{indexName}/{model}/task/{taskID}".replace("{indexName}",encodeURIComponent(e)).replace("{model}",encodeURIComponent(r)).replace("{taskID}",encodeURIComponent(t)),queryParameters:{},headers:{}};return i.request(n,a)},getRecommendations(e,r){if(e&&Array.isArray(e)&&(e={requests:e}),!e)throw new Error("Parameter `getRecommendationsParams` is required when calling `getRecommendations`.");if(!e.requests)throw new Error("Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.");const t={method:"POST",path:"/1/indexes/*/recommendations",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return i.request(t,r)},searchRecommendRules({indexName:e,model:r,searchRecommendRulesParams:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `searchRecommendRules`.");if(!r)throw new Error("Parameter `model` is required when calling `searchRecommendRules`.");const n={method:"POST",path:"/1/indexes/{indexName}/{model}/recommend/rules/search".replace("{indexName}",encodeURIComponent(e)).replace("{model}",encodeURIComponent(r)),queryParameters:{},headers:{},data:t||{},useReadTransporter:!0,cacheable:!0};return i.request(n,a)}}}({...i,...e.options,...e})}}},e.apiClientVersion=R}));
@@ -1,52 +1,37 @@
1
+ import type { ABTestConfiguration } from './aBTestConfiguration';
2
+ import type { Status } from './status';
1
3
  import type { Variant } from './variant';
2
4
  export type ABTest = {
3
5
  /**
4
- * Unique A/B test ID.
6
+ * Unique A/B test identifier.
5
7
  */
6
8
  abTestID: number;
9
+ clickSignificance: number | null;
10
+ conversionSignificance: number | null;
11
+ addToCartSignificance: number | null;
12
+ purchaseSignificance: number | null;
13
+ revenueSignificance: Record<string, number> | null;
7
14
  /**
8
- * [A/B test significance](https://www.algolia.com/doc/guides/ab-testing/what-is-ab-testing/in-depth/how-ab-test-scores-are-calculated/#statistical-significance-or-chance) based on click data. A value of 0.95 or over is considered to be _significant_.
9
- */
10
- clickSignificance: number;
11
- /**
12
- * [A/B test significance](https://www.algolia.com/doc/guides/ab-testing/what-is-ab-testing/in-depth/how-ab-test-scores-are-calculated/#statistical-significance-or-chance) based on conversion. A value of 0.95 or over is considered to be _significant_.
13
- */
14
- conversionSignificance: number;
15
- /**
16
- * [A/B test significance](https://www.algolia.com/doc/guides/ab-testing/what-is-ab-testing/in-depth/how-ab-test-scores-are-calculated/#statistical-significance-or-chance) based on add-to-cart data. A value of 0.95 or over is considered to be _significant_.
17
- */
18
- addToCartSignificance: number;
19
- /**
20
- * [A/B test significance](https://www.algolia.com/doc/guides/ab-testing/what-is-ab-testing/in-depth/how-ab-test-scores-are-calculated/#statistical-significance-or-chance) based on purchase data. A value of 0.95 or over is considered to be _significant_.
21
- */
22
- purchaseSignificance: number;
23
- /**
24
- * [A/B test significance](https://www.algolia.com/doc/guides/ab-testing/what-is-ab-testing/in-depth/how-ab-test-scores-are-calculated/#statistical-significance-or-chance) based on revenue data. A value of 0.95 or over is considered to be _significant_.
25
- */
26
- revenueSignificance: Record<string, number>;
27
- /**
28
- * Update date timestamp in [ISO-8601](https://wikipedia.org/wiki/ISO_8601) format.
15
+ * Date and time when the A/B test was last updated, in RFC 3339 format.
29
16
  */
30
17
  updatedAt: string;
31
18
  /**
32
- * Creation date timestamp in [ISO-8601](https://wikipedia.org/wiki/ISO_8601) format.
19
+ * Date and time when the A/B test was created, in RFC 3339 format.
33
20
  */
34
21
  createdAt: string;
35
22
  /**
36
- * End date timestamp in [ISO-8601](https://wikipedia.org/wiki/ISO_8601) format.
23
+ * End date and time of the A/B test, in RFC 3339 format.
37
24
  */
38
25
  endAt: string;
39
26
  /**
40
27
  * A/B test name.
41
28
  */
42
29
  name: string;
30
+ status: Status;
43
31
  /**
44
- * A/B test status.
45
- */
46
- status: string;
47
- /**
48
- * A/B test variants.
32
+ * A/B test variants. The first variant is your _control_ index, typically your production index. The second variant is an index with changed settings that you want to test against the control.
49
33
  */
50
34
  variants: Variant[];
35
+ configuration?: ABTestConfiguration;
51
36
  };
52
37
  //# sourceMappingURL=aBTest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"aBTest.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/aBTest.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,MAAM,MAAM,GAAG;IACnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,sBAAsB,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,qBAAqB,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE5C;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB,CAAC"}
1
+ {"version":3,"file":"aBTest.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/aBTest.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,MAAM,MAAM,GAAG;IACnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAEnD;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,OAAO,EAAE,CAAC;IAEpB,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { EmptySearch } from './emptySearch';
2
+ import type { MinimumDetectableEffect } from './minimumDetectableEffect';
3
+ import type { Outliers } from './outliers';
4
+ /**
5
+ * A/B test configuration.
6
+ */
7
+ export type ABTestConfiguration = {
8
+ outliers: Outliers;
9
+ emptySearch?: EmptySearch;
10
+ minimumDetectableEffect?: MinimumDetectableEffect;
11
+ };
12
+ //# sourceMappingURL=aBTestConfiguration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aBTestConfiguration.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/aBTestConfiguration.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,QAAQ,CAAC;IAEnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;CACnD,CAAC"}
@@ -1,14 +1,14 @@
1
1
  export type ABTestResponse = {
2
2
  /**
3
- * A/B test index.
3
+ * Index name of the A/B test variant (case-sensitive).
4
4
  */
5
5
  index: string;
6
6
  /**
7
- * Unique A/B test ID.
7
+ * Unique A/B test identifier.
8
8
  */
9
9
  abTestID: number;
10
10
  /**
11
- * Unique identifier of a task. A successful API response means that a task was added to a queue. It might not run immediately. You can check the task\'s progress with the `task` operation and this `taskID`.
11
+ * Unique identifier of a task. A successful API response means that a task was added to a queue. It might not run immediately. You can check the task\'s progress with the [`task` operation](#tag/Indices/operation/getTask) and this `taskID`.
12
12
  */
13
13
  taskID: number;
14
14
  };
@@ -1,14 +1,14 @@
1
1
  export type AbTestsVariant = {
2
2
  /**
3
- * A/B test index.
3
+ * Index name of the A/B test variant (case-sensitive).
4
4
  */
5
5
  index: string;
6
6
  /**
7
- * A/B test traffic percentage.
7
+ * Percentage of search requests each variant receives.
8
8
  */
9
9
  trafficPercentage: number;
10
10
  /**
11
- * A/B test description.
11
+ * Description for this variant.
12
12
  */
13
13
  description?: string;
14
14
  };
@@ -9,7 +9,7 @@ export type AddABTestsRequest = {
9
9
  */
10
10
  variants: AddABTestsVariant[];
11
11
  /**
12
- * End date timestamp in [ISO-8601](https://wikipedia.org/wiki/ISO_8601) format.
12
+ * End date and time of the A/B test, in RFC 3339 format.
13
13
  */
14
14
  endAt: string;
15
15
  };
@@ -63,7 +63,7 @@ export type CustomPutProps = {
63
63
  */
64
64
  export type DeleteABTestProps = {
65
65
  /**
66
- * Unique A/B test ID.
66
+ * Unique A/B test identifier.
67
67
  */
68
68
  id: number;
69
69
  };
@@ -72,7 +72,7 @@ export type DeleteABTestProps = {
72
72
  */
73
73
  export type GetABTestProps = {
74
74
  /**
75
- * Unique A/B test ID.
75
+ * Unique A/B test identifier.
76
76
  */
77
77
  id: number;
78
78
  };
@@ -81,19 +81,19 @@ export type GetABTestProps = {
81
81
  */
82
82
  export type ListABTestsProps = {
83
83
  /**
84
- * Position of the starting record. Used for paging. 0 is the first record.
84
+ * Position of the first item to return.
85
85
  */
86
86
  offset?: number;
87
87
  /**
88
- * Number of records to return (page size).
88
+ * Number of items to return.
89
89
  */
90
90
  limit?: number;
91
91
  /**
92
- * Only return A/B tests for indices starting with this prefix.
92
+ * Index name prefix. Only A/B tests for indices starting with this string are included in the response.
93
93
  */
94
94
  indexPrefix?: string;
95
95
  /**
96
- * Only return A/B tests for indices ending with this suffix.
96
+ * Index name suffix. Only A/B tests for indices ending with this string are included in the response.
97
97
  */
98
98
  indexSuffix?: string;
99
99
  };
@@ -102,7 +102,7 @@ export type ListABTestsProps = {
102
102
  */
103
103
  export type StopABTestProps = {
104
104
  /**
105
- * Unique A/B test ID.
105
+ * Unique A/B test identifier.
106
106
  */
107
107
  id: number;
108
108
  };
@@ -1,4 +1,4 @@
1
- export type CurrenciesValue = {
1
+ export type Currency = {
2
2
  /**
3
3
  * Currency code.
4
4
  */
@@ -16,4 +16,4 @@ export type CurrenciesValue = {
16
16
  */
17
17
  standardDeviation?: number;
18
18
  };
19
- //# sourceMappingURL=currenciesValue.d.ts.map
19
+ //# sourceMappingURL=currency.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/currency.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,QAAQ,GAAG;IACrB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Applies search parameters from [a restricted set of options](https://www.algolia.com/doc/api-reference/api-methods/add-ab-test/#method-param-customsearchparameters). Only use this parameter if the two variants use the same index.
2
+ * Search parameters to add to the test variant. Only use this parameter if the two variants use the same index.
3
3
  */
4
4
  export type CustomSearchParams = {
5
5
  customSearchParameters: Record<string, any>;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Metric for which you want to detect the smallest relative difference.
3
+ */
4
+ export type Effect = 'addToCartRate' | 'clickThroughRate' | 'conversionRate' | 'purchaseRate';
5
+ //# sourceMappingURL=effect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"effect.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/effect.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,MAAM,GACd,eAAe,GACf,kBAAkB,GAClB,gBAAgB,GAChB,cAAc,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Configuration for handling empty searches.
3
+ */
4
+ export type EmptySearch = {
5
+ /**
6
+ * Whether to exclude empty searches when calculating A/B test results.
7
+ */
8
+ exclude?: boolean;
9
+ };
10
+ //# sourceMappingURL=emptySearch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emptySearch.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/emptySearch.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC"}
@@ -1,16 +1,22 @@
1
1
  export * from './aBTest';
2
+ export * from './aBTestConfiguration';
2
3
  export * from './aBTestResponse';
3
4
  export * from './abTestsVariant';
4
5
  export * from './abTestsVariantSearchParams';
5
6
  export * from './addABTestsRequest';
6
7
  export * from './addABTestsVariant';
7
- export * from './currenciesValue';
8
+ export * from './currency';
8
9
  export * from './customSearchParams';
10
+ export * from './effect';
11
+ export * from './emptySearch';
9
12
  export * from './errorBase';
10
13
  export * from './filterEffects';
11
14
  export * from './filterEffectsEmptySearch';
12
15
  export * from './filterEffectsOutliers';
13
16
  export * from './listABTestsResponse';
17
+ export * from './minimumDetectableEffect';
18
+ export * from './outliers';
19
+ export * from './status';
14
20
  export * from './variant';
15
21
  export * from './clientMethodProps';
16
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/index.ts"],"names":[],"mappings":"AAEA,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/index.ts"],"names":[],"mappings":"AAEA,cAAc,UAAU,CAAC;AACzB,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC"}
@@ -3,9 +3,9 @@ export type ListABTestsResponse = {
3
3
  /**
4
4
  * A/B tests.
5
5
  */
6
- abtests: ABTest[];
6
+ abtests: ABTest[] | null;
7
7
  /**
8
- * Number of A/B tests implemented.
8
+ * Number of A/B tests.
9
9
  */
10
10
  count: number;
11
11
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"listABTestsResponse.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/listABTestsResponse.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf,CAAC"}
1
+ {"version":3,"file":"listABTestsResponse.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/listABTestsResponse.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEzB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { Effect } from './effect';
2
+ /**
3
+ * Configuration for the smallest difference between test variants you want to detect.
4
+ */
5
+ export type MinimumDetectableEffect = {
6
+ /**
7
+ * Smallest difference in an observable metric between variants. For example, to detect a 10% difference between variants, set this value to 0.1.
8
+ */
9
+ size?: number;
10
+ effect?: Effect;
11
+ };
12
+ //# sourceMappingURL=minimumDetectableEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimumDetectableEffect.d.ts","sourceRoot":"","sources":["../../../../client-abtesting/model/minimumDetectableEffect.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC"}