@coveo/quantic 3.28.1 → 3.28.2-pre.04d5730f85

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 (242) hide show
  1. package/force-app/main/default/staticresources/coveoheadless/case-assist/headless.js +10 -8
  2. package/force-app/main/default/staticresources/coveoheadless/definitions/api/analytics/search-analytics.d.ts +5 -3
  3. package/force-app/main/default/staticresources/coveoheadless/definitions/api/api-client-utils.d.ts +1 -1
  4. package/force-app/main/default/staticresources/coveoheadless/definitions/api/commerce/common/request.d.ts +1 -1
  5. package/force-app/main/default/staticresources/coveoheadless/definitions/api/commerce/recommendations/recommendations-request.d.ts +1 -1
  6. package/force-app/main/default/staticresources/coveoheadless/definitions/api/commerce/search/query-suggest/query-suggest-request.d.ts +1 -1
  7. package/force-app/main/default/staticresources/coveoheadless/definitions/api/knowledge/stream-answer-api.d.ts +4 -3
  8. package/force-app/main/default/staticresources/coveoheadless/definitions/api/knowledge/tests/stream-answer-api-state-mock.d.ts +8 -0
  9. package/force-app/main/default/staticresources/coveoheadless/definitions/api/platform-client.d.ts +2 -2
  10. package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/case-assist/get-case-classifications/get-case-classifications-request.d.ts +1 -1
  11. package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/case-assist/get-document-suggestions/get-document-suggestions-request.d.ts +1 -1
  12. package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/insight/get-interface/get-interface-config-request.d.ts +1 -1
  13. package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/insight/query/query-request.d.ts +2 -2
  14. package/force-app/main/default/staticresources/coveoheadless/definitions/api/service/insight/user-actions/user-actions-request.d.ts +1 -1
  15. package/force-app/main/default/staticresources/coveoheadless/definitions/features/commerce/product-listing/product-listing-selectors.d.ts +2 -2
  16. package/force-app/main/default/staticresources/coveoheadless/definitions/features/commerce/search/search-selectors.d.ts +2 -2
  17. package/force-app/main/default/staticresources/coveoheadless/definitions/features/did-you-mean/did-you-mean-selectors.d.ts +1 -1
  18. package/force-app/main/default/staticresources/coveoheadless/definitions/features/error/error-actions.d.ts +16 -0
  19. package/force-app/main/default/staticresources/coveoheadless/definitions/features/generated-answer/generated-answer-selectors.d.ts +1 -2
  20. package/force-app/main/default/staticresources/coveoheadless/definitions/features/insight-search/insight-search-actions-thunk-processor.d.ts +1 -1
  21. package/force-app/main/default/staticresources/coveoheadless/definitions/features/insight-search/insight-search-actions.d.ts +1 -1
  22. package/force-app/main/default/staticresources/coveoheadless/definitions/features/search/legacy/search-actions-thunk-processor.d.ts +1 -1
  23. package/force-app/main/default/staticresources/coveoheadless/definitions/features/search/legacy/search-request.d.ts +1 -1
  24. package/force-app/main/default/staticresources/coveoheadless/definitions/features/search/search-actions-thunk-processor.d.ts +1 -1
  25. package/force-app/main/default/staticresources/coveoheadless/definitions/features/search/search-request.d.ts +1 -1
  26. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controller-utils.d.ts +19 -0
  27. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.d.ts +10 -0
  28. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/cart/headless-cart.ssr.d.ts +15 -0
  29. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/context/headless-context.ssr.d.ts +12 -0
  30. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/did-you-mean/headless-did-you-mean.ssr.d.ts +10 -0
  31. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/filter-suggestions/headless-filter-suggestions-generator.ssr.d.ts +15 -0
  32. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/generator/headless-commerce-facet-generator.ssr.d.ts +66 -0
  33. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/instant-products/headless-instant-products.ssr.d.ts +12 -0
  34. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/pagination/headless-core-commerce-pagination.ssr.d.ts +11 -0
  35. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/parameter-manager/headless-core-parameter-manager.ssr.d.ts +25 -0
  36. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/product-list/headless-product-list.ssr.d.ts +12 -0
  37. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/product-view/headless-product-view.ssr.d.ts +20 -0
  38. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/recent-queries-list/headless-recent-queries-list.ssr.d.ts +13 -0
  39. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/recommendations/headless-recommendations.ssr.d.ts +17 -0
  40. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/search-box/headless-search-box.ssr.d.ts +12 -0
  41. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/sort/headless-core-commerce-sort.ssr.d.ts +11 -0
  42. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/standalone-search-box/headless-standalone-search-box.ssr.d.ts +14 -0
  43. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/summary/headless-core-summary.ssr.d.ts +13 -0
  44. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/triggers/headless-notify-trigger.ssr.d.ts +12 -0
  45. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/triggers/headless-query-trigger.ssr.d.ts +13 -0
  46. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/controllers/triggers/headless-redirection-trigger.ssr.d.ts +12 -0
  47. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/engine/commerce-engine.ssr.d.ts +25 -0
  48. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/factories/build-factory.d.ts +22 -0
  49. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/factories/hydrated-state-factory.d.ts +4 -0
  50. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/factories/recommendation-hydrated-state-factory.d.ts +3 -0
  51. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/factories/recommendation-static-state-factory.d.ts +3 -0
  52. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/factories/static-state-factory.d.ts +4 -0
  53. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/build.d.ts +10 -0
  54. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/controller-constants.d.ts +7 -0
  55. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/controller-definitions.d.ts +220 -0
  56. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/controller-inference.d.ts +24 -0
  57. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/controller-scopes.d.ts +71 -0
  58. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/engine.d.ts +75 -0
  59. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/fetch-static-state.d.ts +17 -0
  60. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/from-build-result.d.ts +19 -0
  61. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/hydrate-static-state.d.ts +20 -0
  62. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/types/kind.d.ts +9 -0
  63. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/commerce/utils/recommendation-filter.d.ts +11 -0
  64. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/augment-preprocess-request.d.ts +9 -0
  65. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/controller-utils.d.ts +16 -0
  66. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/errors.d.ts +9 -0
  67. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/build.d.ts +9 -0
  68. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/controllers.d.ts +37 -0
  69. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/engine.d.ts +60 -0
  70. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/fetch-static-state.d.ts +17 -0
  71. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/from-build-result.d.ts +8 -0
  72. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/hydrate-static-state.d.ts +21 -0
  73. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/inference.d.ts +19 -0
  74. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/common/types/utilities.d.ts +14 -0
  75. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/breadcrumb-manager/headless-breadcrumb-manager.ssr.d.ts +13 -0
  76. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/context/headless-context.ssr.d.ts +14 -0
  77. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/dictionary-field-context/headless-dictionary-field-context.ssr.d.ts +13 -0
  78. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/did-you-mean/headless-did-you-mean.ssr.d.ts +13 -0
  79. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/facet-manager/headless-facet-manager.ssr.d.ts +13 -0
  80. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/facets/automatic-facet-generator/headless-automatic-facet-generator.ssr.d.ts +14 -0
  81. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/facets/category-facet/headless-category-facet.ssr.d.ts +14 -0
  82. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/facets/facet/headless-facet.ssr.d.ts +14 -0
  83. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/facets/range-facet/date-facet/headless-date-facet.ssr.d.ts +15 -0
  84. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/facets/range-facet/date-facet/headless-date-filter.ssr.d.ts +14 -0
  85. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/facets/range-facet/numeric-facet/headless-numeric-facet.ssr.d.ts +15 -0
  86. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/facets/range-facet/numeric-facet/headless-numeric-filter.ssr.d.ts +14 -0
  87. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/field-suggestions/category-facet/headless-category-field-suggestions.ssr.d.ts +14 -0
  88. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/field-suggestions/facet/headless-field-suggestions.ssr.d.ts +14 -0
  89. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/folded-result-list/headless-folded-result-list.ssr.d.ts +14 -0
  90. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/history-manager/headless-history-manager.ssr.d.ts +13 -0
  91. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/instant-results/instant-results.ssr.d.ts +14 -0
  92. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/pager/headless-pager.ssr.d.ts +14 -0
  93. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/query-error/headless-query-error.ssr.d.ts +13 -0
  94. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/query-summary/headless-query-summary.ssr.d.ts +13 -0
  95. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/quickview/headless-quickview.ssr.d.ts +14 -0
  96. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/recent-queries-list/headless-recent-queries-list.ssr.d.ts +14 -0
  97. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/recent-results-list/headless-recent-results-list.ssr.d.ts +14 -0
  98. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/relevance-inspector/headless-relevance-inspector.ssr.d.ts +14 -0
  99. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/result-list/headless-result-list.ssr.d.ts +14 -0
  100. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/results-per-page/headless-results-per-page.ssr.d.ts +14 -0
  101. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/search-box/headless-search-box.ssr.d.ts +14 -0
  102. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/search-parameter-manager/headless-search-parameter-manager.ssr.d.ts +16 -0
  103. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/search-status/headless-search-status.ssr.d.ts +13 -0
  104. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/smart-snippet/headless-smart-snippet.ssr.d.ts +14 -0
  105. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/smart-snippet-questions-list/headless-smart-snippet-questions-list.ssr.d.ts +15 -0
  106. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/sort/headless-sort.ssr.d.ts +14 -0
  107. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/standalone-search-box/headless-standalone-search-box.ssr.d.ts +14 -0
  108. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/static-filter/headless-static-filter.ssr.d.ts +15 -0
  109. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/tab/headless-tab.ssr.d.ts +14 -0
  110. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/tab-manager/headless-tab-manager.ssr.d.ts +13 -0
  111. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/triggers/headless-execute-trigger.ssr.d.ts +13 -0
  112. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/triggers/headless-notify-trigger.ssr.d.ts +13 -0
  113. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/triggers/headless-query-trigger.ssr.d.ts +14 -0
  114. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/triggers/headless-redirection-trigger.ssr.d.ts +13 -0
  115. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/controllers/url-manager/headless-url-manager.ssr.d.ts +16 -0
  116. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr/search/engine/search-engine.ssr.d.ts +35 -0
  117. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-commerce-next.index.d.ts +170 -0
  118. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-commerce.index.d.ts +48 -47
  119. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine/common.d.ts → ssr-next/commerce/controller-utils.d.ts} +5 -2
  120. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce/core → ssr-next/commerce/controllers}/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.d.ts +2 -2
  121. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce/context → ssr-next/commerce/controllers}/cart/headless-cart.ssr.d.ts +3 -4
  122. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/context/headless-context.ssr.d.ts +3 -4
  123. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce/search → ssr-next/commerce/controllers}/did-you-mean/headless-did-you-mean.ssr.d.ts +2 -2
  124. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/filter-suggestions/headless-filter-suggestions-generator.ssr.d.ts +15 -0
  125. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce/core/facets → ssr-next/commerce/controllers}/generator/headless-commerce-facet-generator.ssr.d.ts +13 -12
  126. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/instant-products/headless-instant-products.ssr.d.ts +3 -4
  127. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce/core → ssr-next/commerce/controllers}/pagination/headless-core-commerce-pagination.ssr.d.ts +2 -2
  128. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce/core → ssr-next/commerce/controllers}/parameter-manager/headless-core-parameter-manager.ssr.d.ts +2 -2
  129. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/product-list/headless-product-list.ssr.d.ts +12 -0
  130. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/product-view/headless-product-view.ssr.d.ts +3 -3
  131. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/recent-queries-list/headless-recent-queries-list.ssr.d.ts +3 -4
  132. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/recommendations/headless-recommendations.ssr.d.ts +3 -3
  133. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/search-box/headless-search-box.ssr.d.ts +3 -4
  134. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce/core → ssr-next/commerce/controllers}/sort/headless-core-commerce-sort.ssr.d.ts +2 -2
  135. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/standalone-search-box/headless-standalone-search-box.ssr.d.ts +4 -5
  136. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/controllers/summary/headless-core-summary.ssr.d.ts +13 -0
  137. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/triggers/headless-notify-trigger.ssr.d.ts +3 -4
  138. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/triggers/headless-query-trigger.ssr.d.ts +3 -3
  139. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers/commerce → ssr-next/commerce/controllers}/triggers/headless-redirection-trigger.ssr.d.ts +3 -4
  140. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-engine → ssr-next/commerce/engine}/commerce-engine.ssr.d.ts +6 -5
  141. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/factories/build-factory.d.ts +5 -4
  142. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/factories/hydrated-state-factory.d.ts +2 -2
  143. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/factories/recommendation-hydrated-state-factory.d.ts +1 -1
  144. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/factories/recommendation-static-state-factory.d.ts +1 -1
  145. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/factories/static-state-factory.d.ts +2 -2
  146. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/types/build.d.ts +4 -2
  147. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/controller-constants.d.ts +7 -0
  148. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine/types/common.d.ts → ssr-next/commerce/types/controller-definitions.d.ts} +10 -97
  149. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/controller-inference.d.ts +24 -0
  150. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/commerce/types/controller-scopes.d.ts +71 -0
  151. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine/types/core-engine.d.ts → ssr-next/commerce/types/engine.d.ts} +12 -14
  152. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/types/fetch-static-state.d.ts +4 -2
  153. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/types/from-build-result.d.ts +2 -2
  154. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/types/hydrate-static-state.d.ts +4 -2
  155. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine/factories → ssr-next/commerce}/utils/recommendation-filter.d.ts +2 -2
  156. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/ssr-engine → ssr-next/common}/augment-preprocess-request.d.ts +2 -2
  157. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/ssr-engine/common.d.ts → ssr-next/common/controller-utils.d.ts} +4 -2
  158. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/errors.d.ts +9 -0
  159. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/ssr-engine → ssr-next/common}/types/build.d.ts +4 -2
  160. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/controllers.d.ts +37 -0
  161. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/ssr-engine/types/core-engine.d.ts → ssr-next/common/types/engine.d.ts} +18 -5
  162. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/ssr-engine → ssr-next/common}/types/fetch-static-state.d.ts +4 -2
  163. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/ssr-engine → ssr-next/common}/types/from-build-result.d.ts +3 -2
  164. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/ssr-engine → ssr-next/common}/types/hydrate-static-state.d.ts +6 -2
  165. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/inference.d.ts +19 -0
  166. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/common/types/utilities.d.ts +14 -0
  167. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/breadcrumb-manager/headless-breadcrumb-manager.ssr.d.ts +13 -0
  168. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/context/headless-context.ssr.d.ts +14 -0
  169. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/dictionary-field-context/headless-dictionary-field-context.ssr.d.ts +13 -0
  170. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/did-you-mean/headless-did-you-mean.ssr.d.ts +13 -0
  171. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/facet-manager/headless-facet-manager.ssr.d.ts +13 -0
  172. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/facets/automatic-facet-generator/headless-automatic-facet-generator.ssr.d.ts +4 -4
  173. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/facets/category-facet/headless-category-facet.ssr.d.ts +4 -4
  174. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/facets/facet/headless-facet.ssr.d.ts +4 -4
  175. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/facets/range-facet/date-facet/headless-date-facet.ssr.d.ts +15 -0
  176. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/facets/range-facet/date-facet/headless-date-filter.ssr.d.ts +4 -4
  177. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/facets/range-facet/numeric-facet/headless-numeric-facet.ssr.d.ts +15 -0
  178. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/facets/range-facet/numeric-facet/headless-numeric-filter.ssr.d.ts +4 -4
  179. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/field-suggestions/category-facet/headless-category-field-suggestions.ssr.d.ts +4 -4
  180. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/field-suggestions/facet/headless-field-suggestions.ssr.d.ts +4 -4
  181. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/folded-result-list/headless-folded-result-list.ssr.d.ts +4 -4
  182. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/history-manager/headless-history-manager.ssr.d.ts +13 -0
  183. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/instant-results/instant-results.ssr.d.ts +4 -4
  184. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/pager/headless-pager.ssr.d.ts +4 -4
  185. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/query-error/headless-query-error.ssr.d.ts +13 -0
  186. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/query-summary/headless-query-summary.ssr.d.ts +13 -0
  187. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/quickview/headless-quickview.ssr.d.ts +4 -4
  188. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/recent-queries-list/headless-recent-queries-list.ssr.d.ts +4 -4
  189. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/recent-results-list/headless-recent-results-list.ssr.d.ts +4 -4
  190. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/relevance-inspector/headless-relevance-inspector.ssr.d.ts +4 -4
  191. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/result-list/headless-result-list.ssr.d.ts +4 -4
  192. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/results-per-page/headless-results-per-page.ssr.d.ts +4 -4
  193. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/search-box/headless-search-box.ssr.d.ts +4 -4
  194. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/search-parameter-manager/headless-search-parameter-manager.ssr.d.ts +4 -4
  195. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/search-status/headless-search-status.ssr.d.ts +13 -0
  196. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/smart-snippet/headless-smart-snippet.ssr.d.ts +4 -4
  197. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/smart-snippet-questions-list/headless-smart-snippet-questions-list.ssr.d.ts +15 -0
  198. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/sort/headless-sort.ssr.d.ts +4 -4
  199. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/standalone-search-box/headless-standalone-search-box.ssr.d.ts +4 -4
  200. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/static-filter/headless-static-filter.ssr.d.ts +15 -0
  201. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/tab/headless-tab.ssr.d.ts +4 -4
  202. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/tab-manager/headless-tab-manager.ssr.d.ts +13 -0
  203. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/triggers/headless-execute-trigger.ssr.d.ts +13 -0
  204. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/triggers/headless-notify-trigger.ssr.d.ts +13 -0
  205. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/triggers/headless-query-trigger.ssr.d.ts +14 -0
  206. package/force-app/main/default/staticresources/coveoheadless/definitions/{controllers → ssr-next/search/controllers}/triggers/headless-redirection-trigger.ssr.d.ts +4 -4
  207. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next/search/controllers/url-manager/headless-url-manager.ssr.d.ts +16 -0
  208. package/force-app/main/default/staticresources/coveoheadless/definitions/{app/search-engine → ssr-next/search/engine}/search-engine.ssr.d.ts +5 -5
  209. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr-next.index.d.ts +219 -0
  210. package/force-app/main/default/staticresources/coveoheadless/definitions/ssr.index.d.ts +88 -87
  211. package/force-app/main/default/staticresources/coveoheadless/definitions/test/mock-engine-v2.d.ts +2 -2
  212. package/force-app/main/default/staticresources/coveoheadless/definitions/utils/errors.d.ts +1 -10
  213. package/force-app/main/default/staticresources/coveoheadless/definitions/utils/facet-utils.d.ts +1 -1
  214. package/force-app/main/default/staticresources/coveoheadless/headless.js +12 -10
  215. package/force-app/main/default/staticresources/coveoheadless/insight/headless.js +11 -9
  216. package/force-app/main/default/staticresources/coveoheadless/recommendation/headless.js +9 -7
  217. package/package.json +16 -17
  218. package/docs/out/quantic-docs.json +0 -6431
  219. package/force-app/main/default/staticresources/coveoheadless/definitions/app/ssr-engine/types/common.d.ts +0 -80
  220. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/breadcrumb-manager/headless-breadcrumb-manager.ssr.d.ts +0 -13
  221. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/commerce/core/summary/headless-core-summary.ssr.d.ts +0 -13
  222. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/commerce/filter-suggestions/headless-filter-suggestions-generator.ssr.d.ts +0 -16
  223. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/commerce/product-list/headless-product-list.ssr.d.ts +0 -13
  224. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/context/headless-context.ssr.d.ts +0 -14
  225. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/dictionary-field-context/headless-dictionary-field-context.ssr.d.ts +0 -13
  226. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/did-you-mean/headless-did-you-mean.ssr.d.ts +0 -13
  227. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/facet-manager/headless-facet-manager.ssr.d.ts +0 -13
  228. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/facets/range-facet/date-facet/headless-date-facet.ssr.d.ts +0 -15
  229. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/facets/range-facet/numeric-facet/headless-numeric-facet.ssr.d.ts +0 -15
  230. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/history-manager/headless-history-manager.ssr.d.ts +0 -13
  231. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/query-error/headless-query-error.ssr.d.ts +0 -13
  232. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/query-summary/headless-query-summary.ssr.d.ts +0 -13
  233. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/search-status/headless-search-status.ssr.d.ts +0 -13
  234. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/smart-snippet-questions-list/headless-smart-snippet-questions-list.ssr.d.ts +0 -15
  235. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/static-filter/headless-static-filter.ssr.d.ts +0 -15
  236. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/tab-manager/headless-tab-manager.ssr.d.ts +0 -13
  237. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/triggers/headless-execute-trigger.ssr.d.ts +0 -13
  238. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/triggers/headless-notify-trigger.ssr.d.ts +0 -13
  239. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/triggers/headless-query-trigger.ssr.d.ts +0 -14
  240. package/force-app/main/default/staticresources/coveoheadless/definitions/controllers/url-manager/headless-url-manager.ssr.d.ts +0 -16
  241. package/force-app/main/default/staticresources/coveoheadless/definitions/features/case-context/case-context-slice.spec.d.ts +0 -1
  242. /package/force-app/main/default/staticresources/coveoheadless/definitions/{app/commerce-ssr-engine → ssr-next/commerce}/types/kind.d.ts +0 -0
@@ -0,0 +1,12 @@
1
+ import { type ProductListing, type ProductListingState } from '../../../../controllers/commerce/product-listing/headless-product-listing.js';
2
+ import { type Search } from '../../../../controllers/commerce/search/headless-search.js';
3
+ import type { ControllerDefinitionOption, SubControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
4
+ export type { Search, ProductListing, ProductListingState as ProductListState };
5
+ export type ProductList = Pick<ProductListing | Search, 'state' | 'subscribe' | 'interactiveProduct' | 'promoteChildToParent'>;
6
+ /**
7
+ * Defines a `ProductList` controller instance.
8
+ * @group Definers
9
+ *
10
+ * @returns The `ProductList` controller definition.
11
+ */
12
+ export declare function defineProductList<TOptions extends ControllerDefinitionOption | undefined>(options?: TOptions): SubControllerDefinitionWithoutProps<ProductList, TOptions>;
@@ -0,0 +1,20 @@
1
+ import { type ProductView as BaseProductView } from '../../../../controllers/commerce/product-view/headless-product-view.js';
2
+ import { type Controller } from '../../../../controllers/controller/headless-controller.js';
3
+ import type { NonRecommendationControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
4
+ interface ProductViewDefinition extends NonRecommendationControllerDefinitionWithoutProps<ProductView> {
5
+ }
6
+ /**
7
+ * Defines a `ProductView` controller instance.
8
+ *
9
+ * This controller is stateless and does not implement a `subscribe` method,
10
+ * making it simpler but different from other controllers in the system.
11
+ * Its sole purpose is to log an `ec.productView` event.
12
+ *
13
+ * @returns The `ProductView` controller definition.
14
+ *
15
+ * @group Definers
16
+ */
17
+ export declare function defineProductView(): ProductViewDefinition;
18
+ export interface ProductView extends BaseProductView, Controller {
19
+ }
20
+ export {};
@@ -0,0 +1,13 @@
1
+ import { type RecentQueriesList, type RecentQueriesListInitialState, type RecentQueriesListOptions, type RecentQueriesListProps, type RecentQueriesState } from '../../../../controllers/commerce/recent-queries-list/headless-recent-queries-list.js';
2
+ import type { NonRecommendationControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
+ export type { RecentQueriesListInitialState, RecentQueriesListOptions, RecentQueriesState, RecentQueriesList, RecentQueriesListProps, };
4
+ export interface RecentQueriesListDefinition extends NonRecommendationControllerDefinitionWithoutProps<RecentQueriesList> {
5
+ }
6
+ /**
7
+ * Defines the `RecentQueriesList` controller for the purpose of server-side rendering.
8
+ * @group Definers
9
+ *
10
+ * @param props - The configuration `RecentQueriesList` properties.
11
+ * @returns The `RecentQueriesList` controller definition.
12
+ */
13
+ export declare function defineRecentQueriesList(props?: RecentQueriesListProps): RecentQueriesListDefinition;
@@ -0,0 +1,17 @@
1
+ import { type Recommendations, type RecommendationsOptions, type RecommendationsProps, type RecommendationsState } from '../../../../controllers/commerce/recommendations/headless-recommendations.js';
2
+ import { recommendationInternalOptionKey } from '../../types/controller-constants.js';
3
+ import type { RecommendationOnlyControllerDefinitionWithProps } from '../../types/controller-definitions.js';
4
+ export type { Recommendations, RecommendationsState };
5
+ export type RecommendationsDefinitionMeta = {
6
+ [recommendationInternalOptionKey]: {} & RecommendationsProps['options'];
7
+ };
8
+ export interface RecommendationsDefinition extends RecommendationOnlyControllerDefinitionWithProps<Recommendations, Partial<RecommendationsOptions>> {
9
+ }
10
+ /**
11
+ * Defines a `Recommendations` controller instance.
12
+ * @group Definers
13
+ *
14
+ * @param props - The configurable `Recommendations` properties.
15
+ * @returns The `Recommendations` controller definition.
16
+ * */
17
+ export declare function defineRecommendations(props: RecommendationsProps): RecommendationsDefinition & RecommendationsDefinitionMeta;
@@ -0,0 +1,12 @@
1
+ import { type CoreSearchBox, type SearchBox, type SearchBoxOptions, type SearchBoxProps, type SearchBoxState, type Suggestion } from '../../../../controllers/commerce/search-box/headless-search-box.js';
2
+ import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
+ export type { CoreSearchBox, SearchBox, SearchBoxProps, SearchBoxState, SearchBoxOptions, Suggestion, };
4
+ export interface SearchBoxDefinition extends SearchOnlyControllerDefinitionWithoutProps<SearchBox> {
5
+ }
6
+ /**
7
+ * Defines a `SearchBox` controller instance.
8
+ * @group Definers
9
+ *
10
+ * @returns The `SearchBox` controller definition.
11
+ */
12
+ export declare function defineSearchBox(props?: SearchBoxProps): SearchBoxDefinition;
@@ -0,0 +1,11 @@
1
+ import type { Sort, SortProps, SortState } from '../../../../controllers/commerce/core/sort/headless-core-commerce-sort.js';
2
+ import type { ControllerDefinitionOption, SubControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
+ export type { Sort, SortProps, SortState };
4
+ /**
5
+ * Defines a `Sort` controller instance.
6
+ * @group Definers
7
+ *
8
+ * @param props - The configurable `Sort` properties.
9
+ * @returns The `Sort` controller definition.
10
+ */
11
+ export declare function defineSort<TOptions extends ControllerDefinitionOption | undefined>(props?: SortProps & TOptions): SubControllerDefinitionWithoutProps<Sort, TOptions>;
@@ -0,0 +1,14 @@
1
+ import { type StandaloneSearchBox, type StandaloneSearchBoxState } from '../../../../controllers/commerce/standalone-search-box/headless-standalone-search-box.js';
2
+ import type { StandaloneSearchBoxProps } from '../../../../controllers/standalone-search-box/headless-standalone-search-box.js';
3
+ import type { ListingAndStandaloneControllerWithoutProps } from '../../types/controller-definitions.js';
4
+ export type { StandaloneSearchBoxState, StandaloneSearchBox, StandaloneSearchBoxProps, };
5
+ export interface StandaloneSearchBoxDefinition extends ListingAndStandaloneControllerWithoutProps<StandaloneSearchBox> {
6
+ }
7
+ /**
8
+ * Defines the `StandaloneSearchBox` controller for the purpose of server-side rendering.
9
+ * @group Definers
10
+ *
11
+ * @param props - The configurable `StandaloneSearchBox` properties.
12
+ * @returns The `StandaloneSearchBox` controller definition.
13
+ */
14
+ export declare function defineStandaloneSearchBox(props: StandaloneSearchBoxProps): StandaloneSearchBoxDefinition;
@@ -0,0 +1,13 @@
1
+ import type { Summary, SummaryState } from '../../../../controllers/commerce/core/summary/headless-core-summary.js';
2
+ import type { ProductListingSummaryState } from '../../../../controllers/commerce/product-listing/summary/headless-product-listing-summary.js';
3
+ import type { RecommendationsSummaryState } from '../../../../controllers/commerce/recommendations/summary/headless-recommendations-summary.js';
4
+ import type { SearchSummaryState } from '../../../../controllers/commerce/search/summary/headless-search-summary.js';
5
+ import type { ControllerDefinitionOption, SubControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
6
+ export type { Summary, ProductListingSummaryState, RecommendationsSummaryState, SearchSummaryState, SummaryState, };
7
+ /**
8
+ * Defines a `Summary` controller instance.
9
+ * @group Definers
10
+ *
11
+ * @returns The `Summary` controller definition.
12
+ */
13
+ export declare function defineSummary<TOptions extends ControllerDefinitionOption | undefined>(options?: TOptions): SubControllerDefinitionWithoutProps<Summary<ProductListingSummaryState | SearchSummaryState | RecommendationsSummaryState>, TOptions>;
@@ -0,0 +1,12 @@
1
+ import type { NotifyTrigger, NotifyTriggerState } from '../../../../controllers/core/triggers/headless-core-notify-trigger.js';
2
+ import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
+ export type { NotifyTrigger, NotifyTriggerState };
4
+ export interface NotifyTriggerDefinition extends SearchAndListingControllerDefinitionWithoutProps<NotifyTrigger> {
5
+ }
6
+ /**
7
+ * Defines the `NotifyTrigger` controller for the purpose of server-side rendering.
8
+ * @group Definers
9
+ *
10
+ * @returns The `NotifyTrigger` controller definition.
11
+ */
12
+ export declare function defineNotifyTrigger(): NotifyTriggerDefinition;
@@ -0,0 +1,13 @@
1
+ import type { QueryTrigger } from '../../../../controllers/core/triggers/headless-core-query-trigger.js';
2
+ import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
+ export type { QueryTriggerState } from '../../../../controllers/core/triggers/headless-core-query-trigger.js';
4
+ export type { QueryTrigger };
5
+ export interface QueryTriggerDefinition extends SearchOnlyControllerDefinitionWithoutProps<QueryTrigger> {
6
+ }
7
+ /**
8
+ * Defines the `QueryTrigger` controller for the purpose of server-side rendering.
9
+ * @group Definers
10
+ *
11
+ * @returns The `QueryTrigger` controller definition.
12
+ */
13
+ export declare function defineQueryTrigger(): QueryTriggerDefinition;
@@ -0,0 +1,12 @@
1
+ import type { RedirectionTrigger, RedirectionTriggerState } from '../../../../controllers/core/triggers/headless-core-redirection-trigger.js';
2
+ import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
+ export type { RedirectionTrigger, RedirectionTriggerState };
4
+ export interface RedirectionTriggerDefinition extends SearchOnlyControllerDefinitionWithoutProps<RedirectionTrigger> {
5
+ }
6
+ /**
7
+ * Defines the `RedirectionTrigger` controller for the purpose of server-side rendering.
8
+ * @group Definers
9
+ *
10
+ * @returns The `RedirectionTrigger` controller definition.
11
+ */
12
+ export declare function defineRedirectionTrigger(): RedirectionTriggerDefinition;
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Utility functions to be used for Commerce Server Side Rendering.
3
+ */
4
+ import type { CommerceEngineOptions } from '../../../app/commerce-engine/commerce-engine.js';
5
+ import type { Controller } from '../../../controllers/controller/headless-controller.js';
6
+ import { type CommerceEngineDefinitionOptions } from '../factories/build-factory.js';
7
+ import { SolutionType } from '../types/controller-constants.js';
8
+ import type { ControllerDefinitionsMap } from '../types/controller-definitions.js';
9
+ import type { EngineDefinition } from '../types/engine.js';
10
+ export interface CommerceEngineDefinition<TControllers extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> extends EngineDefinition<TControllers, CommerceEngineOptions, TSolutionType> {
11
+ }
12
+ /**
13
+ * Initializes a Commerce engine definition in SSR with given controllers definitions and commerce engine config.
14
+ * @param options - The commerce engine definition
15
+ * @returns Three utility functions to fetch the initial state of the engine in SSR, hydrate the state in CSR,
16
+ * and a build function that can be used for edge cases requiring more control.
17
+ *
18
+ * @group Engine
19
+ */
20
+ export declare function defineCommerceEngine<TControllerDefinitions extends ControllerDefinitionsMap<Controller>>(options: CommerceEngineDefinitionOptions<TControllerDefinitions>): {
21
+ listingEngineDefinition: CommerceEngineDefinition<TControllerDefinitions, SolutionType.listing>;
22
+ searchEngineDefinition: CommerceEngineDefinition<TControllerDefinitions, SolutionType.search>;
23
+ standaloneEngineDefinition: CommerceEngineDefinition<TControllerDefinitions, SolutionType.standalone>;
24
+ recommendationEngineDefinition: CommerceEngineDefinition<TControllerDefinitions, SolutionType.recommendation>;
25
+ };
@@ -0,0 +1,22 @@
1
+ import type { Action } from '@reduxjs/toolkit';
2
+ import { type CommerceEngine, type CommerceEngineOptions } from '../../../app/commerce-engine/commerce-engine.js';
3
+ import type { Controller } from '../../../controllers/controller/headless-controller.js';
4
+ import { SolutionType } from '../types/controller-constants.js';
5
+ import type { ControllerDefinitionsMap } from '../types/controller-definitions.js';
6
+ import type { BuildParameters, CommerceControllerDefinitionsMap, EngineDefinitionOptions } from '../types/engine.js';
7
+ /**
8
+ * The SSR commerce engine.
9
+ *
10
+ * @group Engine
11
+ */
12
+ export interface SSRCommerceEngine extends CommerceEngine {
13
+ /**
14
+ * Waits for the request to be completed and returns a promise that resolves to an `Action`.
15
+ */
16
+ waitForRequestCompletedAction(): Promise<Action>[];
17
+ }
18
+ export type CommerceEngineDefinitionOptions<TControllers extends ControllerDefinitionsMap<Controller> = ControllerDefinitionsMap<Controller>> = EngineDefinitionOptions<CommerceEngineOptions, TControllers>;
19
+ export declare const buildFactory: <TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions | undefined, options: CommerceEngineDefinitionOptions<TControllerDefinitions>) => <T extends SolutionType>(solutionType: T) => (...[buildOptions]: BuildParameters<TControllerDefinitions>) => Promise<{
20
+ engine: SSRCommerceEngine;
21
+ controllers: import("../types/controller-inference.js").InferControllersMapFromDefinition<TControllerDefinitions, T>;
22
+ }>;
@@ -0,0 +1,4 @@
1
+ import type { SolutionType } from '../types/controller-constants.js';
2
+ import type { CommerceControllerDefinitionsMap, HydrateStaticStateFunction } from '../types/engine.js';
3
+ import { type CommerceEngineDefinitionOptions } from './build-factory.js';
4
+ export declare const hydratedStaticStateFactory: <TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions | undefined, options: CommerceEngineDefinitionOptions<TControllerDefinitions>) => (solutionType: SolutionType) => HydrateStaticStateFunction<TControllerDefinitions>;
@@ -0,0 +1,3 @@
1
+ import type { CommerceControllerDefinitionsMap, HydrateStaticStateFunction } from '../types/engine.js';
2
+ import { type CommerceEngineDefinitionOptions } from './build-factory.js';
3
+ export declare function hydratedRecommendationStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions | undefined, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): HydrateStaticStateFunction<TControllerDefinitions>;
@@ -0,0 +1,3 @@
1
+ import type { CommerceControllerDefinitionsMap, FetchStaticStateFunction } from '../types/engine.js';
2
+ import { type CommerceEngineDefinitionOptions } from './build-factory.js';
3
+ export declare function fetchRecommendationStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions | undefined, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): FetchStaticStateFunction<TControllerDefinitions>;
@@ -0,0 +1,4 @@
1
+ import { SolutionType } from '../types/controller-constants.js';
2
+ import type { CommerceControllerDefinitionsMap, FetchStaticStateFunction } from '../types/engine.js';
3
+ import { type CommerceEngineDefinitionOptions } from './build-factory.js';
4
+ export declare const fetchStaticStateFactory: <TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions | undefined, options: CommerceEngineDefinitionOptions<TControllerDefinitions>) => (solutionType: SolutionType) => FetchStaticStateFunction<TControllerDefinitions>;
@@ -0,0 +1,10 @@
1
+ import type { Controller } from '../../../controllers/controller/headless-controller.js';
2
+ import type { ControllersMap, ControllersPropsMap } from '../../common/types/controllers.js';
3
+ import type { OptionsExtender, OptionsTuple } from '../../common/types/utilities.js';
4
+ import type { SSRCommerceEngine } from '../factories/build-factory.js';
5
+ import type { SolutionType } from './controller-constants.js';
6
+ import type { ControllerDefinitionsMap, EngineDefinitionBuildResult, EngineDefinitionControllersPropsOption } from './controller-definitions.js';
7
+ export interface BuildOptions<TEngineOptions> {
8
+ extend?: OptionsExtender<TEngineOptions>;
9
+ }
10
+ export type Build<TEngineOptions, TControllersMap extends ControllersMap, TControllersProps extends ControllersPropsMap, TControllersDefinitionsMap extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = (...params: OptionsTuple<BuildOptions<TEngineOptions> & EngineDefinitionControllersPropsOption<TControllersDefinitionsMap, TControllersProps, TSolutionType>>) => Promise<EngineDefinitionBuildResult<SSRCommerceEngine, TControllersMap>>;
@@ -0,0 +1,7 @@
1
+ export declare enum SolutionType {
2
+ search = "search",
3
+ listing = "listing",
4
+ standalone = "standalone",
5
+ recommendation = "recommendation"
6
+ }
7
+ export declare const recommendationInternalOptionKey: unique symbol;
@@ -0,0 +1,220 @@
1
+ import type { Controller } from '../../../controllers/controller/headless-controller.js';
2
+ import type { InvalidControllerDefinition } from '../../common/errors.js';
3
+ import type { ControllersPropsMap } from '../../common/types/controllers.js';
4
+ import type { EngineDefinitionBuildResult } from '../../common/types/engine.js';
5
+ import type { HydratedState } from '../../common/types/hydrate-static-state.js';
6
+ import type { InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers } from '../../common/types/inference.js';
7
+ import type { HasKey, HasOptionalKeys, HasRequiredKeys, OptionsTuple } from '../../common/types/utilities.js';
8
+ import type { SSRCommerceEngine } from '../factories/build-factory.js';
9
+ import { type recommendationInternalOptionKey, SolutionType } from './controller-constants.js';
10
+ import type { ListingAndStandaloneController, ListingOnlyController, NonRecommendationController, RecommendationOnlyController, SearchAndListingController, SearchOnlyController, UniversalController } from './controller-scopes.js';
11
+ import type { Kind } from './kind.js';
12
+ export type { EngineDefinitionBuildResult, HydratedState, OptionsTuple, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, };
13
+ export type RecommendationControllerSettings = {
14
+ /**
15
+ * Toggle to enable or disable the recommendation controller.
16
+ * When set to `true`, the controller will perform a recommendation request server-side.
17
+ *
18
+ * @default false
19
+ */
20
+ enabled?: boolean;
21
+ };
22
+ export interface ControllerDefinitionWithoutProps<TController extends Controller> {
23
+ /**
24
+ * Creates an instance of the given controller.
25
+ *
26
+ * @param engine - The search engine.
27
+ * @param solutionType - The type of solution for which the controller should be built (e.g. search or listing). This option only applies to sub-controllers.
28
+ * @returns The created controller instance.
29
+ */
30
+ build(engine: SSRCommerceEngine, solutionType?: SolutionType): TController;
31
+ }
32
+ export interface ControllerWithKind extends Controller {
33
+ _kind: Kind;
34
+ }
35
+ export interface ControllerDefinitionWithProps<TController extends Controller, TProps> {
36
+ /**
37
+ * Creates an instance of the given controller.
38
+ *
39
+ * @param engine - The search engine.
40
+ * @param props - The controller properties.
41
+ * @param solutionType - The type of solution for which the controller should be built (e.g. search or listing). This option only applies to sub-controllers.
42
+ * @returns The created controller instance.
43
+ */
44
+ buildWithProps(engine: SSRCommerceEngine, props?: TProps, solutionType?: SolutionType): TController & ControllerWithKind;
45
+ }
46
+ interface SolutionTypeAvailability {
47
+ [SolutionType.search]?: boolean;
48
+ [SolutionType.listing]?: boolean;
49
+ [SolutionType.standalone]?: boolean;
50
+ [SolutionType.recommendation]?: boolean;
51
+ }
52
+ export type ControllerDefinition<TController extends Controller> = SolutionTypeAvailability & (ControllerDefinitionWithoutProps<TController> | ControllerDefinitionWithProps<TController, unknown>);
53
+ export interface ControllerDefinitionsMap<TController extends Controller> {
54
+ [customName: string]: ControllerDefinition<TController>;
55
+ }
56
+ /**
57
+ * This type defines the required and optional controller props for the engine definition.
58
+ */
59
+ export type EngineDefinitionControllersPropsOption<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, TSolutionType extends SolutionType> = OptionalEngineDefinitionControllersPropsOption<TControllers, TControllersPropsMap, TSolutionType> & RequiredEngineDefinitionControllersPropsOption<TControllers, TControllersPropsMap, TSolutionType>;
60
+ /**
61
+ * Represents an optional engine definition for controller properties.
62
+ *
63
+ * This type is used to define a map of optional controller properties based on the provided
64
+ * controller definitions, controller properties map, and solution type.
65
+ *
66
+ * @template TControllers - A map of controller definitions.
67
+ * @template TControllersPropsMap - A map of controller properties.
68
+ * @template TSolutionType - The type of solution.
69
+ *
70
+ * The type iterates over the controller keys (defined in the engine definition) and includes only those keys where:
71
+ * 1. The controller can be used for a specific solution type (HasKey<TControllers[K], TSolutionType> is not 'never').
72
+ * 2. The controller properties have optional options (HasOptionalKeys<ConditionalControllerProps<...>> is true).
73
+ *
74
+ * @example
75
+ * Given the following controller definitions:
76
+ * ```
77
+ * const {recommendationEngineDefinition} = defineCommerceEngine({
78
+ * controllers: {
79
+ * popularViewed: defineRecommendations({
80
+ * options: {slotId: 'slot-id'}
81
+ * })
82
+ * }
83
+ * });
84
+ * ```
85
+ *
86
+ * The following code will not throw an error since the 'popularViewed' controller props are optional
87
+ * ```
88
+ * recommendationEngineDefinition.fetchStaticState({
89
+ * controllers: {
90
+ * popularViewed: {enabled: true, productId: 'some-product-id'} // This is optional
91
+ * }
92
+ * })
93
+ * ```
94
+ *
95
+ * The following code (with no arguments) is also valid because the 'popularViewed' controller props are optional, and there are no other required controller props in the engine definition.
96
+ * ```
97
+ * recommendationEngineDefinition.fetchStaticState()
98
+ * ```
99
+ */
100
+ type OptionalEngineDefinitionControllersPropsOption<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, TSolutionType extends SolutionType> = {
101
+ [K in keyof TControllers as HasKey<TControllers[K], TSolutionType> extends never ? never : HasOptionalKeys<ConditionalControllerProps<TControllers, TControllersPropsMap, TSolutionType, K>> extends false ? never : 'controllers']?: ConditionalControllerProps<TControllers, TControllersPropsMap, TSolutionType, K>;
102
+ };
103
+ /**
104
+ * Represents a type that defines the required controller properties for engine definition controllers.
105
+ *
106
+ * @template TControllers - A map of controller definitions.
107
+ * @template TControllersPropsMap - A map of controller properties.
108
+ * @template TSolutionType - The type of solution being used.
109
+ *
110
+ * The type iterates over the controller keys (defined in the engine definition) and includes only those keys where:
111
+ * 1. The controller can be used for a specific solution type (HasKey<TControllers[K], TSolutionType> is not 'never').
112
+ * 2. The controller properties have required options (HasRequiredKeys<ConditionalControllerProps<...>> is true).
113
+ *
114
+ * The resulting type maps the valid keys to their corresponding conditional controller properties.
115
+ *
116
+ * @example
117
+ * Given the following controller definitions:
118
+ * ```
119
+ * const {standaloneEngineDefinition} = defineCommerceEngine({
120
+ * controllers: {cart: defineCart()},
121
+ * });
122
+ * ```
123
+ *
124
+ * The following code will not throw an error since the 'cart' controller props are required for the standalone engine definition:
125
+ * ```
126
+ * standaloneEngineDefinition.fetchStaticState({
127
+ * controllers: {
128
+ * cart: {initialState: {items: []}},
129
+ * },
130
+ * })
131
+ * ```
132
+ *
133
+ */
134
+ type RequiredEngineDefinitionControllersPropsOption<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, TSolutionType extends SolutionType> = {
135
+ [K in keyof TControllers as HasKey<TControllers[K], TSolutionType> extends never ? never : HasRequiredKeys<ConditionalControllerProps<TControllers, TControllersPropsMap, TSolutionType, K>> extends false ? never : 'controllers']: ConditionalControllerProps<TControllers, TControllersPropsMap, TSolutionType, K>;
136
+ };
137
+ type IsRecommendationController<TController extends ControllerDefinition<Controller>> = HasKey<TController, typeof recommendationInternalOptionKey>;
138
+ /**
139
+ * This type ensures that recommendation controller props are optional, while other controller props remain required.
140
+ *
141
+ * It works by checking if the controller definition includes the `recommendationInternalOptionKey`.
142
+ *
143
+ * - If the key is present, the controller props are made optional.
144
+ * - If the key is absent, the controller props are required.
145
+ *
146
+ * Example:
147
+ *
148
+ * ```typescript
149
+ * type ControllerProps = InferControllerPropsFromDefinition<{
150
+ * recommendation: defineRecommendation({}),
151
+ * cart: defineCart(),
152
+ * }>;
153
+ *
154
+ * // In this example:
155
+ * // - The `recommendation` controller props are optional.
156
+ * // - The `cart` controller props are required.
157
+ *
158
+ * const props: ControllerProps = {
159
+ * cart: {initialState: {items: []}},
160
+ * // recommendation props can be omitted
161
+ * };
162
+ * ```
163
+ */
164
+ type RecommendationControllerProps<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, K extends keyof TControllers> = {
165
+ [I in keyof TControllersPropsMap as I extends K ? IsRecommendationController<TControllers[I]> extends never ? never : I : never]?: TControllersPropsMap[I];
166
+ } & {
167
+ [I in keyof TControllersPropsMap as I extends K ? IsRecommendationController<TControllers[I]> extends never ? I : never : never]: TControllersPropsMap[I];
168
+ };
169
+ type DefaultControllerProps<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, K extends keyof TControllers> = {
170
+ [I in keyof TControllersPropsMap as I extends K ? I : never]: TControllersPropsMap[I];
171
+ };
172
+ type ConditionalControllerProps<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, TSolutionType extends SolutionType, K extends keyof TControllers> = TSolutionType extends SolutionType.recommendation ? RecommendationControllerProps<TControllers, TControllersPropsMap, K> : DefaultControllerProps<TControllers, TControllersPropsMap, K>;
173
+ export interface ControllerDefinitionOption {
174
+ /**
175
+ * Whether the controller will be used in a product listing context.
176
+ * @defaultValue true
177
+ */
178
+ listing?: boolean;
179
+ /**
180
+ * Whether the controller will be used in a search page context.
181
+ * @defaultValue true
182
+ */
183
+ search?: boolean;
184
+ }
185
+ export type SearchOnlyControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & SearchOnlyController;
186
+ type SearchOnlyControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & SearchOnlyController;
187
+ export type ListingAndStandaloneControllerWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & ListingAndStandaloneController;
188
+ type ListingOnlyControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & ListingOnlyController;
189
+ type ListingOnlyControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & ListingOnlyController;
190
+ export type RecommendationOnlyControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & RecommendationOnlyController;
191
+ export type NonRecommendationControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & NonRecommendationController;
192
+ export type UniversalControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & UniversalController;
193
+ export type SearchAndListingControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & SearchAndListingController;
194
+ type SearchAndListingControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & SearchAndListingController;
195
+ export type SubControllerDefinitionWithoutProps<TController extends Controller, TDefinition extends ControllerDefinitionOption | undefined> = TDefinition extends {
196
+ listing?: true;
197
+ search?: true;
198
+ } | undefined ? SearchAndListingControllerDefinitionWithoutProps<TController> : TDefinition extends {
199
+ listing?: true;
200
+ search?: false;
201
+ } ? ListingOnlyControllerDefinitionWithoutProps<TController> : TDefinition extends {
202
+ listing?: false;
203
+ search?: true;
204
+ } ? SearchOnlyControllerDefinitionWithoutProps<TController> : TDefinition extends {
205
+ listing: false;
206
+ search: false;
207
+ } ? InvalidControllerDefinition : never;
208
+ export type SubControllerDefinitionWithProps<TController extends Controller, TDefinition extends ControllerDefinitionOption | undefined, TProps> = TDefinition extends {
209
+ listing?: true;
210
+ search?: true;
211
+ } | undefined ? SearchAndListingControllerDefinitionWithProps<TController, TProps> : TDefinition extends {
212
+ listing?: true;
213
+ search?: false;
214
+ } ? ListingOnlyControllerDefinitionWithProps<TController, TProps> : TDefinition extends {
215
+ listing?: false;
216
+ search?: true;
217
+ } ? SearchOnlyControllerDefinitionWithProps<TController, TProps> : TDefinition extends {
218
+ listing: false;
219
+ search: false;
220
+ } ? InvalidControllerDefinition : never;
@@ -0,0 +1,24 @@
1
+ import type { Controller } from '../../../controllers/controller/headless-controller.js';
2
+ import type { HasKey, HasKeys } from '../../common/types/utilities.js';
3
+ import type { recommendationInternalOptionKey, SolutionType } from './controller-constants.js';
4
+ import type { ControllerDefinition, ControllerDefinitionsMap, ControllerDefinitionWithoutProps, ControllerDefinitionWithProps, InferControllerStaticStateFromController, RecommendationControllerSettings } from './controller-definitions.js';
5
+ export type InferStaticState<T extends {
6
+ fetchStaticState(...args: unknown[]): Promise<unknown>;
7
+ }> = Awaited<ReturnType<T['fetchStaticState']>>;
8
+ export type InferHydratedState<T extends {
9
+ hydrateStaticState(...args: unknown[]): Promise<unknown>;
10
+ }> = Awaited<ReturnType<T['hydrateStaticState']>>;
11
+ export type InferBuildResult<T extends {
12
+ build(...args: unknown[]): Promise<unknown>;
13
+ }> = Awaited<ReturnType<T['build']>>;
14
+ export type InferControllerPropsFromDefinition<TController extends ControllerDefinition<Controller>> = TController extends ControllerDefinitionWithProps<Controller, infer Props> ? HasKey<TController, typeof recommendationInternalOptionKey> extends never ? Props : Props & RecommendationControllerSettings : TController extends ControllerDefinitionWithoutProps<Controller> ? HasKey<TController, typeof recommendationInternalOptionKey> extends never ? {} : RecommendationControllerSettings : unknown;
15
+ export type InferControllerPropsMapFromDefinitions<TControllers extends ControllerDefinitionsMap<Controller>> = {
16
+ [K in keyof TControllers as HasKeys<InferControllerPropsFromDefinition<TControllers[K]>> extends false ? never : K]: InferControllerPropsFromDefinition<TControllers[K]>;
17
+ };
18
+ export type InferControllerFromDefinition<TDefinition extends ControllerDefinition<Controller>> = TDefinition extends ControllerDefinition<infer TController> ? TController : never;
19
+ export type InferControllersMapFromDefinition<TControllers extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = {
20
+ [K in keyof TControllers as HasKey<TControllers[K], TSolutionType> extends never ? never : K]: InferControllerFromDefinition<TControllers[K]>;
21
+ };
22
+ export type InferControllerStaticStateMapFromDefinitionsWithSolutionType<TControllers extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = {
23
+ [K in keyof TControllers as HasKey<TControllers[K], TSolutionType> extends never ? never : K]: InferControllerStaticStateFromController<InferControllerFromDefinition<TControllers[K]>>;
24
+ };
@@ -0,0 +1,71 @@
1
+ import { SolutionType } from './controller-constants.js';
2
+ export interface NonRecommendationController {
3
+ /**
4
+ * @internal
5
+ */
6
+ [SolutionType.search]: true;
7
+ /**
8
+ * @internal
9
+ */
10
+ [SolutionType.listing]: true;
11
+ /**
12
+ * @internal
13
+ */
14
+ [SolutionType.standalone]: true;
15
+ }
16
+ export interface UniversalController {
17
+ /**
18
+ * @internal
19
+ */
20
+ [SolutionType.search]: true;
21
+ /**
22
+ * @internal
23
+ */
24
+ [SolutionType.listing]: true;
25
+ /**
26
+ * @internal
27
+ */
28
+ [SolutionType.standalone]: true;
29
+ /**
30
+ * @internal
31
+ */
32
+ [SolutionType.recommendation]: true;
33
+ }
34
+ export interface SearchOnlyController {
35
+ /**
36
+ * @internal
37
+ */
38
+ [SolutionType.search]: true;
39
+ }
40
+ export interface ListingOnlyController {
41
+ /**
42
+ * @internal
43
+ */
44
+ [SolutionType.listing]: true;
45
+ }
46
+ export interface RecommendationOnlyController {
47
+ /**
48
+ * @internal
49
+ */
50
+ [SolutionType.recommendation]: true;
51
+ }
52
+ export interface SearchAndListingController {
53
+ /**
54
+ * @internal
55
+ */
56
+ [SolutionType.search]: true;
57
+ /**
58
+ * @internal
59
+ */
60
+ [SolutionType.listing]: true;
61
+ }
62
+ export interface ListingAndStandaloneController {
63
+ /**
64
+ * @internal
65
+ */
66
+ [SolutionType.listing]: true;
67
+ /**
68
+ * @internal
69
+ */
70
+ [SolutionType.standalone]: true;
71
+ }