algoliasearch 5.0.0-beta.4 → 5.0.0-beta.6

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 (337) hide show
  1. package/LICENSE +21 -0
  2. package/builds/browser.ts +13 -2
  3. package/builds/models.ts +136 -6
  4. package/builds/node.ts +37 -4
  5. package/dist/algoliasearch/builds/browser.d.ts +77 -72
  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 +77 -72
  10. package/dist/algoliasearch/builds/node.d.ts.map +1 -1
  11. package/dist/algoliasearch.cjs +454 -21
  12. package/dist/algoliasearch.esm.browser.js +438 -22
  13. package/dist/algoliasearch.esm.node.js +454 -21
  14. package/dist/algoliasearch.umd.js +2 -2
  15. package/dist/client-abtesting/src/abtestingClient.d.ts +1 -1
  16. package/dist/client-abtesting/src/abtestingClient.d.ts.map +1 -1
  17. package/dist/client-analytics/src/analyticsClient.d.ts +1 -1
  18. package/dist/client-analytics/src/analyticsClient.d.ts.map +1 -1
  19. package/dist/client-personalization/src/personalizationClient.d.ts +1 -1
  20. package/dist/client-personalization/src/personalizationClient.d.ts.map +1 -1
  21. package/dist/client-search/model/baseIndexSettings.d.ts +2 -2
  22. package/dist/client-search/model/baseIndexSettings.d.ts.map +1 -1
  23. package/dist/client-search/model/baseSearchResponse.d.ts +2 -2
  24. package/dist/client-search/model/baseSearchResponse.d.ts.map +1 -1
  25. package/dist/client-search/model/clientMethodProps.d.ts +15 -2
  26. package/dist/client-search/model/clientMethodProps.d.ts.map +1 -1
  27. package/dist/client-search/model/fetchedIndex.d.ts +4 -0
  28. package/dist/client-search/model/fetchedIndex.d.ts.map +1 -1
  29. package/dist/client-search/model/index.d.ts +1 -1
  30. package/dist/client-search/model/{securedAPIKeyRestrictions.d.ts → securedApiKeyRestrictions.d.ts} +2 -2
  31. package/dist/client-search/model/{securedAPIKeyRestrictions.d.ts.map → securedApiKeyRestrictions.d.ts.map} +1 -1
  32. package/dist/client-search/model/value.d.ts +4 -0
  33. package/dist/client-search/model/value.d.ts.map +1 -1
  34. package/dist/client-search/src/searchClient.d.ts +40 -9
  35. package/dist/client-search/src/searchClient.d.ts.map +1 -1
  36. package/dist/lite/builds/browser.d.ts +4 -3
  37. package/dist/lite/builds/browser.d.ts.map +1 -1
  38. package/dist/lite/builds/node.d.ts +4 -3
  39. package/dist/lite/builds/node.d.ts.map +1 -1
  40. package/dist/lite/lite.cjs +38 -1
  41. package/dist/lite/lite.esm.browser.js +39 -3
  42. package/dist/lite/lite.esm.node.js +38 -1
  43. package/dist/lite/lite.umd.js +2 -2
  44. package/dist/lite/model/baseIndexSettings.d.ts +2 -2
  45. package/dist/lite/model/baseIndexSettings.d.ts.map +1 -1
  46. package/dist/lite/model/baseRecommendRequest.d.ts +17 -0
  47. package/dist/lite/model/baseRecommendRequest.d.ts.map +1 -0
  48. package/dist/lite/model/baseSearchResponse.d.ts +2 -2
  49. package/dist/lite/model/baseSearchResponse.d.ts.map +1 -1
  50. package/dist/lite/model/boughtTogetherQuery.d.ts +4 -0
  51. package/dist/lite/model/boughtTogetherQuery.d.ts.map +1 -0
  52. package/dist/lite/model/clientMethodProps.d.ts +7 -0
  53. package/dist/lite/model/clientMethodProps.d.ts.map +1 -1
  54. package/dist/lite/model/fallbackParams.d.ts +3 -0
  55. package/dist/lite/model/fallbackParams.d.ts.map +1 -0
  56. package/dist/lite/model/fbtModel.d.ts +5 -0
  57. package/dist/lite/model/fbtModel.d.ts.map +1 -0
  58. package/dist/lite/model/frequentlyBoughtTogether.d.ts +9 -0
  59. package/dist/lite/model/frequentlyBoughtTogether.d.ts.map +1 -0
  60. package/dist/lite/model/getRecommendationsParams.d.ts +11 -0
  61. package/dist/lite/model/getRecommendationsParams.d.ts.map +1 -0
  62. package/dist/lite/model/getRecommendationsResponse.d.ts +5 -0
  63. package/dist/lite/model/getRecommendationsResponse.d.ts.map +1 -0
  64. package/dist/lite/model/index.d.ts +28 -1
  65. package/dist/lite/model/index.d.ts.map +1 -1
  66. package/dist/lite/model/lookingSimilar.d.ts +11 -0
  67. package/dist/lite/model/lookingSimilar.d.ts.map +1 -0
  68. package/dist/lite/model/lookingSimilarModel.d.ts +5 -0
  69. package/dist/lite/model/lookingSimilarModel.d.ts.map +1 -0
  70. package/dist/lite/model/lookingSimilarQuery.d.ts +4 -0
  71. package/dist/lite/model/lookingSimilarQuery.d.ts.map +1 -0
  72. package/dist/lite/model/recommendHit.d.ts +27 -0
  73. package/dist/lite/model/recommendHit.d.ts.map +1 -0
  74. package/dist/lite/model/recommendationsHit.d.ts +4 -0
  75. package/dist/lite/model/recommendationsHit.d.ts.map +1 -0
  76. package/dist/lite/model/recommendationsHits.d.ts +5 -0
  77. package/dist/lite/model/recommendationsHits.d.ts.map +1 -0
  78. package/dist/lite/model/recommendationsRequest.d.ts +8 -0
  79. package/dist/lite/model/recommendationsRequest.d.ts.map +1 -0
  80. package/dist/lite/model/recommendationsResults.d.ts +4 -0
  81. package/dist/lite/model/recommendationsResults.d.ts.map +1 -0
  82. package/dist/lite/model/recommendedForYou.d.ts +7 -0
  83. package/dist/lite/model/recommendedForYou.d.ts.map +1 -0
  84. package/dist/lite/model/recommendedForYouModel.d.ts +5 -0
  85. package/dist/lite/model/recommendedForYouModel.d.ts.map +1 -0
  86. package/dist/lite/model/recommendedForYouQuery.d.ts +4 -0
  87. package/dist/lite/model/recommendedForYouQuery.d.ts.map +1 -0
  88. package/dist/lite/model/relatedModel.d.ts +5 -0
  89. package/dist/lite/model/relatedModel.d.ts.map +1 -0
  90. package/dist/lite/model/relatedProducts.d.ts +11 -0
  91. package/dist/lite/model/relatedProducts.d.ts.map +1 -0
  92. package/dist/lite/model/relatedQuery.d.ts +4 -0
  93. package/dist/lite/model/relatedQuery.d.ts.map +1 -0
  94. package/dist/lite/model/searchParams.d.ts +1 -2
  95. package/dist/lite/model/searchParams.d.ts.map +1 -1
  96. package/dist/lite/model/trendingFacetHit.d.ts +18 -0
  97. package/dist/lite/model/trendingFacetHit.d.ts.map +1 -0
  98. package/dist/lite/model/trendingFacets.d.ts +11 -0
  99. package/dist/lite/model/trendingFacets.d.ts.map +1 -0
  100. package/dist/lite/model/trendingFacetsModel.d.ts +5 -0
  101. package/dist/lite/model/trendingFacetsModel.d.ts.map +1 -0
  102. package/dist/lite/model/trendingFacetsQuery.d.ts +4 -0
  103. package/dist/lite/model/trendingFacetsQuery.d.ts.map +1 -0
  104. package/dist/lite/model/trendingItems.d.ts +15 -0
  105. package/dist/lite/model/trendingItems.d.ts.map +1 -0
  106. package/dist/lite/model/trendingItemsModel.d.ts +5 -0
  107. package/dist/lite/model/trendingItemsModel.d.ts.map +1 -0
  108. package/dist/lite/model/trendingItemsQuery.d.ts +4 -0
  109. package/dist/lite/model/trendingItemsQuery.d.ts.map +1 -0
  110. package/dist/lite/model/value.d.ts +4 -0
  111. package/dist/lite/model/value.d.ts.map +1 -1
  112. package/dist/lite/src/liteClient.d.ts +14 -2
  113. package/dist/lite/src/liteClient.d.ts.map +1 -1
  114. package/dist/recommend/model/advancedSyntaxFeatures.d.ts +2 -0
  115. package/dist/recommend/model/advancedSyntaxFeatures.d.ts.map +1 -0
  116. package/dist/recommend/model/alternativesAsExact.d.ts +2 -0
  117. package/dist/recommend/model/alternativesAsExact.d.ts.map +1 -0
  118. package/dist/recommend/model/aroundPrecision.d.ts +6 -0
  119. package/dist/recommend/model/aroundPrecision.d.ts.map +1 -0
  120. package/dist/recommend/model/aroundPrecisionFromValueInner.d.ts +14 -0
  121. package/dist/recommend/model/aroundPrecisionFromValueInner.d.ts.map +1 -0
  122. package/dist/recommend/model/aroundRadius.d.ts +6 -0
  123. package/dist/recommend/model/aroundRadius.d.ts.map +1 -0
  124. package/dist/recommend/model/aroundRadiusAll.d.ts +5 -0
  125. package/dist/recommend/model/aroundRadiusAll.d.ts.map +1 -0
  126. package/dist/recommend/model/autoFacetFilter.d.ts +14 -0
  127. package/dist/recommend/model/autoFacetFilter.d.ts.map +1 -0
  128. package/dist/recommend/model/baseRecommendRequest.d.ts +17 -0
  129. package/dist/recommend/model/baseRecommendRequest.d.ts.map +1 -0
  130. package/dist/recommend/model/baseSearchParams.d.ts +4 -0
  131. package/dist/recommend/model/baseSearchParams.d.ts.map +1 -0
  132. package/dist/recommend/model/baseSearchParamsWithoutQuery.d.ts +116 -0
  133. package/dist/recommend/model/baseSearchParamsWithoutQuery.d.ts.map +1 -0
  134. package/dist/recommend/model/baseSearchResponse.d.ts +110 -0
  135. package/dist/recommend/model/baseSearchResponse.d.ts.map +1 -0
  136. package/dist/recommend/model/boughtTogetherQuery.d.ts +4 -0
  137. package/dist/recommend/model/boughtTogetherQuery.d.ts.map +1 -0
  138. package/dist/recommend/model/clientMethodProps.d.ts +135 -0
  139. package/dist/recommend/model/clientMethodProps.d.ts.map +1 -0
  140. package/dist/recommend/model/condition.d.ts +14 -0
  141. package/dist/recommend/model/condition.d.ts.map +1 -0
  142. package/dist/recommend/model/consequence.d.ts +18 -0
  143. package/dist/recommend/model/consequence.d.ts.map +1 -0
  144. package/dist/recommend/model/deletedAtResponse.d.ts +14 -0
  145. package/dist/recommend/model/deletedAtResponse.d.ts.map +1 -0
  146. package/dist/recommend/model/distinct.d.ts +5 -0
  147. package/dist/recommend/model/distinct.d.ts.map +1 -0
  148. package/dist/recommend/model/errorBase.d.ts +7 -0
  149. package/dist/recommend/model/errorBase.d.ts.map +1 -0
  150. package/dist/recommend/model/exactOnSingleWordQuery.d.ts +5 -0
  151. package/dist/recommend/model/exactOnSingleWordQuery.d.ts.map +1 -0
  152. package/dist/recommend/model/exhaustive.d.ts +26 -0
  153. package/dist/recommend/model/exhaustive.d.ts.map +1 -0
  154. package/dist/recommend/model/facetFilters.d.ts +5 -0
  155. package/dist/recommend/model/facetFilters.d.ts.map +1 -0
  156. package/dist/recommend/model/facetOrdering.d.ts +13 -0
  157. package/dist/recommend/model/facetOrdering.d.ts.map +1 -0
  158. package/dist/recommend/model/facets.d.ts +10 -0
  159. package/dist/recommend/model/facets.d.ts.map +1 -0
  160. package/dist/recommend/model/facetsStats.d.ts +19 -0
  161. package/dist/recommend/model/facetsStats.d.ts.map +1 -0
  162. package/dist/recommend/model/fallbackParams.d.ts +3 -0
  163. package/dist/recommend/model/fallbackParams.d.ts.map +1 -0
  164. package/dist/recommend/model/fbtModel.d.ts +5 -0
  165. package/dist/recommend/model/fbtModel.d.ts.map +1 -0
  166. package/dist/recommend/model/frequentlyBoughtTogether.d.ts +9 -0
  167. package/dist/recommend/model/frequentlyBoughtTogether.d.ts.map +1 -0
  168. package/dist/recommend/model/getRecommendTaskResponse.d.ts +5 -0
  169. package/dist/recommend/model/getRecommendTaskResponse.d.ts.map +1 -0
  170. package/dist/recommend/model/getRecommendationsParams.d.ts +11 -0
  171. package/dist/recommend/model/getRecommendationsParams.d.ts.map +1 -0
  172. package/dist/recommend/model/getRecommendationsResponse.d.ts +5 -0
  173. package/dist/recommend/model/getRecommendationsResponse.d.ts.map +1 -0
  174. package/dist/recommend/model/hideConsequenceObject.d.ts +10 -0
  175. package/dist/recommend/model/hideConsequenceObject.d.ts.map +1 -0
  176. package/dist/recommend/model/highlightResult.d.ts +3 -0
  177. package/dist/recommend/model/highlightResult.d.ts.map +1 -0
  178. package/dist/recommend/model/highlightResultOption.d.ts +20 -0
  179. package/dist/recommend/model/highlightResultOption.d.ts.map +1 -0
  180. package/dist/recommend/model/ignorePlurals.d.ts +6 -0
  181. package/dist/recommend/model/ignorePlurals.d.ts.map +1 -0
  182. package/dist/recommend/model/index.d.ts +92 -0
  183. package/dist/recommend/model/index.d.ts.map +1 -0
  184. package/dist/recommend/model/indexSettingsAsSearchParams.d.ts +160 -0
  185. package/dist/recommend/model/indexSettingsAsSearchParams.d.ts.map +1 -0
  186. package/dist/recommend/model/lookingSimilar.d.ts +11 -0
  187. package/dist/recommend/model/lookingSimilar.d.ts.map +1 -0
  188. package/dist/recommend/model/lookingSimilarModel.d.ts +5 -0
  189. package/dist/recommend/model/lookingSimilarModel.d.ts.map +1 -0
  190. package/dist/recommend/model/lookingSimilarQuery.d.ts +4 -0
  191. package/dist/recommend/model/lookingSimilarQuery.d.ts.map +1 -0
  192. package/dist/recommend/model/matchLevel.d.ts +5 -0
  193. package/dist/recommend/model/matchLevel.d.ts.map +1 -0
  194. package/dist/recommend/model/matchedGeoLocation.d.ts +15 -0
  195. package/dist/recommend/model/matchedGeoLocation.d.ts.map +1 -0
  196. package/dist/recommend/model/mode.d.ts +5 -0
  197. package/dist/recommend/model/mode.d.ts.map +1 -0
  198. package/dist/recommend/model/numericFilters.d.ts +5 -0
  199. package/dist/recommend/model/numericFilters.d.ts.map +1 -0
  200. package/dist/recommend/model/optionalFilters.d.ts +5 -0
  201. package/dist/recommend/model/optionalFilters.d.ts.map +1 -0
  202. package/dist/recommend/model/paramsConsequence.d.ts +19 -0
  203. package/dist/recommend/model/paramsConsequence.d.ts.map +1 -0
  204. package/dist/recommend/model/personalization.d.ts +15 -0
  205. package/dist/recommend/model/personalization.d.ts.map +1 -0
  206. package/dist/recommend/model/promoteConsequenceObject.d.ts +14 -0
  207. package/dist/recommend/model/promoteConsequenceObject.d.ts.map +1 -0
  208. package/dist/recommend/model/queryType.d.ts +5 -0
  209. package/dist/recommend/model/queryType.d.ts.map +1 -0
  210. package/dist/recommend/model/rankingInfo.d.ts +54 -0
  211. package/dist/recommend/model/rankingInfo.d.ts.map +1 -0
  212. package/dist/recommend/model/reRankingApplyFilter.d.ts +5 -0
  213. package/dist/recommend/model/reRankingApplyFilter.d.ts.map +1 -0
  214. package/dist/recommend/model/recommendHit.d.ts +27 -0
  215. package/dist/recommend/model/recommendHit.d.ts.map +1 -0
  216. package/dist/recommend/model/recommendModels.d.ts +2 -0
  217. package/dist/recommend/model/recommendModels.d.ts.map +1 -0
  218. package/dist/recommend/model/recommendRule.d.ts +24 -0
  219. package/dist/recommend/model/recommendRule.d.ts.map +1 -0
  220. package/dist/recommend/model/recommendRuleMetadata.d.ts +10 -0
  221. package/dist/recommend/model/recommendRuleMetadata.d.ts.map +1 -0
  222. package/dist/recommend/model/recommendationsHit.d.ts +4 -0
  223. package/dist/recommend/model/recommendationsHit.d.ts.map +1 -0
  224. package/dist/recommend/model/recommendationsHits.d.ts +5 -0
  225. package/dist/recommend/model/recommendationsHits.d.ts.map +1 -0
  226. package/dist/recommend/model/recommendationsRequest.d.ts +8 -0
  227. package/dist/recommend/model/recommendationsRequest.d.ts.map +1 -0
  228. package/dist/recommend/model/recommendationsResults.d.ts +4 -0
  229. package/dist/recommend/model/recommendationsResults.d.ts.map +1 -0
  230. package/dist/recommend/model/recommendedForYou.d.ts +7 -0
  231. package/dist/recommend/model/recommendedForYou.d.ts.map +1 -0
  232. package/dist/recommend/model/recommendedForYouModel.d.ts +5 -0
  233. package/dist/recommend/model/recommendedForYouModel.d.ts.map +1 -0
  234. package/dist/recommend/model/recommendedForYouQuery.d.ts +4 -0
  235. package/dist/recommend/model/recommendedForYouQuery.d.ts.map +1 -0
  236. package/dist/recommend/model/redirect.d.ts +8 -0
  237. package/dist/recommend/model/redirect.d.ts.map +1 -0
  238. package/dist/recommend/model/redirectRuleIndexMetadata.d.ts +21 -0
  239. package/dist/recommend/model/redirectRuleIndexMetadata.d.ts.map +1 -0
  240. package/dist/recommend/model/redirectRuleIndexMetadataData.d.ts +7 -0
  241. package/dist/recommend/model/redirectRuleIndexMetadataData.d.ts.map +1 -0
  242. package/dist/recommend/model/relatedModel.d.ts +5 -0
  243. package/dist/recommend/model/relatedModel.d.ts.map +1 -0
  244. package/dist/recommend/model/relatedProducts.d.ts +11 -0
  245. package/dist/recommend/model/relatedProducts.d.ts.map +1 -0
  246. package/dist/recommend/model/relatedQuery.d.ts +4 -0
  247. package/dist/recommend/model/relatedQuery.d.ts.map +1 -0
  248. package/dist/recommend/model/removeStopWords.d.ts +6 -0
  249. package/dist/recommend/model/removeStopWords.d.ts.map +1 -0
  250. package/dist/recommend/model/removeWordsIfNoResults.d.ts +5 -0
  251. package/dist/recommend/model/removeWordsIfNoResults.d.ts.map +1 -0
  252. package/dist/recommend/model/renderingContent.d.ts +8 -0
  253. package/dist/recommend/model/renderingContent.d.ts.map +1 -0
  254. package/dist/recommend/model/searchParams.d.ts +3 -0
  255. package/dist/recommend/model/searchParams.d.ts.map +1 -0
  256. package/dist/recommend/model/searchParamsObject.d.ts +7 -0
  257. package/dist/recommend/model/searchParamsObject.d.ts.map +1 -0
  258. package/dist/recommend/model/searchParamsQuery.d.ts +7 -0
  259. package/dist/recommend/model/searchParamsQuery.d.ts.map +1 -0
  260. package/dist/recommend/model/searchRecommendRulesParams.d.ts +38 -0
  261. package/dist/recommend/model/searchRecommendRulesParams.d.ts.map +1 -0
  262. package/dist/recommend/model/searchRecommendRulesResponse.d.ts +20 -0
  263. package/dist/recommend/model/searchRecommendRulesResponse.d.ts.map +1 -0
  264. package/dist/recommend/model/semanticSearch.d.ts +10 -0
  265. package/dist/recommend/model/semanticSearch.d.ts.map +1 -0
  266. package/dist/recommend/model/snippetResult.d.ts +3 -0
  267. package/dist/recommend/model/snippetResult.d.ts.map +1 -0
  268. package/dist/recommend/model/snippetResultOption.d.ts +12 -0
  269. package/dist/recommend/model/snippetResultOption.d.ts.map +1 -0
  270. package/dist/recommend/model/sortRemainingBy.d.ts +5 -0
  271. package/dist/recommend/model/sortRemainingBy.d.ts.map +1 -0
  272. package/dist/recommend/model/supportedLanguage.d.ts +5 -0
  273. package/dist/recommend/model/supportedLanguage.d.ts.map +1 -0
  274. package/dist/recommend/model/tagFilters.d.ts +5 -0
  275. package/dist/recommend/model/tagFilters.d.ts.map +1 -0
  276. package/dist/recommend/model/taskStatus.d.ts +5 -0
  277. package/dist/recommend/model/taskStatus.d.ts.map +1 -0
  278. package/dist/recommend/model/trendingFacetHit.d.ts +18 -0
  279. package/dist/recommend/model/trendingFacetHit.d.ts.map +1 -0
  280. package/dist/recommend/model/trendingFacets.d.ts +11 -0
  281. package/dist/recommend/model/trendingFacets.d.ts.map +1 -0
  282. package/dist/recommend/model/trendingFacetsModel.d.ts +5 -0
  283. package/dist/recommend/model/trendingFacetsModel.d.ts.map +1 -0
  284. package/dist/recommend/model/trendingFacetsQuery.d.ts +4 -0
  285. package/dist/recommend/model/trendingFacetsQuery.d.ts.map +1 -0
  286. package/dist/recommend/model/trendingItems.d.ts +15 -0
  287. package/dist/recommend/model/trendingItems.d.ts.map +1 -0
  288. package/dist/recommend/model/trendingItemsModel.d.ts +5 -0
  289. package/dist/recommend/model/trendingItemsModel.d.ts.map +1 -0
  290. package/dist/recommend/model/trendingItemsQuery.d.ts +4 -0
  291. package/dist/recommend/model/trendingItemsQuery.d.ts.map +1 -0
  292. package/dist/recommend/model/typoTolerance.d.ts +6 -0
  293. package/dist/recommend/model/typoTolerance.d.ts.map +1 -0
  294. package/dist/recommend/model/typoToleranceEnum.d.ts +5 -0
  295. package/dist/recommend/model/typoToleranceEnum.d.ts.map +1 -0
  296. package/dist/recommend/model/value.d.ts +13 -0
  297. package/dist/recommend/model/value.d.ts.map +1 -0
  298. package/dist/recommend/src/recommendClient.d.ts +132 -0
  299. package/dist/recommend/src/recommendClient.d.ts.map +1 -0
  300. package/lite/model/baseIndexSettings.ts +2 -2
  301. package/lite/model/baseRecommendRequest.ts +22 -0
  302. package/lite/model/baseSearchResponse.ts +2 -2
  303. package/lite/model/boughtTogetherQuery.ts +7 -0
  304. package/lite/model/clientMethodProps.ts +8 -0
  305. package/lite/model/fallbackParams.ts +5 -0
  306. package/lite/model/fbtModel.ts +6 -0
  307. package/lite/model/frequentlyBoughtTogether.ts +12 -0
  308. package/lite/model/getRecommendationsParams.ts +13 -0
  309. package/lite/model/getRecommendationsResponse.ts +7 -0
  310. package/lite/model/index.ts +28 -1
  311. package/lite/model/lookingSimilar.ts +15 -0
  312. package/lite/model/lookingSimilarModel.ts +6 -0
  313. package/lite/model/lookingSimilarQuery.ts +6 -0
  314. package/lite/model/recommendHit.ts +34 -0
  315. package/lite/model/recommendationsHit.ts +6 -0
  316. package/lite/model/recommendationsHits.ts +7 -0
  317. package/lite/model/recommendationsRequest.ts +16 -0
  318. package/lite/model/recommendationsResults.ts +6 -0
  319. package/lite/model/recommendedForYou.ts +10 -0
  320. package/lite/model/{searchParamsString.ts → recommendedForYouModel.ts} +4 -6
  321. package/lite/model/recommendedForYouQuery.ts +6 -0
  322. package/lite/model/relatedModel.ts +6 -0
  323. package/lite/model/relatedProducts.ts +15 -0
  324. package/lite/model/relatedQuery.ts +6 -0
  325. package/lite/model/searchParams.ts +1 -2
  326. package/lite/model/trendingFacetHit.ts +21 -0
  327. package/lite/model/trendingFacets.ts +15 -0
  328. package/lite/model/trendingFacetsModel.ts +6 -0
  329. package/lite/model/trendingFacetsQuery.ts +6 -0
  330. package/lite/model/trendingItems.ts +20 -0
  331. package/lite/model/trendingItemsModel.ts +6 -0
  332. package/lite/model/trendingItemsQuery.ts +6 -0
  333. package/lite/model/value.ts +5 -0
  334. package/lite/src/liteClient.ts +57 -1
  335. package/package.json +15 -11
  336. package/dist/lite/model/searchParamsString.d.ts +0 -7
  337. package/dist/lite/model/searchParamsString.d.ts.map +0 -1
@@ -5,9 +5,9 @@ var clientCommon = require('@algolia/client-common');
5
5
  var requesterNodeHttp = require('@algolia/requester-node-http');
6
6
 
7
7
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
8
- const apiClientVersion$4 = '5.0.0-beta.4';
8
+ const apiClientVersion$5 = '5.0.0-beta.6';
9
9
  const REGIONS$2 = ['de', 'us'];
10
- function getDefaultHosts$3(region) {
10
+ function getDefaultHosts$4(region) {
11
11
  const url = !region
12
12
  ? 'analytics.algolia.com'
13
13
  : 'analytics.{region}.algolia.com'.replace('{region}', region);
@@ -17,12 +17,12 @@ function getDefaultHosts$3(region) {
17
17
  function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, region: regionOption, ...options }) {
18
18
  const auth = clientCommon.createAuth(appIdOption, apiKeyOption, authMode);
19
19
  const transporter = clientCommon.createTransporter({
20
- hosts: getDefaultHosts$3(regionOption),
20
+ hosts: getDefaultHosts$4(regionOption),
21
21
  ...options,
22
22
  algoliaAgent: clientCommon.getAlgoliaAgent({
23
23
  algoliaAgents,
24
24
  client: 'Abtesting',
25
- version: apiClientVersion$4,
25
+ version: apiClientVersion$5,
26
26
  }),
27
27
  baseHeaders: {
28
28
  'content-type': 'text/plain',
@@ -310,9 +310,9 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
310
310
  }
311
311
 
312
312
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
313
- const apiClientVersion$3 = '5.0.0-beta.4';
313
+ const apiClientVersion$4 = '5.0.0-beta.6';
314
314
  const REGIONS$1 = ['de', 'us'];
315
- function getDefaultHosts$2(region) {
315
+ function getDefaultHosts$3(region) {
316
316
  const url = !region
317
317
  ? 'analytics.algolia.com'
318
318
  : 'analytics.{region}.algolia.com'.replace('{region}', region);
@@ -322,12 +322,12 @@ function getDefaultHosts$2(region) {
322
322
  function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, region: regionOption, ...options }) {
323
323
  const auth = clientCommon.createAuth(appIdOption, apiKeyOption, authMode);
324
324
  const transporter = clientCommon.createTransporter({
325
- hosts: getDefaultHosts$2(regionOption),
325
+ hosts: getDefaultHosts$3(regionOption),
326
326
  ...options,
327
327
  algoliaAgent: clientCommon.getAlgoliaAgent({
328
328
  algoliaAgents,
329
329
  client: 'Analytics',
330
- version: apiClientVersion$3,
330
+ version: apiClientVersion$4,
331
331
  }),
332
332
  baseHeaders: {
333
333
  'content-type': 'text/plain',
@@ -1365,9 +1365,9 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1365
1365
  }
1366
1366
 
1367
1367
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
1368
- const apiClientVersion$2 = '5.0.0-beta.4';
1368
+ const apiClientVersion$3 = '5.0.0-beta.6';
1369
1369
  const REGIONS = ['eu', 'us'];
1370
- function getDefaultHosts$1(region) {
1370
+ function getDefaultHosts$2(region) {
1371
1371
  const url = 'personalization.{region}.algolia.com'.replace('{region}', region);
1372
1372
  return [{ url, accept: 'readWrite', protocol: 'https' }];
1373
1373
  }
@@ -1375,12 +1375,12 @@ function getDefaultHosts$1(region) {
1375
1375
  function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, region: regionOption, ...options }) {
1376
1376
  const auth = clientCommon.createAuth(appIdOption, apiKeyOption, authMode);
1377
1377
  const transporter = clientCommon.createTransporter({
1378
- hosts: getDefaultHosts$1(regionOption),
1378
+ hosts: getDefaultHosts$2(regionOption),
1379
1379
  ...options,
1380
1380
  algoliaAgent: clientCommon.getAlgoliaAgent({
1381
1381
  algoliaAgents,
1382
1382
  client: 'Personalization',
1383
- version: apiClientVersion$2,
1383
+ version: apiClientVersion$3,
1384
1384
  }),
1385
1385
  baseHeaders: {
1386
1386
  'content-type': 'text/plain',
@@ -1626,8 +1626,8 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
1626
1626
  }
1627
1627
 
1628
1628
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
1629
- const apiClientVersion$1 = '5.0.0-beta.4';
1630
- function getDefaultHosts(appId) {
1629
+ const apiClientVersion$2 = '5.0.0-beta.6';
1630
+ function getDefaultHosts$1(appId) {
1631
1631
  return [
1632
1632
  {
1633
1633
  url: `${appId}-dsn.algolia.net`,
@@ -1661,12 +1661,12 @@ function getDefaultHosts(appId) {
1661
1661
  function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, ...options }) {
1662
1662
  const auth = clientCommon.createAuth(appIdOption, apiKeyOption, authMode);
1663
1663
  const transporter = clientCommon.createTransporter({
1664
- hosts: getDefaultHosts(appIdOption),
1664
+ hosts: getDefaultHosts$1(appIdOption),
1665
1665
  ...options,
1666
1666
  algoliaAgent: clientCommon.getAlgoliaAgent({
1667
1667
  algoliaAgents,
1668
1668
  client: 'Search',
1669
- version: apiClientVersion$1,
1669
+ version: apiClientVersion$2,
1670
1670
  }),
1671
1671
  baseHeaders: {
1672
1672
  'content-type': 'text/plain',
@@ -1951,6 +1951,53 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
1951
1951
  }
1952
1952
  return responses;
1953
1953
  },
1954
+ /**
1955
+ * Helper: Saves the given array of objects in the given index. The `chunkedBatch` helper is used under the hood, which creates a `batch` requests with at most 1000 objects in it.
1956
+ *
1957
+ * @summary Helper: Saves the given array of objects in the given index. The `chunkedBatch` helper is used under the hood, which creates a `batch` requests with at most 1000 objects in it.
1958
+ * @param saveObjects - The `saveObjects` object.
1959
+ * @param saveObjects.indexName - The `indexName` to save `objects` in.
1960
+ * @param saveObjects.objects - The array of `objects` to store in the given Algolia `indexName`.
1961
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `batch` method and merged with the transporter requestOptions.
1962
+ */
1963
+ async saveObjects({ indexName, objects }, requestOptions) {
1964
+ return await this.chunkedBatch({ indexName, objects, action: 'addObject' }, requestOptions);
1965
+ },
1966
+ /**
1967
+ * Helper: Deletes every records for the given objectIDs. The `chunkedBatch` helper is used under the hood, which creates a `batch` requests with at most 1000 objectIDs in it.
1968
+ *
1969
+ * @summary Helper: Deletes every records for the given objectIDs. The `chunkedBatch` helper is used under the hood, which creates a `batch` requests with at most 1000 objectIDs in it.
1970
+ * @param deleteObjects - The `deleteObjects` object.
1971
+ * @param deleteObjects.indexName - The `indexName` to delete `objectIDs` from.
1972
+ * @param deleteObjects.objectIDs - The objectIDs to delete.
1973
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `batch` method and merged with the transporter requestOptions.
1974
+ */
1975
+ async deleteObjects({ indexName, objectIDs }, requestOptions) {
1976
+ return await this.chunkedBatch({
1977
+ indexName,
1978
+ objects: objectIDs.map((objectID) => ({ objectID })),
1979
+ action: 'deleteObject',
1980
+ }, requestOptions);
1981
+ },
1982
+ /**
1983
+ * Helper: Replaces object content of all the given objects according to their respective `objectID` field. The `chunkedBatch` helper is used under the hood, which creates a `batch` requests with at most 1000 objects in it.
1984
+ *
1985
+ * @summary Helper: Replaces object content of all the given objects according to their respective `objectID` field. The `chunkedBatch` helper is used under the hood, which creates a `batch` requests with at most 1000 objects in it.
1986
+ * @param partialUpdateObjects - The `partialUpdateObjects` object.
1987
+ * @param partialUpdateObjects.indexName - The `indexName` to update `objects` in.
1988
+ * @param partialUpdateObjects.objects - The array of `objects` to update in the given Algolia `indexName`.
1989
+ * @param partialUpdateObjects.createIfNotExists - To be provided if non-existing objects are passed, otherwise, the call will fail..
1990
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
1991
+ */
1992
+ async partialUpdateObjects({ indexName, objects, createIfNotExists }, requestOptions) {
1993
+ return await this.chunkedBatch({
1994
+ indexName,
1995
+ objects,
1996
+ action: createIfNotExists
1997
+ ? 'partialUpdateObject'
1998
+ : 'partialUpdateObjectNoCreate',
1999
+ }, requestOptions);
2000
+ },
1954
2001
  /**
1955
2002
  * Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
1956
2003
  * See https://api-clients-automation.netlify.app/docs/contributing/add-new-api-client#5-helpers for implementation details.
@@ -1960,10 +2007,10 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
1960
2007
  * @param replaceAllObjects.indexName - The `indexName` to replace `objects` in.
1961
2008
  * @param replaceAllObjects.objects - The array of `objects` to store in the given Algolia `indexName`.
1962
2009
  * @param replaceAllObjects.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `objects.length / batchSize`. Defaults to 1000.
1963
- * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
2010
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `batch`, `operationIndex` and `getTask` method and merged with the transporter requestOptions.
1964
2011
  */
1965
2012
  async replaceAllObjects({ indexName, objects, batchSize }, requestOptions) {
1966
- const randomSuffix = Math.random().toString(36).substring(7);
2013
+ const randomSuffix = Math.floor(Math.random() * 1000000) + 100000;
1967
2014
  const tmpIndexName = `${indexName}_tmp_${randomSuffix}`;
1968
2015
  let copyOperationResponse = await this.operationIndex({
1969
2016
  indexName,
@@ -3848,7 +3895,369 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3848
3895
  }
3849
3896
 
3850
3897
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
3851
- const apiClientVersion = apiClientVersion$1;
3898
+ const apiClientVersion$1 = '5.0.0-beta.6';
3899
+ function getDefaultHosts(appId) {
3900
+ return [
3901
+ {
3902
+ url: `${appId}-dsn.algolia.net`,
3903
+ accept: 'read',
3904
+ protocol: 'https',
3905
+ },
3906
+ {
3907
+ url: `${appId}.algolia.net`,
3908
+ accept: 'write',
3909
+ protocol: 'https',
3910
+ },
3911
+ ].concat(clientCommon.shuffle([
3912
+ {
3913
+ url: `${appId}-1.algolianet.com`,
3914
+ accept: 'readWrite',
3915
+ protocol: 'https',
3916
+ },
3917
+ {
3918
+ url: `${appId}-2.algolianet.com`,
3919
+ accept: 'readWrite',
3920
+ protocol: 'https',
3921
+ },
3922
+ {
3923
+ url: `${appId}-3.algolianet.com`,
3924
+ accept: 'readWrite',
3925
+ protocol: 'https',
3926
+ },
3927
+ ]));
3928
+ }
3929
+ // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
3930
+ function createRecommendClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, ...options }) {
3931
+ const auth = clientCommon.createAuth(appIdOption, apiKeyOption, authMode);
3932
+ const transporter = clientCommon.createTransporter({
3933
+ hosts: getDefaultHosts(appIdOption),
3934
+ ...options,
3935
+ algoliaAgent: clientCommon.getAlgoliaAgent({
3936
+ algoliaAgents,
3937
+ client: 'Recommend',
3938
+ version: apiClientVersion$1,
3939
+ }),
3940
+ baseHeaders: {
3941
+ 'content-type': 'text/plain',
3942
+ ...auth.headers(),
3943
+ ...options.baseHeaders,
3944
+ },
3945
+ baseQueryParameters: {
3946
+ ...auth.queryParameters(),
3947
+ ...options.baseQueryParameters,
3948
+ },
3949
+ });
3950
+ return {
3951
+ transporter,
3952
+ /**
3953
+ * The `appId` currently in use.
3954
+ */
3955
+ appId: appIdOption,
3956
+ /**
3957
+ * Clears the cache of the transporter for the `requestsCache` and `responsesCache` properties.
3958
+ */
3959
+ clearCache() {
3960
+ return Promise.all([
3961
+ transporter.requestsCache.clear(),
3962
+ transporter.responsesCache.clear(),
3963
+ ]).then(() => undefined);
3964
+ },
3965
+ /**
3966
+ * Get the value of the `algoliaAgent`, used by our libraries internally and telemetry system.
3967
+ */
3968
+ get _ua() {
3969
+ return transporter.algoliaAgent.value;
3970
+ },
3971
+ /**
3972
+ * Adds a `segment` to the `x-algolia-agent` sent with every requests.
3973
+ *
3974
+ * @param segment - The algolia agent (user-agent) segment to add.
3975
+ * @param version - The version of the agent.
3976
+ */
3977
+ addAlgoliaAgent(segment, version) {
3978
+ transporter.algoliaAgent.add({ segment, version });
3979
+ },
3980
+ /**
3981
+ * This method allow you to send requests to the Algolia REST API.
3982
+ *
3983
+ * @param customDelete - The customDelete object.
3984
+ * @param customDelete.path - Path of the endpoint, anything after \"/1\" must be specified.
3985
+ * @param customDelete.parameters - Query parameters to apply to the current query.
3986
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3987
+ */
3988
+ customDelete({ path, parameters }, requestOptions) {
3989
+ if (!path) {
3990
+ throw new Error('Parameter `path` is required when calling `customDelete`.');
3991
+ }
3992
+ const requestPath = '/{path}'.replace('{path}', path);
3993
+ const headers = {};
3994
+ const queryParameters = parameters ? parameters : {};
3995
+ const request = {
3996
+ method: 'DELETE',
3997
+ path: requestPath,
3998
+ queryParameters,
3999
+ headers,
4000
+ };
4001
+ return transporter.request(request, requestOptions);
4002
+ },
4003
+ /**
4004
+ * This method allow you to send requests to the Algolia REST API.
4005
+ *
4006
+ * @param customGet - The customGet object.
4007
+ * @param customGet.path - Path of the endpoint, anything after \"/1\" must be specified.
4008
+ * @param customGet.parameters - Query parameters to apply to the current query.
4009
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4010
+ */
4011
+ customGet({ path, parameters }, requestOptions) {
4012
+ if (!path) {
4013
+ throw new Error('Parameter `path` is required when calling `customGet`.');
4014
+ }
4015
+ const requestPath = '/{path}'.replace('{path}', path);
4016
+ const headers = {};
4017
+ const queryParameters = parameters ? parameters : {};
4018
+ const request = {
4019
+ method: 'GET',
4020
+ path: requestPath,
4021
+ queryParameters,
4022
+ headers,
4023
+ };
4024
+ return transporter.request(request, requestOptions);
4025
+ },
4026
+ /**
4027
+ * This method allow you to send requests to the Algolia REST API.
4028
+ *
4029
+ * @param customPost - The customPost object.
4030
+ * @param customPost.path - Path of the endpoint, anything after \"/1\" must be specified.
4031
+ * @param customPost.parameters - Query parameters to apply to the current query.
4032
+ * @param customPost.body - Parameters to send with the custom request.
4033
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4034
+ */
4035
+ customPost({ path, parameters, body }, requestOptions) {
4036
+ if (!path) {
4037
+ throw new Error('Parameter `path` is required when calling `customPost`.');
4038
+ }
4039
+ const requestPath = '/{path}'.replace('{path}', path);
4040
+ const headers = {};
4041
+ const queryParameters = parameters ? parameters : {};
4042
+ const request = {
4043
+ method: 'POST',
4044
+ path: requestPath,
4045
+ queryParameters,
4046
+ headers,
4047
+ data: body ? body : {},
4048
+ };
4049
+ return transporter.request(request, requestOptions);
4050
+ },
4051
+ /**
4052
+ * This method allow you to send requests to the Algolia REST API.
4053
+ *
4054
+ * @param customPut - The customPut object.
4055
+ * @param customPut.path - Path of the endpoint, anything after \"/1\" must be specified.
4056
+ * @param customPut.parameters - Query parameters to apply to the current query.
4057
+ * @param customPut.body - Parameters to send with the custom request.
4058
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4059
+ */
4060
+ customPut({ path, parameters, body }, requestOptions) {
4061
+ if (!path) {
4062
+ throw new Error('Parameter `path` is required when calling `customPut`.');
4063
+ }
4064
+ const requestPath = '/{path}'.replace('{path}', path);
4065
+ const headers = {};
4066
+ const queryParameters = parameters ? parameters : {};
4067
+ const request = {
4068
+ method: 'PUT',
4069
+ path: requestPath,
4070
+ queryParameters,
4071
+ headers,
4072
+ data: body ? body : {},
4073
+ };
4074
+ return transporter.request(request, requestOptions);
4075
+ },
4076
+ /**
4077
+ * Deletes a Recommend rule from a recommendation scenario.
4078
+ *
4079
+ * Required API Key ACLs:
4080
+ * - editSettings.
4081
+ *
4082
+ * @param deleteRecommendRule - The deleteRecommendRule object.
4083
+ * @param deleteRecommendRule.indexName - Name of the index on which to perform the operation.
4084
+ * @param deleteRecommendRule.model - [Recommend model](https://www.algolia.com/doc/guides/algolia-recommend/overview/#recommend-models).
4085
+ * @param deleteRecommendRule.objectID - Unique record identifier.
4086
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4087
+ */
4088
+ deleteRecommendRule({ indexName, model, objectID }, requestOptions) {
4089
+ if (!indexName) {
4090
+ throw new Error('Parameter `indexName` is required when calling `deleteRecommendRule`.');
4091
+ }
4092
+ if (!model) {
4093
+ throw new Error('Parameter `model` is required when calling `deleteRecommendRule`.');
4094
+ }
4095
+ if (!objectID) {
4096
+ throw new Error('Parameter `objectID` is required when calling `deleteRecommendRule`.');
4097
+ }
4098
+ const requestPath = '/1/indexes/{indexName}/{model}/recommend/rules/{objectID}'
4099
+ .replace('{indexName}', encodeURIComponent(indexName))
4100
+ .replace('{model}', encodeURIComponent(model))
4101
+ .replace('{objectID}', encodeURIComponent(objectID));
4102
+ const headers = {};
4103
+ const queryParameters = {};
4104
+ const request = {
4105
+ method: 'DELETE',
4106
+ path: requestPath,
4107
+ queryParameters,
4108
+ headers,
4109
+ };
4110
+ return transporter.request(request, requestOptions);
4111
+ },
4112
+ /**
4113
+ * Retrieves a Recommend rule that you previously created in the Algolia dashboard.
4114
+ *
4115
+ * Required API Key ACLs:
4116
+ * - settings.
4117
+ *
4118
+ * @param getRecommendRule - The getRecommendRule object.
4119
+ * @param getRecommendRule.indexName - Name of the index on which to perform the operation.
4120
+ * @param getRecommendRule.model - [Recommend model](https://www.algolia.com/doc/guides/algolia-recommend/overview/#recommend-models).
4121
+ * @param getRecommendRule.objectID - Unique record identifier.
4122
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4123
+ */
4124
+ getRecommendRule({ indexName, model, objectID }, requestOptions) {
4125
+ if (!indexName) {
4126
+ throw new Error('Parameter `indexName` is required when calling `getRecommendRule`.');
4127
+ }
4128
+ if (!model) {
4129
+ throw new Error('Parameter `model` is required when calling `getRecommendRule`.');
4130
+ }
4131
+ if (!objectID) {
4132
+ throw new Error('Parameter `objectID` is required when calling `getRecommendRule`.');
4133
+ }
4134
+ const requestPath = '/1/indexes/{indexName}/{model}/recommend/rules/{objectID}'
4135
+ .replace('{indexName}', encodeURIComponent(indexName))
4136
+ .replace('{model}', encodeURIComponent(model))
4137
+ .replace('{objectID}', encodeURIComponent(objectID));
4138
+ const headers = {};
4139
+ const queryParameters = {};
4140
+ const request = {
4141
+ method: 'GET',
4142
+ path: requestPath,
4143
+ queryParameters,
4144
+ headers,
4145
+ };
4146
+ return transporter.request(request, requestOptions);
4147
+ },
4148
+ /**
4149
+ * Checks the status of a given task. Deleting a Recommend rule is asynchronous. When you delete a rule, a task is created on a queue and completed depending on the load on the server. The API response includes a task ID that you can use to check the status.
4150
+ *
4151
+ * Required API Key ACLs:
4152
+ * - editSettings.
4153
+ *
4154
+ * @param getRecommendStatus - The getRecommendStatus object.
4155
+ * @param getRecommendStatus.indexName - Name of the index on which to perform the operation.
4156
+ * @param getRecommendStatus.model - [Recommend model](https://www.algolia.com/doc/guides/algolia-recommend/overview/#recommend-models).
4157
+ * @param getRecommendStatus.taskID - Unique task identifier.
4158
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4159
+ */
4160
+ getRecommendStatus({ indexName, model, taskID }, requestOptions) {
4161
+ if (!indexName) {
4162
+ throw new Error('Parameter `indexName` is required when calling `getRecommendStatus`.');
4163
+ }
4164
+ if (!model) {
4165
+ throw new Error('Parameter `model` is required when calling `getRecommendStatus`.');
4166
+ }
4167
+ if (!taskID) {
4168
+ throw new Error('Parameter `taskID` is required when calling `getRecommendStatus`.');
4169
+ }
4170
+ const requestPath = '/1/indexes/{indexName}/{model}/task/{taskID}'
4171
+ .replace('{indexName}', encodeURIComponent(indexName))
4172
+ .replace('{model}', encodeURIComponent(model))
4173
+ .replace('{taskID}', encodeURIComponent(taskID));
4174
+ const headers = {};
4175
+ const queryParameters = {};
4176
+ const request = {
4177
+ method: 'GET',
4178
+ path: requestPath,
4179
+ queryParameters,
4180
+ headers,
4181
+ };
4182
+ return transporter.request(request, requestOptions);
4183
+ },
4184
+ /**
4185
+ * Retrieves recommendations from selected AI models.
4186
+ *
4187
+ * Required API Key ACLs:
4188
+ * - search.
4189
+ *
4190
+ * @param getRecommendationsParams - The getRecommendationsParams object.
4191
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4192
+ */
4193
+ getRecommendations(getRecommendationsParams, requestOptions) {
4194
+ if (getRecommendationsParams && Array.isArray(getRecommendationsParams)) {
4195
+ const newSignatureRequest = {
4196
+ requests: getRecommendationsParams,
4197
+ };
4198
+ // eslint-disable-next-line no-param-reassign
4199
+ getRecommendationsParams = newSignatureRequest;
4200
+ }
4201
+ if (!getRecommendationsParams) {
4202
+ throw new Error('Parameter `getRecommendationsParams` is required when calling `getRecommendations`.');
4203
+ }
4204
+ if (!getRecommendationsParams.requests) {
4205
+ throw new Error('Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.');
4206
+ }
4207
+ const requestPath = '/1/indexes/*/recommendations';
4208
+ const headers = {};
4209
+ const queryParameters = {};
4210
+ const request = {
4211
+ method: 'POST',
4212
+ path: requestPath,
4213
+ queryParameters,
4214
+ headers,
4215
+ data: getRecommendationsParams,
4216
+ useReadTransporter: true,
4217
+ cacheable: true,
4218
+ };
4219
+ return transporter.request(request, requestOptions);
4220
+ },
4221
+ /**
4222
+ * Searches for Recommend rules. Use an empty query to list all rules for this recommendation scenario.
4223
+ *
4224
+ * Required API Key ACLs:
4225
+ * - settings.
4226
+ *
4227
+ * @param searchRecommendRules - The searchRecommendRules object.
4228
+ * @param searchRecommendRules.indexName - Name of the index on which to perform the operation.
4229
+ * @param searchRecommendRules.model - [Recommend model](https://www.algolia.com/doc/guides/algolia-recommend/overview/#recommend-models).
4230
+ * @param searchRecommendRules.searchRecommendRulesParams - The searchRecommendRulesParams object.
4231
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4232
+ */
4233
+ searchRecommendRules({ indexName, model, searchRecommendRulesParams, }, requestOptions) {
4234
+ if (!indexName) {
4235
+ throw new Error('Parameter `indexName` is required when calling `searchRecommendRules`.');
4236
+ }
4237
+ if (!model) {
4238
+ throw new Error('Parameter `model` is required when calling `searchRecommendRules`.');
4239
+ }
4240
+ const requestPath = '/1/indexes/{indexName}/{model}/recommend/rules/search'
4241
+ .replace('{indexName}', encodeURIComponent(indexName))
4242
+ .replace('{model}', encodeURIComponent(model));
4243
+ const headers = {};
4244
+ const queryParameters = {};
4245
+ const request = {
4246
+ method: 'POST',
4247
+ path: requestPath,
4248
+ queryParameters,
4249
+ headers,
4250
+ data: searchRecommendRulesParams ? searchRecommendRulesParams : {},
4251
+ useReadTransporter: true,
4252
+ cacheable: true,
4253
+ };
4254
+ return transporter.request(request, requestOptions);
4255
+ },
4256
+ };
4257
+ }
4258
+
4259
+ // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
4260
+ const apiClientVersion = apiClientVersion$2;
3852
4261
  // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
3853
4262
  function algoliasearch(appId, apiKey, options) {
3854
4263
  if (!appId || typeof appId !== 'string') {
@@ -3872,6 +4281,13 @@ function algoliasearch(appId, apiKey, options) {
3872
4281
  hostsCache: clientCommon.createMemoryCache(),
3873
4282
  ...options,
3874
4283
  };
4284
+ function initRecommend(initOptions = {}) {
4285
+ return createRecommendClient({
4286
+ ...commonOptions,
4287
+ ...initOptions.options,
4288
+ ...initOptions,
4289
+ });
4290
+ }
3875
4291
  function initAnalytics(initOptions = {}) {
3876
4292
  if (initOptions.region &&
3877
4293
  (typeof initOptions.region !== 'string' ||
@@ -3917,9 +4333,10 @@ function algoliasearch(appId, apiKey, options) {
3917
4333
  get _ua() {
3918
4334
  return this.transporter.algoliaAgent.value;
3919
4335
  },
4336
+ initAbtesting,
3920
4337
  initAnalytics,
3921
4338
  initPersonalization,
3922
- initAbtesting,
4339
+ initRecommend,
3923
4340
  /**
3924
4341
  * Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
3925
4342
  *
@@ -3929,7 +4346,23 @@ function algoliasearch(appId, apiKey, options) {
3929
4346
  * @param generateSecuredApiKey.restrictions - A set of properties defining the restrictions of the secured API key.
3930
4347
  */
3931
4348
  generateSecuredApiKey({ parentApiKey, restrictions = {}, }) {
3932
- const queryParameters = clientCommon.serializeQueryParameters(restrictions);
4349
+ let mergedRestrictions = restrictions;
4350
+ if (restrictions.searchParams) {
4351
+ // merge searchParams with the root restrictions
4352
+ mergedRestrictions = {
4353
+ ...restrictions,
4354
+ ...restrictions.searchParams,
4355
+ };
4356
+ delete mergedRestrictions.searchParams;
4357
+ }
4358
+ mergedRestrictions = Object.keys(mergedRestrictions)
4359
+ .sort()
4360
+ .reduce((acc, key) => {
4361
+ // eslint-disable-next-line no-param-reassign
4362
+ acc[key] = mergedRestrictions[key];
4363
+ return acc;
4364
+ }, {});
4365
+ const queryParameters = clientCommon.serializeQueryParameters(mergedRestrictions);
3933
4366
  return Buffer.from(crypto.createHmac('sha256', parentApiKey)
3934
4367
  .update(queryParameters)
3935
4368
  .digest('hex') + queryParameters).toString('base64');