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
@@ -3,9 +3,9 @@ import { createAuth, createTransporter, getAlgoliaAgent, createIterablePromise,
3
3
  import { createHttpRequester } from '@algolia/requester-node-http';
4
4
 
5
5
  // 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.
6
- const apiClientVersion$4 = '5.0.0-beta.4';
6
+ const apiClientVersion$5 = '5.0.0-beta.6';
7
7
  const REGIONS$2 = ['de', 'us'];
8
- function getDefaultHosts$3(region) {
8
+ function getDefaultHosts$4(region) {
9
9
  const url = !region
10
10
  ? 'analytics.algolia.com'
11
11
  : 'analytics.{region}.algolia.com'.replace('{region}', region);
@@ -15,12 +15,12 @@ function getDefaultHosts$3(region) {
15
15
  function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, region: regionOption, ...options }) {
16
16
  const auth = createAuth(appIdOption, apiKeyOption, authMode);
17
17
  const transporter = createTransporter({
18
- hosts: getDefaultHosts$3(regionOption),
18
+ hosts: getDefaultHosts$4(regionOption),
19
19
  ...options,
20
20
  algoliaAgent: getAlgoliaAgent({
21
21
  algoliaAgents,
22
22
  client: 'Abtesting',
23
- version: apiClientVersion$4,
23
+ version: apiClientVersion$5,
24
24
  }),
25
25
  baseHeaders: {
26
26
  'content-type': 'text/plain',
@@ -308,9 +308,9 @@ function createAbtestingClient({ appId: appIdOption, apiKey: apiKeyOption, authM
308
308
  }
309
309
 
310
310
  // 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.
311
- const apiClientVersion$3 = '5.0.0-beta.4';
311
+ const apiClientVersion$4 = '5.0.0-beta.6';
312
312
  const REGIONS$1 = ['de', 'us'];
313
- function getDefaultHosts$2(region) {
313
+ function getDefaultHosts$3(region) {
314
314
  const url = !region
315
315
  ? 'analytics.algolia.com'
316
316
  : 'analytics.{region}.algolia.com'.replace('{region}', region);
@@ -320,12 +320,12 @@ function getDefaultHosts$2(region) {
320
320
  function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, region: regionOption, ...options }) {
321
321
  const auth = createAuth(appIdOption, apiKeyOption, authMode);
322
322
  const transporter = createTransporter({
323
- hosts: getDefaultHosts$2(regionOption),
323
+ hosts: getDefaultHosts$3(regionOption),
324
324
  ...options,
325
325
  algoliaAgent: getAlgoliaAgent({
326
326
  algoliaAgents,
327
327
  client: 'Analytics',
328
- version: apiClientVersion$3,
328
+ version: apiClientVersion$4,
329
329
  }),
330
330
  baseHeaders: {
331
331
  'content-type': 'text/plain',
@@ -1363,9 +1363,9 @@ function createAnalyticsClient({ appId: appIdOption, apiKey: apiKeyOption, authM
1363
1363
  }
1364
1364
 
1365
1365
  // 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.
1366
- const apiClientVersion$2 = '5.0.0-beta.4';
1366
+ const apiClientVersion$3 = '5.0.0-beta.6';
1367
1367
  const REGIONS = ['eu', 'us'];
1368
- function getDefaultHosts$1(region) {
1368
+ function getDefaultHosts$2(region) {
1369
1369
  const url = 'personalization.{region}.algolia.com'.replace('{region}', region);
1370
1370
  return [{ url, accept: 'readWrite', protocol: 'https' }];
1371
1371
  }
@@ -1373,12 +1373,12 @@ function getDefaultHosts$1(region) {
1373
1373
  function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, region: regionOption, ...options }) {
1374
1374
  const auth = createAuth(appIdOption, apiKeyOption, authMode);
1375
1375
  const transporter = createTransporter({
1376
- hosts: getDefaultHosts$1(regionOption),
1376
+ hosts: getDefaultHosts$2(regionOption),
1377
1377
  ...options,
1378
1378
  algoliaAgent: getAlgoliaAgent({
1379
1379
  algoliaAgents,
1380
1380
  client: 'Personalization',
1381
- version: apiClientVersion$2,
1381
+ version: apiClientVersion$3,
1382
1382
  }),
1383
1383
  baseHeaders: {
1384
1384
  'content-type': 'text/plain',
@@ -1624,8 +1624,8 @@ function createPersonalizationClient({ appId: appIdOption, apiKey: apiKeyOption,
1624
1624
  }
1625
1625
 
1626
1626
  // 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.
1627
- const apiClientVersion$1 = '5.0.0-beta.4';
1628
- function getDefaultHosts(appId) {
1627
+ const apiClientVersion$2 = '5.0.0-beta.6';
1628
+ function getDefaultHosts$1(appId) {
1629
1629
  return [
1630
1630
  {
1631
1631
  url: `${appId}-dsn.algolia.net`,
@@ -1659,12 +1659,12 @@ function getDefaultHosts(appId) {
1659
1659
  function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, ...options }) {
1660
1660
  const auth = createAuth(appIdOption, apiKeyOption, authMode);
1661
1661
  const transporter = createTransporter({
1662
- hosts: getDefaultHosts(appIdOption),
1662
+ hosts: getDefaultHosts$1(appIdOption),
1663
1663
  ...options,
1664
1664
  algoliaAgent: getAlgoliaAgent({
1665
1665
  algoliaAgents,
1666
1666
  client: 'Search',
1667
- version: apiClientVersion$1,
1667
+ version: apiClientVersion$2,
1668
1668
  }),
1669
1669
  baseHeaders: {
1670
1670
  'content-type': 'text/plain',
@@ -1949,6 +1949,53 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
1949
1949
  }
1950
1950
  return responses;
1951
1951
  },
1952
+ /**
1953
+ * 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.
1954
+ *
1955
+ * @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.
1956
+ * @param saveObjects - The `saveObjects` object.
1957
+ * @param saveObjects.indexName - The `indexName` to save `objects` in.
1958
+ * @param saveObjects.objects - The array of `objects` to store in the given Algolia `indexName`.
1959
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `batch` method and merged with the transporter requestOptions.
1960
+ */
1961
+ async saveObjects({ indexName, objects }, requestOptions) {
1962
+ return await this.chunkedBatch({ indexName, objects, action: 'addObject' }, requestOptions);
1963
+ },
1964
+ /**
1965
+ * 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.
1966
+ *
1967
+ * @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.
1968
+ * @param deleteObjects - The `deleteObjects` object.
1969
+ * @param deleteObjects.indexName - The `indexName` to delete `objectIDs` from.
1970
+ * @param deleteObjects.objectIDs - The objectIDs to delete.
1971
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `batch` method and merged with the transporter requestOptions.
1972
+ */
1973
+ async deleteObjects({ indexName, objectIDs }, requestOptions) {
1974
+ return await this.chunkedBatch({
1975
+ indexName,
1976
+ objects: objectIDs.map((objectID) => ({ objectID })),
1977
+ action: 'deleteObject',
1978
+ }, requestOptions);
1979
+ },
1980
+ /**
1981
+ * 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.
1982
+ *
1983
+ * @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.
1984
+ * @param partialUpdateObjects - The `partialUpdateObjects` object.
1985
+ * @param partialUpdateObjects.indexName - The `indexName` to update `objects` in.
1986
+ * @param partialUpdateObjects.objects - The array of `objects` to update in the given Algolia `indexName`.
1987
+ * @param partialUpdateObjects.createIfNotExists - To be provided if non-existing objects are passed, otherwise, the call will fail..
1988
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
1989
+ */
1990
+ async partialUpdateObjects({ indexName, objects, createIfNotExists }, requestOptions) {
1991
+ return await this.chunkedBatch({
1992
+ indexName,
1993
+ objects,
1994
+ action: createIfNotExists
1995
+ ? 'partialUpdateObject'
1996
+ : 'partialUpdateObjectNoCreate',
1997
+ }, requestOptions);
1998
+ },
1952
1999
  /**
1953
2000
  * 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.
1954
2001
  * See https://api-clients-automation.netlify.app/docs/contributing/add-new-api-client#5-helpers for implementation details.
@@ -1958,10 +2005,10 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
1958
2005
  * @param replaceAllObjects.indexName - The `indexName` to replace `objects` in.
1959
2006
  * @param replaceAllObjects.objects - The array of `objects` to store in the given Algolia `indexName`.
1960
2007
  * @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.
1961
- * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
2008
+ * @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.
1962
2009
  */
1963
2010
  async replaceAllObjects({ indexName, objects, batchSize }, requestOptions) {
1964
- const randomSuffix = Math.random().toString(36).substring(7);
2011
+ const randomSuffix = Math.floor(Math.random() * 1000000) + 100000;
1965
2012
  const tmpIndexName = `${indexName}_tmp_${randomSuffix}`;
1966
2013
  let copyOperationResponse = await this.operationIndex({
1967
2014
  indexName,
@@ -3846,7 +3893,369 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
3846
3893
  }
3847
3894
 
3848
3895
  // 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.
3849
- const apiClientVersion = apiClientVersion$1;
3896
+ const apiClientVersion$1 = '5.0.0-beta.6';
3897
+ function getDefaultHosts(appId) {
3898
+ return [
3899
+ {
3900
+ url: `${appId}-dsn.algolia.net`,
3901
+ accept: 'read',
3902
+ protocol: 'https',
3903
+ },
3904
+ {
3905
+ url: `${appId}.algolia.net`,
3906
+ accept: 'write',
3907
+ protocol: 'https',
3908
+ },
3909
+ ].concat(shuffle([
3910
+ {
3911
+ url: `${appId}-1.algolianet.com`,
3912
+ accept: 'readWrite',
3913
+ protocol: 'https',
3914
+ },
3915
+ {
3916
+ url: `${appId}-2.algolianet.com`,
3917
+ accept: 'readWrite',
3918
+ protocol: 'https',
3919
+ },
3920
+ {
3921
+ url: `${appId}-3.algolianet.com`,
3922
+ accept: 'readWrite',
3923
+ protocol: 'https',
3924
+ },
3925
+ ]));
3926
+ }
3927
+ // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
3928
+ function createRecommendClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, ...options }) {
3929
+ const auth = createAuth(appIdOption, apiKeyOption, authMode);
3930
+ const transporter = createTransporter({
3931
+ hosts: getDefaultHosts(appIdOption),
3932
+ ...options,
3933
+ algoliaAgent: getAlgoliaAgent({
3934
+ algoliaAgents,
3935
+ client: 'Recommend',
3936
+ version: apiClientVersion$1,
3937
+ }),
3938
+ baseHeaders: {
3939
+ 'content-type': 'text/plain',
3940
+ ...auth.headers(),
3941
+ ...options.baseHeaders,
3942
+ },
3943
+ baseQueryParameters: {
3944
+ ...auth.queryParameters(),
3945
+ ...options.baseQueryParameters,
3946
+ },
3947
+ });
3948
+ return {
3949
+ transporter,
3950
+ /**
3951
+ * The `appId` currently in use.
3952
+ */
3953
+ appId: appIdOption,
3954
+ /**
3955
+ * Clears the cache of the transporter for the `requestsCache` and `responsesCache` properties.
3956
+ */
3957
+ clearCache() {
3958
+ return Promise.all([
3959
+ transporter.requestsCache.clear(),
3960
+ transporter.responsesCache.clear(),
3961
+ ]).then(() => undefined);
3962
+ },
3963
+ /**
3964
+ * Get the value of the `algoliaAgent`, used by our libraries internally and telemetry system.
3965
+ */
3966
+ get _ua() {
3967
+ return transporter.algoliaAgent.value;
3968
+ },
3969
+ /**
3970
+ * Adds a `segment` to the `x-algolia-agent` sent with every requests.
3971
+ *
3972
+ * @param segment - The algolia agent (user-agent) segment to add.
3973
+ * @param version - The version of the agent.
3974
+ */
3975
+ addAlgoliaAgent(segment, version) {
3976
+ transporter.algoliaAgent.add({ segment, version });
3977
+ },
3978
+ /**
3979
+ * This method allow you to send requests to the Algolia REST API.
3980
+ *
3981
+ * @param customDelete - The customDelete object.
3982
+ * @param customDelete.path - Path of the endpoint, anything after \"/1\" must be specified.
3983
+ * @param customDelete.parameters - Query parameters to apply to the current query.
3984
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3985
+ */
3986
+ customDelete({ path, parameters }, requestOptions) {
3987
+ if (!path) {
3988
+ throw new Error('Parameter `path` is required when calling `customDelete`.');
3989
+ }
3990
+ const requestPath = '/{path}'.replace('{path}', path);
3991
+ const headers = {};
3992
+ const queryParameters = parameters ? parameters : {};
3993
+ const request = {
3994
+ method: 'DELETE',
3995
+ path: requestPath,
3996
+ queryParameters,
3997
+ headers,
3998
+ };
3999
+ return transporter.request(request, requestOptions);
4000
+ },
4001
+ /**
4002
+ * This method allow you to send requests to the Algolia REST API.
4003
+ *
4004
+ * @param customGet - The customGet object.
4005
+ * @param customGet.path - Path of the endpoint, anything after \"/1\" must be specified.
4006
+ * @param customGet.parameters - Query parameters to apply to the current query.
4007
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4008
+ */
4009
+ customGet({ path, parameters }, requestOptions) {
4010
+ if (!path) {
4011
+ throw new Error('Parameter `path` is required when calling `customGet`.');
4012
+ }
4013
+ const requestPath = '/{path}'.replace('{path}', path);
4014
+ const headers = {};
4015
+ const queryParameters = parameters ? parameters : {};
4016
+ const request = {
4017
+ method: 'GET',
4018
+ path: requestPath,
4019
+ queryParameters,
4020
+ headers,
4021
+ };
4022
+ return transporter.request(request, requestOptions);
4023
+ },
4024
+ /**
4025
+ * This method allow you to send requests to the Algolia REST API.
4026
+ *
4027
+ * @param customPost - The customPost object.
4028
+ * @param customPost.path - Path of the endpoint, anything after \"/1\" must be specified.
4029
+ * @param customPost.parameters - Query parameters to apply to the current query.
4030
+ * @param customPost.body - Parameters to send with the custom request.
4031
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4032
+ */
4033
+ customPost({ path, parameters, body }, requestOptions) {
4034
+ if (!path) {
4035
+ throw new Error('Parameter `path` is required when calling `customPost`.');
4036
+ }
4037
+ const requestPath = '/{path}'.replace('{path}', path);
4038
+ const headers = {};
4039
+ const queryParameters = parameters ? parameters : {};
4040
+ const request = {
4041
+ method: 'POST',
4042
+ path: requestPath,
4043
+ queryParameters,
4044
+ headers,
4045
+ data: body ? body : {},
4046
+ };
4047
+ return transporter.request(request, requestOptions);
4048
+ },
4049
+ /**
4050
+ * This method allow you to send requests to the Algolia REST API.
4051
+ *
4052
+ * @param customPut - The customPut object.
4053
+ * @param customPut.path - Path of the endpoint, anything after \"/1\" must be specified.
4054
+ * @param customPut.parameters - Query parameters to apply to the current query.
4055
+ * @param customPut.body - Parameters to send with the custom request.
4056
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4057
+ */
4058
+ customPut({ path, parameters, body }, requestOptions) {
4059
+ if (!path) {
4060
+ throw new Error('Parameter `path` is required when calling `customPut`.');
4061
+ }
4062
+ const requestPath = '/{path}'.replace('{path}', path);
4063
+ const headers = {};
4064
+ const queryParameters = parameters ? parameters : {};
4065
+ const request = {
4066
+ method: 'PUT',
4067
+ path: requestPath,
4068
+ queryParameters,
4069
+ headers,
4070
+ data: body ? body : {},
4071
+ };
4072
+ return transporter.request(request, requestOptions);
4073
+ },
4074
+ /**
4075
+ * Deletes a Recommend rule from a recommendation scenario.
4076
+ *
4077
+ * Required API Key ACLs:
4078
+ * - editSettings.
4079
+ *
4080
+ * @param deleteRecommendRule - The deleteRecommendRule object.
4081
+ * @param deleteRecommendRule.indexName - Name of the index on which to perform the operation.
4082
+ * @param deleteRecommendRule.model - [Recommend model](https://www.algolia.com/doc/guides/algolia-recommend/overview/#recommend-models).
4083
+ * @param deleteRecommendRule.objectID - Unique record identifier.
4084
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4085
+ */
4086
+ deleteRecommendRule({ indexName, model, objectID }, requestOptions) {
4087
+ if (!indexName) {
4088
+ throw new Error('Parameter `indexName` is required when calling `deleteRecommendRule`.');
4089
+ }
4090
+ if (!model) {
4091
+ throw new Error('Parameter `model` is required when calling `deleteRecommendRule`.');
4092
+ }
4093
+ if (!objectID) {
4094
+ throw new Error('Parameter `objectID` is required when calling `deleteRecommendRule`.');
4095
+ }
4096
+ const requestPath = '/1/indexes/{indexName}/{model}/recommend/rules/{objectID}'
4097
+ .replace('{indexName}', encodeURIComponent(indexName))
4098
+ .replace('{model}', encodeURIComponent(model))
4099
+ .replace('{objectID}', encodeURIComponent(objectID));
4100
+ const headers = {};
4101
+ const queryParameters = {};
4102
+ const request = {
4103
+ method: 'DELETE',
4104
+ path: requestPath,
4105
+ queryParameters,
4106
+ headers,
4107
+ };
4108
+ return transporter.request(request, requestOptions);
4109
+ },
4110
+ /**
4111
+ * Retrieves a Recommend rule that you previously created in the Algolia dashboard.
4112
+ *
4113
+ * Required API Key ACLs:
4114
+ * - settings.
4115
+ *
4116
+ * @param getRecommendRule - The getRecommendRule object.
4117
+ * @param getRecommendRule.indexName - Name of the index on which to perform the operation.
4118
+ * @param getRecommendRule.model - [Recommend model](https://www.algolia.com/doc/guides/algolia-recommend/overview/#recommend-models).
4119
+ * @param getRecommendRule.objectID - Unique record identifier.
4120
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4121
+ */
4122
+ getRecommendRule({ indexName, model, objectID }, requestOptions) {
4123
+ if (!indexName) {
4124
+ throw new Error('Parameter `indexName` is required when calling `getRecommendRule`.');
4125
+ }
4126
+ if (!model) {
4127
+ throw new Error('Parameter `model` is required when calling `getRecommendRule`.');
4128
+ }
4129
+ if (!objectID) {
4130
+ throw new Error('Parameter `objectID` is required when calling `getRecommendRule`.');
4131
+ }
4132
+ const requestPath = '/1/indexes/{indexName}/{model}/recommend/rules/{objectID}'
4133
+ .replace('{indexName}', encodeURIComponent(indexName))
4134
+ .replace('{model}', encodeURIComponent(model))
4135
+ .replace('{objectID}', encodeURIComponent(objectID));
4136
+ const headers = {};
4137
+ const queryParameters = {};
4138
+ const request = {
4139
+ method: 'GET',
4140
+ path: requestPath,
4141
+ queryParameters,
4142
+ headers,
4143
+ };
4144
+ return transporter.request(request, requestOptions);
4145
+ },
4146
+ /**
4147
+ * 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.
4148
+ *
4149
+ * Required API Key ACLs:
4150
+ * - editSettings.
4151
+ *
4152
+ * @param getRecommendStatus - The getRecommendStatus object.
4153
+ * @param getRecommendStatus.indexName - Name of the index on which to perform the operation.
4154
+ * @param getRecommendStatus.model - [Recommend model](https://www.algolia.com/doc/guides/algolia-recommend/overview/#recommend-models).
4155
+ * @param getRecommendStatus.taskID - Unique task identifier.
4156
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4157
+ */
4158
+ getRecommendStatus({ indexName, model, taskID }, requestOptions) {
4159
+ if (!indexName) {
4160
+ throw new Error('Parameter `indexName` is required when calling `getRecommendStatus`.');
4161
+ }
4162
+ if (!model) {
4163
+ throw new Error('Parameter `model` is required when calling `getRecommendStatus`.');
4164
+ }
4165
+ if (!taskID) {
4166
+ throw new Error('Parameter `taskID` is required when calling `getRecommendStatus`.');
4167
+ }
4168
+ const requestPath = '/1/indexes/{indexName}/{model}/task/{taskID}'
4169
+ .replace('{indexName}', encodeURIComponent(indexName))
4170
+ .replace('{model}', encodeURIComponent(model))
4171
+ .replace('{taskID}', encodeURIComponent(taskID));
4172
+ const headers = {};
4173
+ const queryParameters = {};
4174
+ const request = {
4175
+ method: 'GET',
4176
+ path: requestPath,
4177
+ queryParameters,
4178
+ headers,
4179
+ };
4180
+ return transporter.request(request, requestOptions);
4181
+ },
4182
+ /**
4183
+ * Retrieves recommendations from selected AI models.
4184
+ *
4185
+ * Required API Key ACLs:
4186
+ * - search.
4187
+ *
4188
+ * @param getRecommendationsParams - The getRecommendationsParams object.
4189
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4190
+ */
4191
+ getRecommendations(getRecommendationsParams, requestOptions) {
4192
+ if (getRecommendationsParams && Array.isArray(getRecommendationsParams)) {
4193
+ const newSignatureRequest = {
4194
+ requests: getRecommendationsParams,
4195
+ };
4196
+ // eslint-disable-next-line no-param-reassign
4197
+ getRecommendationsParams = newSignatureRequest;
4198
+ }
4199
+ if (!getRecommendationsParams) {
4200
+ throw new Error('Parameter `getRecommendationsParams` is required when calling `getRecommendations`.');
4201
+ }
4202
+ if (!getRecommendationsParams.requests) {
4203
+ throw new Error('Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.');
4204
+ }
4205
+ const requestPath = '/1/indexes/*/recommendations';
4206
+ const headers = {};
4207
+ const queryParameters = {};
4208
+ const request = {
4209
+ method: 'POST',
4210
+ path: requestPath,
4211
+ queryParameters,
4212
+ headers,
4213
+ data: getRecommendationsParams,
4214
+ useReadTransporter: true,
4215
+ cacheable: true,
4216
+ };
4217
+ return transporter.request(request, requestOptions);
4218
+ },
4219
+ /**
4220
+ * Searches for Recommend rules. Use an empty query to list all rules for this recommendation scenario.
4221
+ *
4222
+ * Required API Key ACLs:
4223
+ * - settings.
4224
+ *
4225
+ * @param searchRecommendRules - The searchRecommendRules object.
4226
+ * @param searchRecommendRules.indexName - Name of the index on which to perform the operation.
4227
+ * @param searchRecommendRules.model - [Recommend model](https://www.algolia.com/doc/guides/algolia-recommend/overview/#recommend-models).
4228
+ * @param searchRecommendRules.searchRecommendRulesParams - The searchRecommendRulesParams object.
4229
+ * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
4230
+ */
4231
+ searchRecommendRules({ indexName, model, searchRecommendRulesParams, }, requestOptions) {
4232
+ if (!indexName) {
4233
+ throw new Error('Parameter `indexName` is required when calling `searchRecommendRules`.');
4234
+ }
4235
+ if (!model) {
4236
+ throw new Error('Parameter `model` is required when calling `searchRecommendRules`.');
4237
+ }
4238
+ const requestPath = '/1/indexes/{indexName}/{model}/recommend/rules/search'
4239
+ .replace('{indexName}', encodeURIComponent(indexName))
4240
+ .replace('{model}', encodeURIComponent(model));
4241
+ const headers = {};
4242
+ const queryParameters = {};
4243
+ const request = {
4244
+ method: 'POST',
4245
+ path: requestPath,
4246
+ queryParameters,
4247
+ headers,
4248
+ data: searchRecommendRulesParams ? searchRecommendRulesParams : {},
4249
+ useReadTransporter: true,
4250
+ cacheable: true,
4251
+ };
4252
+ return transporter.request(request, requestOptions);
4253
+ },
4254
+ };
4255
+ }
4256
+
4257
+ // 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.
4258
+ const apiClientVersion = apiClientVersion$2;
3850
4259
  // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
3851
4260
  function algoliasearch(appId, apiKey, options) {
3852
4261
  if (!appId || typeof appId !== 'string') {
@@ -3870,6 +4279,13 @@ function algoliasearch(appId, apiKey, options) {
3870
4279
  hostsCache: createMemoryCache(),
3871
4280
  ...options,
3872
4281
  };
4282
+ function initRecommend(initOptions = {}) {
4283
+ return createRecommendClient({
4284
+ ...commonOptions,
4285
+ ...initOptions.options,
4286
+ ...initOptions,
4287
+ });
4288
+ }
3873
4289
  function initAnalytics(initOptions = {}) {
3874
4290
  if (initOptions.region &&
3875
4291
  (typeof initOptions.region !== 'string' ||
@@ -3915,9 +4331,10 @@ function algoliasearch(appId, apiKey, options) {
3915
4331
  get _ua() {
3916
4332
  return this.transporter.algoliaAgent.value;
3917
4333
  },
4334
+ initAbtesting,
3918
4335
  initAnalytics,
3919
4336
  initPersonalization,
3920
- initAbtesting,
4337
+ initRecommend,
3921
4338
  /**
3922
4339
  * Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
3923
4340
  *
@@ -3927,7 +4344,23 @@ function algoliasearch(appId, apiKey, options) {
3927
4344
  * @param generateSecuredApiKey.restrictions - A set of properties defining the restrictions of the secured API key.
3928
4345
  */
3929
4346
  generateSecuredApiKey({ parentApiKey, restrictions = {}, }) {
3930
- const queryParameters = serializeQueryParameters(restrictions);
4347
+ let mergedRestrictions = restrictions;
4348
+ if (restrictions.searchParams) {
4349
+ // merge searchParams with the root restrictions
4350
+ mergedRestrictions = {
4351
+ ...restrictions,
4352
+ ...restrictions.searchParams,
4353
+ };
4354
+ delete mergedRestrictions.searchParams;
4355
+ }
4356
+ mergedRestrictions = Object.keys(mergedRestrictions)
4357
+ .sort()
4358
+ .reduce((acc, key) => {
4359
+ // eslint-disable-next-line no-param-reassign
4360
+ acc[key] = mergedRestrictions[key];
4361
+ return acc;
4362
+ }, {});
4363
+ const queryParameters = serializeQueryParameters(mergedRestrictions);
3931
4364
  return Buffer.from(createHmac('sha256', parentApiKey)
3932
4365
  .update(queryParameters)
3933
4366
  .digest('hex') + queryParameters).toString('base64');