@coveo/headless 3.29.2-pre.da06d2e1ca → 3.29.2-pre.ddf6cab06c

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 (130) hide show
  1. package/dist/cjs/case-assist/headless.cjs +1 -1
  2. package/dist/cjs/commerce/headless.cjs +1 -1
  3. package/dist/cjs/headless.cjs +1 -1
  4. package/dist/cjs/insight/headless.cjs +1 -1
  5. package/dist/cjs/recommendation/headless.cjs +1 -1
  6. package/dist/cjs/ssr/headless.cjs +1 -1
  7. package/dist/cjs/ssr-commerce/headless.cjs +1 -1
  8. package/dist/cjs/ssr-commerce/node.cjs.stats.json +1 -1
  9. package/dist/cjs/ssr-commerce-next/headless.cjs +1 -1
  10. package/dist/cjs/ssr-commerce-next/node.cjs.stats.json +1 -1
  11. package/dist/cjs/ssr-next/headless.cjs +1 -1
  12. package/dist/definitions/ssr/commerce/types/controller-definitions.d.ts +3 -0
  13. package/dist/definitions/ssr-commerce-next.index.d.ts +11 -11
  14. package/dist/definitions/ssr-commerce.index.d.ts +1 -1
  15. package/dist/definitions/ssr-next/commerce/controller-utils.d.ts +1 -2
  16. package/dist/definitions/ssr-next/commerce/controllers/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.d.ts +3 -2
  17. package/dist/definitions/ssr-next/commerce/controllers/cart/headless-cart.ssr.d.ts +1 -2
  18. package/dist/definitions/ssr-next/commerce/controllers/context/headless-context.ssr.d.ts +2 -3
  19. package/dist/definitions/ssr-next/commerce/controllers/did-you-mean/headless-did-you-mean.ssr.d.ts +2 -1
  20. package/dist/definitions/ssr-next/commerce/controllers/filter-suggestions/headless-filter-suggestions-generator.ssr.d.ts +1 -2
  21. package/dist/definitions/ssr-next/commerce/controllers/generator/headless-commerce-facet-generator.ssr.d.ts +3 -2
  22. package/dist/definitions/ssr-next/commerce/controllers/instant-products/headless-instant-products.ssr.d.ts +1 -2
  23. package/dist/definitions/ssr-next/commerce/controllers/pagination/headless-core-commerce-pagination.ssr.d.ts +3 -2
  24. package/dist/definitions/ssr-next/commerce/controllers/parameter-manager/headless-core-parameter-manager.ssr.d.ts +3 -13
  25. package/dist/definitions/ssr-next/commerce/controllers/product-list/headless-product-list.ssr.d.ts +3 -2
  26. package/dist/definitions/ssr-next/commerce/controllers/product-view/headless-product-view.ssr.d.ts +1 -3
  27. package/dist/definitions/ssr-next/commerce/controllers/recent-queries-list/headless-recent-queries-list.ssr.d.ts +1 -2
  28. package/dist/definitions/ssr-next/commerce/controllers/search-box/headless-search-box.ssr.d.ts +1 -2
  29. package/dist/definitions/ssr-next/commerce/controllers/sort/headless-core-commerce-sort.ssr.d.ts +3 -2
  30. package/dist/definitions/ssr-next/commerce/controllers/standalone-search-box/headless-standalone-search-box.ssr.d.ts +1 -2
  31. package/dist/definitions/ssr-next/commerce/controllers/summary/headless-core-summary.ssr.d.ts +3 -2
  32. package/dist/definitions/ssr-next/commerce/controllers/triggers/headless-notify-trigger.ssr.d.ts +1 -2
  33. package/dist/definitions/ssr-next/commerce/controllers/triggers/headless-query-trigger.ssr.d.ts +1 -2
  34. package/dist/definitions/ssr-next/commerce/controllers/triggers/headless-redirection-trigger.ssr.d.ts +1 -2
  35. package/dist/definitions/ssr-next/commerce/engine/commerce-engine.ssr.d.ts +1 -2
  36. package/dist/definitions/ssr-next/commerce/factories/build-factory.d.ts +1 -5
  37. package/dist/definitions/ssr-next/commerce/factories/hydrated-state-factory.d.ts +1 -2
  38. package/dist/definitions/ssr-next/commerce/factories/recommendation-hydrated-state-factory.d.ts +1 -2
  39. package/dist/definitions/ssr-next/commerce/factories/recommendation-static-state-factory.d.ts +1 -2
  40. package/dist/definitions/ssr-next/commerce/factories/static-state-factory.d.ts +1 -2
  41. package/dist/definitions/ssr-next/commerce/types/build.d.ts +2 -2
  42. package/dist/definitions/ssr-next/commerce/types/controller-definitions.d.ts +7 -52
  43. package/dist/definitions/ssr-next/commerce/types/controller-inference.d.ts +2 -7
  44. package/dist/definitions/ssr-next/commerce/types/engine.d.ts +7 -5
  45. package/dist/definitions/ssr-next/commerce/types/fetch-static-state.d.ts +2 -2
  46. package/dist/definitions/ssr-next/commerce/types/hydrate-static-state.d.ts +4 -4
  47. package/dist/definitions/ssr-next/commerce/utils/engine-wiring.d.ts +1 -2
  48. package/dist/definitions/ssr-next/common/types/controller-inference.d.ts +6 -0
  49. package/dist/definitions/ssr-next/common/types/controllers.d.ts +0 -24
  50. package/dist/definitions/ssr-next/common/types/engine.d.ts +2 -44
  51. package/dist/definitions/ssr-next/{common → search}/controller-utils.d.ts +3 -3
  52. package/dist/definitions/ssr-next/search/controllers/breadcrumb-manager/headless-breadcrumb-manager.ssr.d.ts +1 -1
  53. package/dist/definitions/ssr-next/search/controllers/context/headless-context.ssr.d.ts +1 -1
  54. package/dist/definitions/ssr-next/search/controllers/dictionary-field-context/headless-dictionary-field-context.ssr.d.ts +1 -1
  55. package/dist/definitions/ssr-next/search/controllers/did-you-mean/headless-did-you-mean.ssr.d.ts +1 -1
  56. package/dist/definitions/ssr-next/search/controllers/facet-manager/headless-facet-manager.ssr.d.ts +1 -1
  57. package/dist/definitions/ssr-next/search/controllers/facets/automatic-facet-generator/headless-automatic-facet-generator.ssr.d.ts +1 -1
  58. package/dist/definitions/ssr-next/search/controllers/facets/category-facet/headless-category-facet.ssr.d.ts +1 -1
  59. package/dist/definitions/ssr-next/search/controllers/facets/facet/headless-facet.ssr.d.ts +1 -1
  60. package/dist/definitions/ssr-next/search/controllers/facets/range-facet/date-facet/headless-date-facet.ssr.d.ts +1 -1
  61. package/dist/definitions/ssr-next/search/controllers/facets/range-facet/date-facet/headless-date-filter.ssr.d.ts +1 -1
  62. package/dist/definitions/ssr-next/search/controllers/facets/range-facet/numeric-facet/headless-numeric-facet.ssr.d.ts +1 -1
  63. package/dist/definitions/ssr-next/search/controllers/facets/range-facet/numeric-facet/headless-numeric-filter.ssr.d.ts +1 -1
  64. package/dist/definitions/ssr-next/search/controllers/field-suggestions/category-facet/headless-category-field-suggestions.ssr.d.ts +1 -1
  65. package/dist/definitions/ssr-next/search/controllers/field-suggestions/facet/headless-field-suggestions.ssr.d.ts +1 -1
  66. package/dist/definitions/ssr-next/search/controllers/folded-result-list/headless-folded-result-list.ssr.d.ts +1 -1
  67. package/dist/definitions/ssr-next/search/controllers/history-manager/headless-history-manager.ssr.d.ts +1 -1
  68. package/dist/definitions/ssr-next/search/controllers/instant-results/instant-results.ssr.d.ts +1 -1
  69. package/dist/definitions/ssr-next/search/controllers/pager/headless-pager.ssr.d.ts +1 -1
  70. package/dist/definitions/ssr-next/search/controllers/query-error/headless-query-error.ssr.d.ts +1 -1
  71. package/dist/definitions/ssr-next/search/controllers/query-summary/headless-query-summary.ssr.d.ts +1 -1
  72. package/dist/definitions/ssr-next/search/controllers/quickview/headless-quickview.ssr.d.ts +1 -1
  73. package/dist/definitions/ssr-next/search/controllers/recent-queries-list/headless-recent-queries-list.ssr.d.ts +1 -1
  74. package/dist/definitions/ssr-next/search/controllers/recent-results-list/headless-recent-results-list.ssr.d.ts +1 -1
  75. package/dist/definitions/ssr-next/search/controllers/relevance-inspector/headless-relevance-inspector.ssr.d.ts +1 -1
  76. package/dist/definitions/ssr-next/search/controllers/result-list/headless-result-list.ssr.d.ts +1 -1
  77. package/dist/definitions/ssr-next/search/controllers/results-per-page/headless-results-per-page.ssr.d.ts +1 -1
  78. package/dist/definitions/ssr-next/search/controllers/search-box/headless-search-box.ssr.d.ts +1 -1
  79. package/dist/definitions/ssr-next/search/controllers/search-parameter-manager/headless-search-parameter-manager.ssr.d.ts +1 -1
  80. package/dist/definitions/ssr-next/search/controllers/search-status/headless-search-status.ssr.d.ts +1 -1
  81. package/dist/definitions/ssr-next/search/controllers/smart-snippet/headless-smart-snippet.ssr.d.ts +1 -1
  82. package/dist/definitions/ssr-next/search/controllers/smart-snippet-questions-list/headless-smart-snippet-questions-list.ssr.d.ts +1 -1
  83. package/dist/definitions/ssr-next/search/controllers/sort/headless-sort.ssr.d.ts +1 -1
  84. package/dist/definitions/ssr-next/search/controllers/standalone-search-box/headless-standalone-search-box.ssr.d.ts +1 -1
  85. package/dist/definitions/ssr-next/search/controllers/static-filter/headless-static-filter.ssr.d.ts +1 -1
  86. package/dist/definitions/ssr-next/search/controllers/tab/headless-tab.ssr.d.ts +1 -1
  87. package/dist/definitions/ssr-next/search/controllers/tab-manager/headless-tab-manager.ssr.d.ts +1 -1
  88. package/dist/definitions/ssr-next/search/controllers/triggers/headless-execute-trigger.ssr.d.ts +1 -1
  89. package/dist/definitions/ssr-next/search/controllers/triggers/headless-notify-trigger.ssr.d.ts +1 -1
  90. package/dist/definitions/ssr-next/search/controllers/triggers/headless-query-trigger.ssr.d.ts +1 -1
  91. package/dist/definitions/ssr-next/search/controllers/triggers/headless-redirection-trigger.ssr.d.ts +1 -1
  92. package/dist/definitions/ssr-next/search/controllers/url-manager/headless-url-manager.ssr.d.ts +1 -1
  93. package/dist/definitions/ssr-next/search/engine/search-engine.ssr.d.ts +6 -13
  94. package/dist/definitions/ssr-next/search/types/build.d.ts +12 -0
  95. package/dist/definitions/ssr-next/search/types/controller-definition.d.ts +28 -0
  96. package/dist/definitions/ssr-next/{common/types/inference.d.ts → search/types/controller-inference.d.ts} +3 -6
  97. package/dist/definitions/ssr-next/search/types/engine.d.ts +52 -0
  98. package/dist/definitions/ssr-next/{common → search}/types/fetch-static-state.d.ts +5 -4
  99. package/dist/definitions/ssr-next/{common → search}/types/hydrate-static-state.d.ts +5 -6
  100. package/dist/definitions/ssr-next.index.d.ts +6 -4
  101. package/dist/definitions/test/mock-ssr-controller-definitions.d.ts +1 -1
  102. package/dist/esm/ssr-next/commerce/controller-utils.js +0 -6
  103. package/dist/esm/ssr-next/commerce/controllers/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.js +1 -4
  104. package/dist/esm/ssr-next/commerce/controllers/generator/headless-commerce-facet-generator.ssr.js +1 -4
  105. package/dist/esm/ssr-next/commerce/controllers/pagination/headless-core-commerce-pagination.ssr.js +0 -2
  106. package/dist/esm/ssr-next/commerce/controllers/parameter-manager/headless-core-parameter-manager.ssr.js +1 -4
  107. package/dist/esm/ssr-next/commerce/controllers/product-list/headless-product-list.ssr.js +1 -4
  108. package/dist/esm/ssr-next/commerce/controllers/sort/headless-core-commerce-sort.ssr.js +0 -2
  109. package/dist/esm/ssr-next/commerce/controllers/summary/headless-core-summary.ssr.js +1 -4
  110. package/dist/esm/ssr-next/commerce/factories/hydrated-state-factory.js +1 -1
  111. package/dist/esm/ssr-next/commerce/factories/recommendation-hydrated-state-factory.js +1 -1
  112. package/dist/esm/ssr-next/commerce/factories/recommendation-static-state-factory.js +1 -1
  113. package/dist/esm/ssr-next/commerce/factories/static-state-factory.js +1 -1
  114. package/dist/esm/ssr-next/{common → search}/controller-utils.js +2 -2
  115. package/dist/esm/ssr-next/search/engine/search-engine.ssr.js +1 -1
  116. package/dist/esm/ssr-next/search/types/engine.js +1 -0
  117. package/dist/esm/ssr-next/search/types/fetch-static-state.js +1 -0
  118. package/dist/esm/ssr-next/search/types/hydrate-static-state.js +1 -0
  119. package/dist/esm/utils/version.js +1 -1
  120. package/dist/quantic/case-assist/headless.js +1 -1
  121. package/dist/quantic/commerce/headless.js +1 -1
  122. package/dist/quantic/headless.js +1 -1
  123. package/dist/quantic/insight/headless.js +1 -1
  124. package/dist/quantic/recommendation/headless.js +1 -1
  125. package/package.json +1 -1
  126. package/dist/definitions/ssr-next/common/types/build.d.ts +0 -12
  127. /package/dist/esm/ssr-next/common/types/{build.js → controller-inference.js} +0 -0
  128. /package/dist/esm/ssr-next/{common/types/fetch-static-state.js → search/types/build.js} +0 -0
  129. /package/dist/esm/ssr-next/{common/types/hydrate-static-state.js → search/types/controller-definition.js} +0 -0
  130. /package/dist/esm/ssr-next/{common/types/inference.js → search/types/controller-inference.js} +0 -0
@@ -1306,7 +1306,7 @@ var import_toolkit2 = require("@reduxjs/toolkit");
1306
1306
  var import_toolkit = require("@reduxjs/toolkit");
1307
1307
 
1308
1308
  // src/utils/version.ts
1309
- var VERSION = "3.29.2-pre.da06d2e1ca";
1309
+ var VERSION = "3.29.2-pre.ddf6cab06c";
1310
1310
  var COVEO_FRAMEWORK = ["@coveo/atomic", "@coveo/quantic"];
1311
1311
 
1312
1312
  // src/api/analytics/analytics-selectors.ts
@@ -170,6 +170,9 @@ type DefaultControllerProps<TControllers extends ControllerDefinitionsMap<Contro
170
170
  [I in keyof TControllersPropsMap as I extends K ? I : never]: TControllersPropsMap[I];
171
171
  };
172
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
+ /**
174
+ * @deprecated This interface is no longer used and will be removed in next major version.
175
+ */
173
176
  export interface ControllerDefinitionOption {
174
177
  /**
175
178
  * Whether the controller will be used in a product listing context.
@@ -76,27 +76,27 @@ export type { LoggerOptions, LogLevel } from './app/logger.js';
76
76
  export type { BrowserNavigatorContextProvider, NavigatorContext, NavigatorContextProvider, } from './app/navigator-context-provider.js';
77
77
  export type { InteractiveProduct, InteractiveProductOptions, InteractiveProductProps, } from './controllers/commerce/core/interactive-product/headless-core-interactive-product.js';
78
78
  export type { Controller, Subscribable, } from './controllers/controller/headless-controller.js';
79
- export type { BreadcrumbManager, BreadcrumbManagerState, } from './ssr-next/commerce/controllers/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.js';
79
+ export type { BreadcrumbManager, BreadcrumbManagerDefinition, BreadcrumbManagerState, } from './ssr-next/commerce/controllers/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.js';
80
80
  export { defineBreadcrumbManager } from './ssr-next/commerce/controllers/breadcrumb-manager/headless-core-breadcrumb-manager.ssr.js';
81
81
  export type { Cart, CartBuildProps, CartDefinition, CartInitialState, CartItem, CartProps, CartState, } from './ssr-next/commerce/controllers/cart/headless-cart.ssr.js';
82
82
  export { defineCart } from './ssr-next/commerce/controllers/cart/headless-cart.ssr.js';
83
83
  export type { Context, ContextDefinition, ContextOptions, ContextProps, ContextState, UserLocation, View, } from './ssr-next/commerce/controllers/context/headless-context.ssr.js';
84
84
  export { defineContext } from './ssr-next/commerce/controllers/context/headless-context.ssr.js';
85
- export type { DidYouMean, DidYouMeanState, } from './ssr-next/commerce/controllers/did-you-mean/headless-did-you-mean.ssr.js';
85
+ export type { DidYouMean, DidYouMeanDefinition, DidYouMeanState, } from './ssr-next/commerce/controllers/did-you-mean/headless-did-you-mean.ssr.js';
86
86
  export { defineDidYouMean } from './ssr-next/commerce/controllers/did-you-mean/headless-did-you-mean.ssr.js';
87
87
  export type { CategoryFilterSuggestions, CategoryFilterSuggestionsState, FieldSuggestionsFacet, FilterSuggestions, FilterSuggestionsGenerator, FilterSuggestionsGeneratorDefinition, FilterSuggestionsState, GeneratedFilterSuggestionsControllers, } from './ssr-next/commerce/controllers/filter-suggestions/headless-filter-suggestions-generator.ssr.js';
88
88
  export { defineFilterSuggestionsGenerator } from './ssr-next/commerce/controllers/filter-suggestions/headless-filter-suggestions-generator.ssr.js';
89
- export type { BaseFacetSearchResult, CategoryFacet, CategoryFacetSearchResult, CategoryFacetState, CategoryFacetValue, CoreCommerceFacet, DateFacet, DateFacetState, DateFacetValue, FacetGenerator, FacetGeneratorState, FacetType, LocationFacet, LocationFacetState, LocationFacetValue, MappedFacetState, MappedFacetStates, MappedGeneratedFacetController, NumericFacet, NumericFacetState, NumericFacetValue, RegularFacet, RegularFacetState, RegularFacetValue, } from './ssr-next/commerce/controllers/generator/headless-commerce-facet-generator.ssr.js';
89
+ export type { BaseFacetSearchResult, CategoryFacet, CategoryFacetSearchResult, CategoryFacetState, CategoryFacetValue, CoreCommerceFacet, DateFacet, DateFacetState, DateFacetValue, FacetGenerator, FacetGeneratorDefinition, FacetGeneratorState, FacetType, LocationFacet, LocationFacetState, LocationFacetValue, MappedFacetState, MappedFacetStates, MappedGeneratedFacetController, NumericFacet, NumericFacetState, NumericFacetValue, RegularFacet, RegularFacetState, RegularFacetValue, } from './ssr-next/commerce/controllers/generator/headless-commerce-facet-generator.ssr.js';
90
90
  export { defineFacetGenerator } from './ssr-next/commerce/controllers/generator/headless-commerce-facet-generator.ssr.js';
91
91
  export type { InstantProducts, InstantProductsDefinition, InstantProductsOptions, InstantProductsProps, InstantProductsState, } from './ssr-next/commerce/controllers/instant-products/headless-instant-products.ssr.js';
92
92
  export { defineInstantProducts } from './ssr-next/commerce/controllers/instant-products/headless-instant-products.ssr.js';
93
- export type { CorePaginationOptions, Pagination, PaginationOptions, PaginationProps, PaginationState, } from './ssr-next/commerce/controllers/pagination/headless-core-commerce-pagination.ssr.js';
93
+ export type { CorePaginationOptions, Pagination, PaginationDefinition, PaginationOptions, PaginationProps, PaginationState, } from './ssr-next/commerce/controllers/pagination/headless-core-commerce-pagination.ssr.js';
94
94
  export { definePagination } from './ssr-next/commerce/controllers/pagination/headless-core-commerce-pagination.ssr.js';
95
95
  export type { CommerceSearchParameters, ParameterManager, ParameterManagerDefinition, ParameterManagerProps, ParameterManagerState, Parameters, ProductListingParameters, SSRParameterManagerProps, } from './ssr-next/commerce/controllers/parameter-manager/headless-core-parameter-manager.ssr.js';
96
96
  export { defineParameterManager } from './ssr-next/commerce/controllers/parameter-manager/headless-core-parameter-manager.ssr.js';
97
- export type { ProductList, ProductListing, ProductListState, Search, } from './ssr-next/commerce/controllers/product-list/headless-product-list.ssr.js';
97
+ export type { ProductList, ProductListDefinition, ProductListing, ProductListState, Search, } from './ssr-next/commerce/controllers/product-list/headless-product-list.ssr.js';
98
98
  export { defineProductList } from './ssr-next/commerce/controllers/product-list/headless-product-list.ssr.js';
99
- export type { ProductView } from './ssr-next/commerce/controllers/product-view/headless-product-view.ssr.js';
99
+ export type { ProductView, ProductViewDefinition, } from './ssr-next/commerce/controllers/product-view/headless-product-view.ssr.js';
100
100
  export { defineProductView } from './ssr-next/commerce/controllers/product-view/headless-product-view.ssr.js';
101
101
  export type { RecentQueriesList, RecentQueriesListDefinition, RecentQueriesListInitialState, RecentQueriesListOptions, RecentQueriesListProps, RecentQueriesState, } from './ssr-next/commerce/controllers/recent-queries-list/headless-recent-queries-list.ssr.js';
102
102
  export { defineRecentQueriesList } from './ssr-next/commerce/controllers/recent-queries-list/headless-recent-queries-list.ssr.js';
@@ -104,11 +104,11 @@ export type { Recommendations, RecommendationsDefinition, RecommendationsState,
104
104
  export { defineRecommendations } from './ssr-next/commerce/controllers/recommendations/headless-recommendations.ssr.js';
105
105
  export type { CoreSearchBox, SearchBox, SearchBoxDefinition, SearchBoxOptions, SearchBoxProps, SearchBoxState, Suggestion, } from './ssr-next/commerce/controllers/search-box/headless-search-box.ssr.js';
106
106
  export { defineSearchBox } from './ssr-next/commerce/controllers/search-box/headless-search-box.ssr.js';
107
- export type { Sort, SortProps, SortState, } from './ssr-next/commerce/controllers/sort/headless-core-commerce-sort.ssr.js';
107
+ export type { Sort, SortDefinition, SortProps, SortState, } from './ssr-next/commerce/controllers/sort/headless-core-commerce-sort.ssr.js';
108
108
  export { defineSort } from './ssr-next/commerce/controllers/sort/headless-core-commerce-sort.ssr.js';
109
109
  export type { StandaloneSearchBox, StandaloneSearchBoxDefinition, StandaloneSearchBoxProps, StandaloneSearchBoxState, } from './ssr-next/commerce/controllers/standalone-search-box/headless-standalone-search-box.ssr.js';
110
110
  export { defineStandaloneSearchBox } from './ssr-next/commerce/controllers/standalone-search-box/headless-standalone-search-box.ssr.js';
111
- export type { ProductListingSummaryState, RecommendationsSummaryState, SearchSummaryState, Summary, SummaryState, } from './ssr-next/commerce/controllers/summary/headless-core-summary.ssr.js';
111
+ export type { ProductListingSummaryState, RecommendationsSummaryState, SearchSummaryState, Summary, SummaryDefinition, SummaryState, } from './ssr-next/commerce/controllers/summary/headless-core-summary.ssr.js';
112
112
  export { defineSummary } from './ssr-next/commerce/controllers/summary/headless-core-summary.ssr.js';
113
113
  export type { NotifyTrigger, NotifyTriggerDefinition, NotifyTriggerState, } from './ssr-next/commerce/controllers/triggers/headless-notify-trigger.ssr.js';
114
114
  export { defineNotifyTrigger } from './ssr-next/commerce/controllers/triggers/headless-notify-trigger.ssr.js';
@@ -117,12 +117,12 @@ export { defineQueryTrigger } from './ssr-next/commerce/controllers/triggers/hea
117
117
  export type { RedirectionTrigger, RedirectionTriggerDefinition, RedirectionTriggerState, } from './ssr-next/commerce/controllers/triggers/headless-redirection-trigger.ssr.js';
118
118
  export { defineRedirectionTrigger } from './ssr-next/commerce/controllers/triggers/headless-redirection-trigger.ssr.js';
119
119
  export { defineCommerceEngine } from './ssr-next/commerce/engine/commerce-engine.ssr.js';
120
- export type { CommerceEngineDefinitionOptions, SSRCommerceEngine as CommerceEngine, } from './ssr-next/commerce/factories/build-factory.js';
120
+ export type { SSRCommerceEngine as CommerceEngine } from './ssr-next/commerce/factories/build-factory.js';
121
121
  export type { BuildConfig, SSRCommerceEngineOptions, } from './ssr-next/commerce/types/build.js';
122
122
  export { SolutionType } from './ssr-next/commerce/types/controller-constants.js';
123
- export type { ControllerDefinition, ControllerDefinitionsMap, ControllerWithKind, EngineDefinitionControllersPropsOption, HydratedState, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, OptionsTuple, } from './ssr-next/commerce/types/controller-definitions.js';
123
+ export type { CommerceEngineDefinitionControllersPropsOption as EngineDefinitionControllersPropsOption, ControllerDefinition, ControllerDefinitionsMap, ControllerWithKind, HydratedState, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, OptionsTuple, } from './ssr-next/commerce/types/controller-definitions.js';
124
124
  export type { InferControllerFromDefinition, InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitionsWithSolutionType, InferControllersMapFromDefinition, InferHydratedState, InferStaticState, } from './ssr-next/commerce/types/controller-inference.js';
125
- export type { CommerceEngineDefinition, CommerceEngineDefinitionBuildResult, EngineStaticState, FetchStaticState, HydrateStaticState, HydrateStaticStateOptions, } from './ssr-next/commerce/types/engine.js';
125
+ export type { CommerceEngineDefinition, CommerceEngineDefinitionBuildResult, CommerceEngineDefinitionOptions, EngineStaticState, FetchStaticState, HydrateStaticState, HydrateStaticStateOptions, } from './ssr-next/commerce/types/engine.js';
126
126
  export { Kind } from './ssr-next/commerce/types/kind.js';
127
127
  export type { CommerceAppState, CommerceProductListingParametersState, CommerceSearchParametersState, } from './state/commerce-app-state.js';
128
128
  export * from './features/commerce/configuration/configuration-actions-loader.js';
@@ -121,7 +121,7 @@ export type { CommerceEngineDefinition } from './ssr/commerce/engine/commerce-en
121
121
  export { defineCommerceEngine } from './ssr/commerce/engine/commerce-engine.ssr.js';
122
122
  export type { CommerceEngineDefinitionOptions, SSRCommerceEngine as CommerceEngine, } from './ssr/commerce/factories/build-factory.js';
123
123
  export { SolutionType } from './ssr/commerce/types/controller-constants.js';
124
- export type { ControllerDefinition, ControllerDefinitionsMap, ControllerWithKind, EngineDefinitionBuildResult, EngineDefinitionControllersPropsOption, HydratedState, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, OptionsTuple, } from './ssr/commerce/types/controller-definitions.js';
124
+ export type { ControllerDefinition, ControllerDefinitionsMap, ControllerWithKind, EngineDefinitionControllersPropsOption, HydratedState, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, OptionsTuple, } from './ssr/commerce/types/controller-definitions.js';
125
125
  export type { InferBuildResult, InferControllerFromDefinition, InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitionsWithSolutionType, InferControllersMapFromDefinition, InferHydratedState, InferStaticState, } from './ssr/commerce/types/controller-inference.js';
126
126
  export type { Build, BuildOptions, EngineDefinition, EngineStaticState, FetchStaticState, FetchStaticStateOptions, FromBuildResult, FromBuildResultOptions, HydrateStaticState, HydrateStaticStateOptions, } from './ssr/commerce/types/engine.js';
127
127
  export { Kind } from './ssr/commerce/types/kind.js';
@@ -2,7 +2,7 @@ import type { UnknownAction } from '@reduxjs/toolkit';
2
2
  import type { Controller } from '../../controllers/controller/headless-controller.js';
3
3
  import type { SSRCommerceEngine } from './factories/build-factory.js';
4
4
  import type { SolutionType } from './types/controller-constants.js';
5
- import type { ControllerDefinitionOption, ControllerDefinitionsMap } from './types/controller-definitions.js';
5
+ import type { ControllerDefinitionsMap } from './types/controller-definitions.js';
6
6
  import type { InferControllerPropsMapFromDefinitions, InferControllerStaticStateMapFromDefinitionsWithSolutionType, InferControllersMapFromDefinition } from './types/controller-inference.js';
7
7
  import type { EngineStaticState } from './types/engine.js';
8
8
  export declare function createStaticState<TSearchAction extends UnknownAction, TControllerDefinitions extends ControllerDefinitionsMap<Controller>>({ searchActions, controllers, }: {
@@ -15,4 +15,3 @@ export declare function buildControllerDefinitions<TControllerDefinitionsMap ext
15
15
  solutionType: TSolutionType;
16
16
  propsMap?: InferControllerPropsMapFromDefinitions<TControllerDefinitionsMap>;
17
17
  }): InferControllersMapFromDefinition<TControllerDefinitionsMap, TSolutionType>;
18
- export declare function ensureAtLeastOneSolutionType(options?: ControllerDefinitionOption): void;
@@ -1,10 +1,11 @@
1
1
  import type { BreadcrumbManager, BreadcrumbManagerState } from '../../../../controllers/commerce/core/breadcrumb-manager/headless-core-breadcrumb-manager.js';
2
- import type { ControllerDefinitionOption, SubControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
2
+ import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { BreadcrumbManager, BreadcrumbManagerState };
4
+ export type BreadcrumbManagerDefinition = SearchAndListingControllerDefinitionWithoutProps<BreadcrumbManager>;
4
5
  /**
5
6
  * Defines a `BreadcrumbManager` controller instance.
6
7
  * @group Definers
7
8
  *
8
9
  * @returns The `BreadcrumbManager` controller definition.
9
10
  */
10
- export declare function defineBreadcrumbManager<TOptions extends ControllerDefinitionOption | undefined>(options?: TOptions): SubControllerDefinitionWithoutProps<BreadcrumbManager, TOptions>;
11
+ export declare function defineBreadcrumbManager(): BreadcrumbManagerDefinition;
@@ -4,8 +4,7 @@ export type { Cart, CartInitialState, CartItem, CartProps, CartState };
4
4
  export interface CartBuildProps {
5
5
  initialState: CartInitialState;
6
6
  }
7
- export interface CartDefinition extends UniversalControllerDefinitionWithProps<Cart, CartBuildProps> {
8
- }
7
+ export type CartDefinition = UniversalControllerDefinitionWithProps<Cart, CartBuildProps>;
9
8
  /**
10
9
  * Defines a `Cart` controller instance.
11
10
  * @group Definers
@@ -1,10 +1,9 @@
1
1
  import { type Context, type ContextOptions, type ContextProps, type ContextState, type UserLocation, type View } from '../../../../controllers/commerce/context/headless-context.js';
2
2
  import type { UniversalControllerDefinitionWithProps } from '../../types/controller-definitions.js';
3
3
  export type { Context, ContextProps, ContextState, View, UserLocation, ContextOptions, };
4
- export interface ContextDefinition extends UniversalControllerDefinitionWithProps<Context, {
4
+ export type ContextDefinition = UniversalControllerDefinitionWithProps<Context, {
5
5
  initialState: ContextOptions;
6
- }> {
7
- }
6
+ }>;
8
7
  /**
9
8
  * Defines a `Context` controller instance.
10
9
  * @group Definers
@@ -1,10 +1,11 @@
1
1
  import type { DidYouMean, DidYouMeanState } from '../../../../controllers/commerce/search/did-you-mean/headless-did-you-mean.js';
2
2
  import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { DidYouMean, DidYouMeanState };
4
+ export type DidYouMeanDefinition = SearchOnlyControllerDefinitionWithoutProps<DidYouMean>;
4
5
  /**
5
6
  * Defines a `DidYouMean` controller instance.
6
7
  * @group Definers
7
8
  *
8
9
  * @returns The `DidYouMean` controller definition.
9
10
  */
10
- export declare function defineDidYouMean(): SearchOnlyControllerDefinitionWithoutProps<DidYouMean>;
11
+ export declare function defineDidYouMean(): DidYouMeanDefinition;
@@ -4,8 +4,7 @@ import type { FilterSuggestions, FilterSuggestionsState } from '../../../../cont
4
4
  import { type FilterSuggestionsGenerator, type GeneratedFilterSuggestionsControllers } from '../../../../controllers/commerce/filter-suggestions/headless-filter-suggestions-generator.js';
5
5
  import type { NonRecommendationControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
6
6
  export type { FilterSuggestionsGenerator, GeneratedFilterSuggestionsControllers, FieldSuggestionsFacet, CategoryFilterSuggestions, CategoryFilterSuggestionsState, FilterSuggestions, FilterSuggestionsState, };
7
- export interface FilterSuggestionsGeneratorDefinition extends NonRecommendationControllerDefinitionWithoutProps<FilterSuggestionsGenerator> {
8
- }
7
+ export type FilterSuggestionsGeneratorDefinition = NonRecommendationControllerDefinitionWithoutProps<FilterSuggestionsGenerator>;
9
8
  /**
10
9
  * Defines the `FilterSuggestionsGenerator` controller for the purpose of server-side rendering.
11
10
  * @group Definers
@@ -10,7 +10,7 @@ import type { NumericFacet, NumericFacetState, NumericFacetValue } from '../../.
10
10
  import type { RegularFacet, RegularFacetState } from '../../../../controllers/commerce/core/facets/regular/headless-commerce-regular-facet.js';
11
11
  import type { LocationFacetValue, RegularFacetValue } from '../../../../features/commerce/facets/facet-set/interfaces/response.js';
12
12
  import { SolutionType } from '../../types/controller-constants.js';
13
- import type { ControllerDefinitionOption, SubControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
13
+ import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
14
14
  export type { BaseFacetSearchResult, CategoryFacet, CategoryFacetState, CategoryFacetValue, CategoryFacetSearchResult, CoreCommerceFacet, DateFacet, DateFacetValue, DateFacetState, NumericFacet, NumericFacetValue, NumericFacetState, RegularFacet, RegularFacetState, RegularFacetValue, LocationFacet, LocationFacetState, LocationFacetValue, MappedGeneratedFacetController, };
15
15
  export type FacetGeneratorState = MappedFacetStates;
16
16
  export type MappedFacetStates = Array<MappedFacetState[FacetType]>;
@@ -18,10 +18,11 @@ export type { FacetType };
18
18
  export type MappedFacetState = {
19
19
  [T in FacetType]: T extends 'numericalRange' ? NumericFacetState : T extends 'regular' ? RegularFacetState : T extends 'dateRange' ? DateFacetState : T extends 'hierarchical' ? CategoryFacetState : T extends 'location' ? LocationFacetState : never;
20
20
  };
21
+ export type FacetGeneratorDefinition = SearchAndListingControllerDefinitionWithoutProps<FacetGenerator>;
21
22
  /**
22
23
  * @group Definers
23
24
  */
24
- export declare function defineFacetGenerator<TOptions extends ControllerDefinitionOption | undefined>(options?: TOptions): SubControllerDefinitionWithoutProps<FacetGenerator, TOptions>;
25
+ export declare function defineFacetGenerator(): FacetGeneratorDefinition;
25
26
  /**
26
27
  * The `FacetGenerator` headless sub-controller creates commerce facet sub-controllers from the Commerce API search or
27
28
  * product listing response.
@@ -1,8 +1,7 @@
1
1
  import { type InstantProducts, type InstantProductsOptions, type InstantProductsProps, type InstantProductsState } from '../../../../controllers/commerce/instant-products/headless-instant-products.js';
2
2
  import type { NonRecommendationControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { InstantProductsOptions, InstantProductsState, InstantProducts, InstantProductsProps, };
4
- export interface InstantProductsDefinition extends NonRecommendationControllerDefinitionWithoutProps<InstantProducts> {
5
- }
4
+ export type InstantProductsDefinition = NonRecommendationControllerDefinitionWithoutProps<InstantProducts>;
6
5
  /**
7
6
  * Defines the `InstantProducts` controller for the purpose of server-side rendering.
8
7
  * @group Definers
@@ -1,6 +1,7 @@
1
1
  import type { CorePaginationOptions, Pagination, PaginationOptions, PaginationProps, PaginationState } from '../../../../controllers/commerce/core/pagination/headless-core-commerce-pagination.js';
2
- import type { ControllerDefinitionOption, SubControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
2
+ import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { Pagination, PaginationProps, PaginationState, PaginationOptions, CorePaginationOptions, };
4
+ export type PaginationDefinition = SearchAndListingControllerDefinitionWithoutProps<Pagination>;
4
5
  /**
5
6
  * Defines a `Pagination` controller instance.
6
7
  * @group Definers
@@ -8,4 +9,4 @@ export type { Pagination, PaginationProps, PaginationState, PaginationOptions, C
8
9
  * @param props - The configurable `Pagination` properties.
9
10
  * @returns The `Pagination` controller definition.
10
11
  */
11
- export declare function definePagination<TOptions extends ControllerDefinitionOption | undefined>(props?: PaginationProps & TOptions): SubControllerDefinitionWithoutProps<Pagination, TOptions>;
12
+ export declare function definePagination(props?: PaginationProps): PaginationDefinition;
@@ -2,25 +2,15 @@ import type { ParameterManager, ParameterManagerProps, ParameterManagerState } f
2
2
  import type { Parameters } from '../../../../features/commerce/parameters/parameters-actions.js';
3
3
  import type { ProductListingParameters } from '../../../../features/commerce/product-listing-parameters/product-listing-parameters-actions.js';
4
4
  import type { CommerceSearchParameters } from '../../../../features/commerce/search-parameters/search-parameters-actions.js';
5
- import type { ControllerDefinitionOption, SubControllerDefinitionWithProps } from '../../types/controller-definitions.js';
5
+ import type { SearchAndListingControllerDefinitionWithProps } from '../../types/controller-definitions.js';
6
6
  export type { ParameterManager, ParameterManagerProps, ParameterManagerState, Parameters, ProductListingParameters, CommerceSearchParameters, };
7
- export type ParameterManagerDefinition<TOptions extends ControllerDefinitionOption | undefined> = SubControllerDefinitionWithProps<ParameterManager<MappedParameterTypes<TOptions>>, TOptions, SSRParameterManagerProps<MappedParameterTypes<TOptions>>>;
7
+ export type ParameterManagerDefinition = SearchAndListingControllerDefinitionWithProps<ParameterManager<ProductListingParameters | CommerceSearchParameters>, SSRParameterManagerProps<ProductListingParameters | CommerceSearchParameters>>;
8
8
  /**
9
9
  * Defines a `ParameterManager` controller instance.
10
10
  * @group Definers
11
11
  *
12
12
  * @returns The `ParameterManager` controller definition.
13
13
  */
14
- export declare function defineParameterManager<TOptions extends ControllerDefinitionOption | undefined>(options?: TOptions): ParameterManagerDefinition<TOptions>;
14
+ export declare function defineParameterManager(): ParameterManagerDefinition;
15
15
  export interface SSRParameterManagerProps<T extends Parameters> extends Omit<ParameterManagerProps<T>, 'excludeDefaultParameters'> {
16
16
  }
17
- type MappedParameterTypes<TOptions extends ControllerDefinitionOption | undefined> = TOptions extends {
18
- listing: true;
19
- search: true;
20
- } | undefined ? ProductListingParameters | CommerceSearchParameters : TOptions extends {
21
- listing: true;
22
- search: false;
23
- } ? ProductListingParameters : TOptions extends {
24
- listing: false;
25
- search: true;
26
- } ? CommerceSearchParameters : never;
@@ -1,12 +1,13 @@
1
1
  import { type ProductListing, type ProductListingState } from '../../../../controllers/commerce/product-listing/headless-product-listing.js';
2
2
  import { type Search } from '../../../../controllers/commerce/search/headless-search.js';
3
- import type { ControllerDefinitionOption, SubControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
+ import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
4
4
  export type { Search, ProductListing, ProductListingState as ProductListState };
5
5
  export type ProductList = Pick<ProductListing | Search, 'state' | 'subscribe' | 'interactiveProduct' | 'promoteChildToParent'>;
6
+ export type ProductListDefinition = SearchAndListingControllerDefinitionWithoutProps<ProductList>;
6
7
  /**
7
8
  * Defines a `ProductList` controller instance.
8
9
  * @group Definers
9
10
  *
10
11
  * @returns The `ProductList` controller definition.
11
12
  */
12
- export declare function defineProductList<TOptions extends ControllerDefinitionOption | undefined>(options?: TOptions): SubControllerDefinitionWithoutProps<ProductList, TOptions>;
13
+ export declare function defineProductList(): ProductListDefinition;
@@ -1,8 +1,7 @@
1
1
  import { type ProductView as BaseProductView } from '../../../../controllers/commerce/product-view/headless-product-view.js';
2
2
  import { type Controller } from '../../../../controllers/controller/headless-controller.js';
3
3
  import type { NonRecommendationControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
4
- interface ProductViewDefinition extends NonRecommendationControllerDefinitionWithoutProps<ProductView> {
5
- }
4
+ export type ProductViewDefinition = NonRecommendationControllerDefinitionWithoutProps<ProductView>;
6
5
  /**
7
6
  * Defines a `ProductView` controller instance.
8
7
  *
@@ -17,4 +16,3 @@ interface ProductViewDefinition extends NonRecommendationControllerDefinitionWit
17
16
  export declare function defineProductView(): ProductViewDefinition;
18
17
  export interface ProductView extends BaseProductView, Controller {
19
18
  }
20
- export {};
@@ -1,8 +1,7 @@
1
1
  import { type RecentQueriesList, type RecentQueriesListInitialState, type RecentQueriesListOptions, type RecentQueriesListProps, type RecentQueriesState } from '../../../../controllers/commerce/recent-queries-list/headless-recent-queries-list.js';
2
2
  import type { NonRecommendationControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { RecentQueriesListInitialState, RecentQueriesListOptions, RecentQueriesState, RecentQueriesList, RecentQueriesListProps, };
4
- export interface RecentQueriesListDefinition extends NonRecommendationControllerDefinitionWithoutProps<RecentQueriesList> {
5
- }
4
+ export type RecentQueriesListDefinition = NonRecommendationControllerDefinitionWithoutProps<RecentQueriesList>;
6
5
  /**
7
6
  * Defines the `RecentQueriesList` controller for the purpose of server-side rendering.
8
7
  * @group Definers
@@ -1,8 +1,7 @@
1
1
  import { type CoreSearchBox, type SearchBox, type SearchBoxOptions, type SearchBoxProps, type SearchBoxState, type Suggestion } from '../../../../controllers/commerce/search-box/headless-search-box.js';
2
2
  import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { CoreSearchBox, SearchBox, SearchBoxProps, SearchBoxState, SearchBoxOptions, Suggestion, };
4
- export interface SearchBoxDefinition extends SearchOnlyControllerDefinitionWithoutProps<SearchBox> {
5
- }
4
+ export type SearchBoxDefinition = SearchOnlyControllerDefinitionWithoutProps<SearchBox>;
6
5
  /**
7
6
  * Defines a `SearchBox` controller instance.
8
7
  * @group Definers
@@ -1,6 +1,7 @@
1
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';
2
+ import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { Sort, SortProps, SortState };
4
+ export type SortDefinition = SearchAndListingControllerDefinitionWithoutProps<Sort>;
4
5
  /**
5
6
  * Defines a `Sort` controller instance.
6
7
  * @group Definers
@@ -8,4 +9,4 @@ export type { Sort, SortProps, SortState };
8
9
  * @param props - The configurable `Sort` properties.
9
10
  * @returns The `Sort` controller definition.
10
11
  */
11
- export declare function defineSort<TOptions extends ControllerDefinitionOption | undefined>(props?: SortProps & TOptions): SubControllerDefinitionWithoutProps<Sort, TOptions>;
12
+ export declare function defineSort(props?: SortProps): SortDefinition;
@@ -2,8 +2,7 @@ import { type StandaloneSearchBox, type StandaloneSearchBoxState } from '../../.
2
2
  import type { StandaloneSearchBoxProps } from '../../../../controllers/standalone-search-box/headless-standalone-search-box.js';
3
3
  import type { ListingAndStandaloneControllerWithoutProps } from '../../types/controller-definitions.js';
4
4
  export type { StandaloneSearchBoxState, StandaloneSearchBox, StandaloneSearchBoxProps, };
5
- export interface StandaloneSearchBoxDefinition extends ListingAndStandaloneControllerWithoutProps<StandaloneSearchBox> {
6
- }
5
+ export type StandaloneSearchBoxDefinition = ListingAndStandaloneControllerWithoutProps<StandaloneSearchBox>;
7
6
  /**
8
7
  * Defines the `StandaloneSearchBox` controller for the purpose of server-side rendering.
9
8
  * @group Definers
@@ -2,12 +2,13 @@ import type { Summary, SummaryState } from '../../../../controllers/commerce/cor
2
2
  import type { ProductListingSummaryState } from '../../../../controllers/commerce/product-listing/summary/headless-product-listing-summary.js';
3
3
  import type { RecommendationsSummaryState } from '../../../../controllers/commerce/recommendations/summary/headless-recommendations-summary.js';
4
4
  import type { SearchSummaryState } from '../../../../controllers/commerce/search/summary/headless-search-summary.js';
5
- import type { ControllerDefinitionOption, SubControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
5
+ import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
6
6
  export type { Summary, ProductListingSummaryState, RecommendationsSummaryState, SearchSummaryState, SummaryState, };
7
+ export type SummaryDefinition = SearchAndListingControllerDefinitionWithoutProps<Summary<ProductListingSummaryState | SearchSummaryState | RecommendationsSummaryState>>;
7
8
  /**
8
9
  * Defines a `Summary` controller instance.
9
10
  * @group Definers
10
11
  *
11
12
  * @returns The `Summary` controller definition.
12
13
  */
13
- export declare function defineSummary<TOptions extends ControllerDefinitionOption | undefined>(options?: TOptions): SubControllerDefinitionWithoutProps<Summary<ProductListingSummaryState | SearchSummaryState | RecommendationsSummaryState>, TOptions>;
14
+ export declare function defineSummary(): SummaryDefinition;
@@ -1,8 +1,7 @@
1
1
  import type { NotifyTrigger, NotifyTriggerState } from '../../../../controllers/core/triggers/headless-core-notify-trigger.js';
2
2
  import type { SearchAndListingControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { NotifyTrigger, NotifyTriggerState };
4
- export interface NotifyTriggerDefinition extends SearchAndListingControllerDefinitionWithoutProps<NotifyTrigger> {
5
- }
4
+ export type NotifyTriggerDefinition = SearchAndListingControllerDefinitionWithoutProps<NotifyTrigger>;
6
5
  /**
7
6
  * Defines the `NotifyTrigger` controller for the purpose of server-side rendering.
8
7
  * @group Definers
@@ -2,8 +2,7 @@ import type { QueryTrigger } from '../../../../controllers/core/triggers/headles
2
2
  import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { QueryTriggerState } from '../../../../controllers/core/triggers/headless-core-query-trigger.js';
4
4
  export type { QueryTrigger };
5
- export interface QueryTriggerDefinition extends SearchOnlyControllerDefinitionWithoutProps<QueryTrigger> {
6
- }
5
+ export type QueryTriggerDefinition = SearchOnlyControllerDefinitionWithoutProps<QueryTrigger>;
7
6
  /**
8
7
  * Defines the `QueryTrigger` controller for the purpose of server-side rendering.
9
8
  * @group Definers
@@ -1,8 +1,7 @@
1
1
  import type { RedirectionTrigger, RedirectionTriggerState } from '../../../../controllers/core/triggers/headless-core-redirection-trigger.js';
2
2
  import type { SearchOnlyControllerDefinitionWithoutProps } from '../../types/controller-definitions.js';
3
3
  export type { RedirectionTrigger, RedirectionTriggerState };
4
- export interface RedirectionTriggerDefinition extends SearchOnlyControllerDefinitionWithoutProps<RedirectionTrigger> {
5
- }
4
+ export type RedirectionTriggerDefinition = SearchOnlyControllerDefinitionWithoutProps<RedirectionTrigger>;
6
5
  /**
7
6
  * Defines the `RedirectionTrigger` controller for the purpose of server-side rendering.
8
7
  * @group Definers
@@ -2,10 +2,9 @@
2
2
  * Utility functions to be used for Commerce Server Side Rendering.
3
3
  */
4
4
  import type { Controller } from '../../../controllers/controller/headless-controller.js';
5
- import type { CommerceEngineDefinitionOptions } from '../factories/build-factory.js';
6
5
  import { SolutionType } from '../types/controller-constants.js';
7
6
  import type { ControllerDefinitionsMap } from '../types/controller-definitions.js';
8
- import type { CommerceEngineDefinition } from '../types/engine.js';
7
+ import type { CommerceEngineDefinition, CommerceEngineDefinitionOptions } from '../types/engine.js';
9
8
  /**
10
9
  * Initializes a Commerce engine definition in SSR with given controllers definitions and commerce engine config.
11
10
  * @param options - The commerce engine definition
@@ -1,10 +1,7 @@
1
1
  import type { Action } from '@reduxjs/toolkit';
2
2
  import { type CommerceEngine } from '../../../app/commerce-engine/commerce-engine.js';
3
- import type { Controller } from '../../../controllers/controller/headless-controller.js';
4
- import type { SSRCommerceEngineOptions } from '../types/build.js';
5
3
  import { SolutionType } from '../types/controller-constants.js';
6
- import type { ControllerDefinitionsMap } from '../types/controller-definitions.js';
7
- import type { BuildParameters, CommerceControllerDefinitionsMap, EngineDefinitionOptions } from '../types/engine.js';
4
+ import type { BuildParameters, CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions } from '../types/engine.js';
8
5
  /**
9
6
  * The SSR commerce engine.
10
7
  *
@@ -16,7 +13,6 @@ export interface SSRCommerceEngine extends CommerceEngine {
16
13
  */
17
14
  waitForRequestCompletedAction(): Promise<Action>[];
18
15
  }
19
- export type CommerceEngineDefinitionOptions<TControllers extends ControllerDefinitionsMap<Controller> = ControllerDefinitionsMap<Controller>> = EngineDefinitionOptions<SSRCommerceEngineOptions, TControllers>;
20
16
  export declare const buildFactory: <TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions, options: CommerceEngineDefinitionOptions<TControllerDefinitions>) => <T extends SolutionType>(solutionType: T) => (...[buildOptions]: BuildParameters<TControllerDefinitions>) => Promise<{
21
17
  engine: SSRCommerceEngine;
22
18
  controllers: import("../types/controller-inference.js").InferControllersMapFromDefinition<TControllerDefinitions, T>;
@@ -1,5 +1,4 @@
1
1
  import type { SolutionType } from '../types/controller-constants.js';
2
2
  import type { AugmentedControllerDefinition } from '../types/controller-definitions.js';
3
- import type { CommerceControllerDefinitionsMap, HydrateStaticStateFunction } from '../types/engine.js';
4
- import { type CommerceEngineDefinitionOptions } from './build-factory.js';
3
+ import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions, HydrateStaticStateFunction } from '../types/engine.js';
5
4
  export declare function hydratedStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): (solutionType: SolutionType) => HydrateStaticStateFunction<TControllerDefinitions>;
@@ -1,3 +1,2 @@
1
- import type { CommerceControllerDefinitionsMap, HydrateStaticStateFunction } from '../types/engine.js';
2
- import { type CommerceEngineDefinitionOptions } from './build-factory.js';
1
+ import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions, HydrateStaticStateFunction } from '../types/engine.js';
3
2
  export declare function hydratedRecommendationStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: TControllerDefinitions, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): HydrateStaticStateFunction<TControllerDefinitions>;
@@ -1,4 +1,3 @@
1
1
  import type { AugmentedControllerDefinition } from '../types/controller-definitions.js';
2
- import type { CommerceControllerDefinitionsMap, FetchStaticStateFunction } from '../types/engine.js';
3
- import { type CommerceEngineDefinitionOptions } from './build-factory.js';
2
+ import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions, FetchStaticStateFunction } from '../types/engine.js';
4
3
  export declare function fetchRecommendationStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): FetchStaticStateFunction<TControllerDefinitions>;
@@ -1,5 +1,4 @@
1
1
  import { SolutionType } from '../types/controller-constants.js';
2
2
  import type { AugmentedControllerDefinition } from '../types/controller-definitions.js';
3
- import type { CommerceControllerDefinitionsMap, FetchStaticStateFunction } from '../types/engine.js';
4
- import { type CommerceEngineDefinitionOptions } from './build-factory.js';
3
+ import type { CommerceControllerDefinitionsMap, CommerceEngineDefinitionOptions, FetchStaticStateFunction } from '../types/engine.js';
5
4
  export declare function fetchStaticStateFactory<TControllerDefinitions extends CommerceControllerDefinitionsMap>(controllerDefinitions: AugmentedControllerDefinition<TControllerDefinitions>, options: CommerceEngineDefinitionOptions<TControllerDefinitions>): (solutionType: SolutionType) => FetchStaticStateFunction<TControllerDefinitions>;
@@ -6,7 +6,7 @@ import type { CartInitialState } from '../controllers/cart/headless-cart.ssr.js'
6
6
  import type { ContextOptions } from '../controllers/context/headless-context.ssr.js';
7
7
  import type { ParameterManagerState, Parameters } from '../controllers/parameter-manager/headless-core-parameter-manager.ssr.js';
8
8
  import type { SolutionType } from './controller-constants.js';
9
- import type { ControllerDefinitionsMap, EngineDefinitionControllersPropsOption, IsRecommendationController } from './controller-definitions.js';
9
+ import type { CommerceEngineDefinitionControllersPropsOption, ControllerDefinitionsMap, IsRecommendationController } from './controller-definitions.js';
10
10
  import type { CommerceEngineDefinitionBuildResult } from './engine.js';
11
11
  export interface SearchBuildConfig extends CommonBuildConfig {
12
12
  searchParams: ParameterManagerState<Parameters & {
@@ -86,4 +86,4 @@ export type BuildConfig<TControllers extends ControllerDefinitionsMap<Controller
86
86
  /**
87
87
  * @internal
88
88
  */
89
- export type Build<TControllersMap extends ControllersMap, TControllersProps extends ControllersPropsMap, TControllersDefinitionsMap extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = (...params: OptionsTuple<BuildConfig<TControllersDefinitionsMap, TSolutionType> & EngineDefinitionControllersPropsOption<TControllersDefinitionsMap, TControllersProps, TSolutionType>>) => Promise<CommerceEngineDefinitionBuildResult<TControllersMap>>;
89
+ export type Build<TControllersMap extends ControllersMap, TControllersProps extends ControllersPropsMap, TControllersDefinitionsMap extends ControllerDefinitionsMap<Controller>, TSolutionType extends SolutionType> = (...params: OptionsTuple<BuildConfig<TControllersDefinitionsMap, TSolutionType> & CommerceEngineDefinitionControllersPropsOption<TControllersDefinitionsMap, TControllersProps, TSolutionType>>) => Promise<CommerceEngineDefinitionBuildResult<TControllersMap>>;
@@ -1,15 +1,14 @@
1
1
  import type { Controller } from '../../../controllers/controller/headless-controller.js';
2
- import type { InvalidControllerDefinition } from '../../common/errors.js';
2
+ import type { InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers } from '../../common/types/controller-inference.js';
3
3
  import type { ControllersPropsMap } from '../../common/types/controllers.js';
4
- import type { HydratedState } from '../../common/types/hydrate-static-state.js';
5
- import type { InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers } from '../../common/types/inference.js';
6
4
  import type { HasKey, HasRequiredKeys, OptionsTuple } from '../../common/types/utilities.js';
7
5
  import type { CartDefinition } from '../controllers/cart/headless-cart.ssr.js';
8
6
  import type { ContextDefinition } from '../controllers/context/headless-context.ssr.js';
9
7
  import type { ParameterManagerDefinition } from '../controllers/parameter-manager/headless-core-parameter-manager.ssr.js';
10
8
  import type { SSRCommerceEngine } from '../factories/build-factory.js';
11
9
  import { type recommendationInternalOptionKey, SolutionType } from './controller-constants.js';
12
- import type { ListingAndStandaloneController, ListingOnlyController, NonRecommendationController, RecommendationOnlyController, SearchAndListingController, SearchOnlyController, UniversalController } from './controller-scopes.js';
10
+ import type { ListingAndStandaloneController, NonRecommendationController, RecommendationOnlyController, SearchAndListingController, SearchOnlyController, UniversalController } from './controller-scopes.js';
11
+ import type { HydratedState } from './hydrate-static-state.js';
13
12
  import type { Kind } from './kind.js';
14
13
  import type { HasSolutionType } from './utilities.js';
15
14
  export type { HydratedState, OptionsTuple, InferControllerStaticStateFromController, InferControllerStaticStateMapFromControllers, };
@@ -48,10 +47,7 @@ export interface ControllerDefinitionsMap<TController extends Controller> {
48
47
  [customName: string]: ControllerDefinition<TController>;
49
48
  }
50
49
  type BakedInControllerDefinitions = {
51
- parameterManager: ParameterManagerDefinition<{
52
- listing: true;
53
- search: true;
54
- }>;
50
+ parameterManager: ParameterManagerDefinition;
55
51
  context: ContextDefinition;
56
52
  cart: CartDefinition;
57
53
  };
@@ -83,9 +79,9 @@ export type FilteredBakedInControllers<TSolutionType extends SolutionType> = {
83
79
  */
84
80
  export type AugmentedControllerDefinition<TControllerDefinitions extends ControllerDefinitionsMap<Controller>> = TControllerDefinitions & BakedInControllerDefinitions;
85
81
  /**
86
- * This type defines the required and optional controller props for the engine definition.
82
+ * This type defines the required and optional controller props for the commerce engine definition.
87
83
  */
88
- export type EngineDefinitionControllersPropsOption<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, TSolutionType extends SolutionType> = RequiredEngineDefinitionControllersPropsOption<TControllers, TControllersPropsMap, TSolutionType>;
84
+ export type CommerceEngineDefinitionControllersPropsOption<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, TSolutionType extends SolutionType> = RequiredEngineDefinitionControllersPropsOption<TControllers, TControllersPropsMap, TSolutionType>;
89
85
  type RequiredEngineDefinitionControllersPropsOption<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, TSolutionType extends SolutionType> = {
90
86
  [K in keyof TControllers as HasKey<TControllers[K], TSolutionType> extends never ? never : IsRecommendationController<TControllers[K]> extends never ? HasRequiredKeys<DefaultControllerProps<TControllers, TControllersPropsMap, K>> extends false ? never : 'controllers' : never]: DefaultControllerProps<TControllers, TControllersPropsMap, K>;
91
87
  };
@@ -93,51 +89,10 @@ export type IsRecommendationController<TController extends ControllerDefinition<
93
89
  type DefaultControllerProps<TControllers extends ControllerDefinitionsMap<Controller>, TControllersPropsMap extends ControllersPropsMap, K extends keyof TControllers> = {
94
90
  [I in keyof TControllersPropsMap as I extends K ? I : never]: TControllersPropsMap[I];
95
91
  };
96
- export interface ControllerDefinitionOption {
97
- /**
98
- * Whether the controller will be used in a product listing context.
99
- * @defaultValue true
100
- */
101
- listing?: boolean;
102
- /**
103
- * Whether the controller will be used in a search page context.
104
- * @defaultValue true
105
- */
106
- search?: boolean;
107
- }
108
92
  export type SearchOnlyControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & SearchOnlyController;
109
- type SearchOnlyControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & SearchOnlyController;
110
93
  export type ListingAndStandaloneControllerWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & ListingAndStandaloneController;
111
- type ListingOnlyControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & ListingOnlyController;
112
- type ListingOnlyControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & ListingOnlyController;
113
94
  export type RecommendationOnlyControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & RecommendationOnlyController;
114
95
  export type NonRecommendationControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & NonRecommendationController;
115
96
  export type UniversalControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & UniversalController;
116
97
  export type SearchAndListingControllerDefinitionWithoutProps<TController extends Controller> = ControllerDefinitionWithoutProps<TController> & SearchAndListingController;
117
- type SearchAndListingControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & SearchAndListingController;
118
- export type SubControllerDefinitionWithoutProps<TController extends Controller, TDefinition extends ControllerDefinitionOption | undefined> = TDefinition extends {
119
- listing?: true;
120
- search?: true;
121
- } | undefined ? SearchAndListingControllerDefinitionWithoutProps<TController> : TDefinition extends {
122
- listing?: true;
123
- search?: false;
124
- } ? ListingOnlyControllerDefinitionWithoutProps<TController> : TDefinition extends {
125
- listing?: false;
126
- search?: true;
127
- } ? SearchOnlyControllerDefinitionWithoutProps<TController> : TDefinition extends {
128
- listing: false;
129
- search: false;
130
- } ? InvalidControllerDefinition : never;
131
- export type SubControllerDefinitionWithProps<TController extends Controller, TDefinition extends ControllerDefinitionOption | undefined, TProps> = TDefinition extends {
132
- listing?: true;
133
- search?: true;
134
- } | undefined ? SearchAndListingControllerDefinitionWithProps<TController, TProps> : TDefinition extends {
135
- listing?: true;
136
- search?: false;
137
- } ? ListingOnlyControllerDefinitionWithProps<TController, TProps> : TDefinition extends {
138
- listing?: false;
139
- search?: true;
140
- } ? SearchOnlyControllerDefinitionWithProps<TController, TProps> : TDefinition extends {
141
- listing: false;
142
- search: false;
143
- } ? InvalidControllerDefinition : never;
98
+ export type SearchAndListingControllerDefinitionWithProps<TController extends Controller, TProps> = ControllerDefinitionWithProps<TController, TProps> & SearchAndListingController;