@gradientedge/commercetools-utils 5.9.0 → 5.10.0

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 (695) hide show
  1. package/dist/cjs/api/CommercetoolsApi.d.ts +1252 -0
  2. package/dist/cjs/api/CommercetoolsApi.d.ts.map +1 -0
  3. package/dist/cjs/api/CommercetoolsApi.js +2106 -0
  4. package/dist/cjs/api/CommercetoolsApi.js.map +1 -0
  5. package/dist/cjs/api/index.d.ts +3 -0
  6. package/dist/cjs/api/index.d.ts.map +1 -0
  7. package/dist/cjs/api/index.js +19 -0
  8. package/dist/cjs/api/index.js.map +1 -0
  9. package/dist/cjs/api/types.d.ts +33 -0
  10. package/dist/cjs/api/types.d.ts.map +1 -0
  11. package/dist/cjs/api/types.js +3 -0
  12. package/dist/cjs/api/types.js.map +1 -0
  13. package/dist/cjs/auth/CommercetoolsAuth.d.ts +182 -0
  14. package/dist/cjs/auth/CommercetoolsAuth.d.ts.map +1 -0
  15. package/dist/cjs/auth/CommercetoolsAuth.js +238 -0
  16. package/dist/cjs/auth/CommercetoolsAuth.js.map +1 -0
  17. package/dist/cjs/auth/CommercetoolsAuthApi.d.ts +83 -0
  18. package/dist/cjs/auth/CommercetoolsAuthApi.d.ts.map +1 -0
  19. package/dist/cjs/auth/CommercetoolsAuthApi.js +169 -0
  20. package/dist/cjs/auth/CommercetoolsAuthApi.js.map +1 -0
  21. package/dist/cjs/auth/CommercetoolsGrant.d.ts +66 -0
  22. package/dist/cjs/auth/CommercetoolsGrant.d.ts.map +1 -0
  23. package/dist/cjs/auth/CommercetoolsGrant.js +99 -0
  24. package/dist/cjs/auth/CommercetoolsGrant.js.map +1 -0
  25. package/dist/cjs/auth/constants.d.ts +7 -0
  26. package/dist/cjs/auth/constants.d.ts.map +1 -0
  27. package/dist/cjs/auth/constants.js +31 -0
  28. package/dist/cjs/auth/constants.js.map +1 -0
  29. package/dist/cjs/auth/index.d.ts +4 -0
  30. package/dist/cjs/auth/index.d.ts.map +1 -0
  31. package/dist/cjs/auth/index.js +19 -0
  32. package/dist/cjs/auth/index.js.map +1 -0
  33. package/dist/cjs/auth/scopes.d.ts +11 -0
  34. package/dist/cjs/auth/scopes.d.ts.map +1 -0
  35. package/dist/cjs/auth/scopes.js +30 -0
  36. package/dist/cjs/auth/scopes.js.map +1 -0
  37. package/dist/cjs/auth/types.d.ts +118 -0
  38. package/dist/cjs/auth/types.d.ts.map +1 -0
  39. package/dist/cjs/auth/types.js +28 -0
  40. package/dist/cjs/auth/types.js.map +1 -0
  41. package/dist/{typings → cjs}/auth/utils.d.ts +1 -0
  42. package/dist/cjs/auth/utils.d.ts.map +1 -0
  43. package/dist/cjs/auth/utils.js +14 -0
  44. package/dist/cjs/auth/utils.js.map +1 -0
  45. package/dist/cjs/constants.d.ts +33 -0
  46. package/dist/cjs/constants.d.ts.map +1 -0
  47. package/dist/cjs/constants.js +46 -0
  48. package/dist/cjs/constants.js.map +1 -0
  49. package/dist/cjs/error/CommercetoolsError.d.ts +33 -0
  50. package/dist/cjs/error/CommercetoolsError.d.ts.map +1 -0
  51. package/dist/cjs/error/CommercetoolsError.js +110 -0
  52. package/dist/cjs/error/CommercetoolsError.js.map +1 -0
  53. package/dist/cjs/error/index.d.ts +2 -0
  54. package/dist/cjs/error/index.d.ts.map +1 -0
  55. package/dist/cjs/error/index.js +18 -0
  56. package/dist/cjs/error/index.js.map +1 -0
  57. package/dist/cjs/index.d.ts +8 -0
  58. package/dist/cjs/index.d.ts.map +1 -0
  59. package/dist/cjs/index.js +26 -0
  60. package/dist/cjs/index.js.map +1 -0
  61. package/dist/cjs/models/associate-role.d.ts +319 -0
  62. package/dist/cjs/models/associate-role.d.ts.map +1 -0
  63. package/dist/cjs/models/associate-role.js +8 -0
  64. package/dist/cjs/models/associate-role.js.map +1 -0
  65. package/dist/cjs/models/attribute-group.d.ts +253 -0
  66. package/dist/cjs/models/attribute-group.d.ts.map +1 -0
  67. package/dist/cjs/models/attribute-group.js +8 -0
  68. package/dist/cjs/models/attribute-group.js.map +1 -0
  69. package/dist/cjs/models/business-unit.d.ts +1197 -0
  70. package/dist/cjs/models/business-unit.d.ts.map +1 -0
  71. package/dist/cjs/models/business-unit.js +8 -0
  72. package/dist/cjs/models/business-unit.js.map +1 -0
  73. package/dist/cjs/models/cart-discount.d.ts +716 -0
  74. package/dist/cjs/models/cart-discount.d.ts.map +1 -0
  75. package/dist/cjs/models/cart-discount.js +8 -0
  76. package/dist/cjs/models/cart-discount.js.map +1 -0
  77. package/dist/cjs/models/cart.d.ts +3350 -0
  78. package/dist/cjs/models/cart.d.ts.map +1 -0
  79. package/dist/cjs/models/cart.js +8 -0
  80. package/dist/cjs/models/cart.js.map +1 -0
  81. package/dist/cjs/models/category.d.ts +634 -0
  82. package/dist/cjs/models/category.d.ts.map +1 -0
  83. package/dist/cjs/models/category.js +8 -0
  84. package/dist/cjs/models/category.js.map +1 -0
  85. package/dist/cjs/models/channel.d.ts +379 -0
  86. package/dist/cjs/models/channel.d.ts.map +1 -0
  87. package/dist/cjs/models/channel.js +8 -0
  88. package/dist/cjs/models/channel.js.map +1 -0
  89. package/dist/cjs/models/common.d.ts +1096 -0
  90. package/dist/cjs/models/common.d.ts.map +1 -0
  91. package/dist/cjs/models/common.js +8 -0
  92. package/dist/cjs/models/common.js.map +1 -0
  93. package/dist/cjs/models/custom-object.d.ts +151 -0
  94. package/dist/cjs/models/custom-object.d.ts.map +1 -0
  95. package/dist/cjs/models/custom-object.js +8 -0
  96. package/dist/cjs/models/custom-object.js.map +1 -0
  97. package/dist/cjs/models/customer-group.d.ts +235 -0
  98. package/dist/cjs/models/customer-group.d.ts.map +1 -0
  99. package/dist/cjs/models/customer-group.js +8 -0
  100. package/dist/cjs/models/customer-group.js.map +1 -0
  101. package/dist/cjs/models/customer.d.ts +1221 -0
  102. package/dist/cjs/models/customer.d.ts.map +1 -0
  103. package/dist/cjs/models/customer.js +8 -0
  104. package/dist/cjs/models/customer.js.map +1 -0
  105. package/dist/cjs/models/discount-code.d.ts +439 -0
  106. package/dist/cjs/models/discount-code.d.ts.map +1 -0
  107. package/dist/cjs/models/discount-code.js +8 -0
  108. package/dist/cjs/models/discount-code.js.map +1 -0
  109. package/dist/cjs/models/error.d.ts +3062 -0
  110. package/dist/cjs/models/error.d.ts.map +1 -0
  111. package/dist/cjs/models/error.js +8 -0
  112. package/dist/cjs/models/error.js.map +1 -0
  113. package/dist/cjs/models/extension.d.ts +335 -0
  114. package/dist/cjs/models/extension.d.ts.map +1 -0
  115. package/dist/cjs/models/extension.js +8 -0
  116. package/dist/cjs/models/extension.js.map +1 -0
  117. package/dist/cjs/models/graph-ql.d.ts +63 -0
  118. package/dist/cjs/models/graph-ql.d.ts.map +1 -0
  119. package/dist/cjs/models/graph-ql.js +8 -0
  120. package/dist/cjs/models/graph-ql.js.map +1 -0
  121. package/dist/cjs/models/index.d.ts +42 -0
  122. package/dist/cjs/models/index.d.ts.map +1 -0
  123. package/dist/cjs/models/index.js +58 -0
  124. package/dist/cjs/models/index.js.map +1 -0
  125. package/dist/cjs/models/inventory.d.ts +327 -0
  126. package/dist/cjs/models/inventory.d.ts.map +1 -0
  127. package/dist/cjs/models/inventory.js +8 -0
  128. package/dist/cjs/models/inventory.js.map +1 -0
  129. package/dist/cjs/models/me.d.ts +2483 -0
  130. package/dist/cjs/models/me.d.ts.map +1 -0
  131. package/dist/cjs/models/me.js +8 -0
  132. package/dist/cjs/models/me.js.map +1 -0
  133. package/dist/cjs/models/message.d.ts +15095 -0
  134. package/dist/cjs/models/message.d.ts.map +1 -0
  135. package/dist/cjs/models/message.js +8 -0
  136. package/dist/cjs/models/message.js.map +1 -0
  137. package/dist/cjs/models/order-edit.d.ts +1645 -0
  138. package/dist/cjs/models/order-edit.d.ts.map +1 -0
  139. package/dist/cjs/models/order-edit.js +8 -0
  140. package/dist/cjs/models/order-edit.js.map +1 -0
  141. package/dist/{typings → cjs}/models/order.d.ts +1490 -15
  142. package/dist/cjs/models/order.d.ts.map +1 -0
  143. package/dist/cjs/models/order.js +8 -0
  144. package/dist/cjs/models/order.js.map +1 -0
  145. package/dist/cjs/models/payment.d.ts +734 -0
  146. package/dist/cjs/models/payment.d.ts.map +1 -0
  147. package/dist/cjs/models/payment.js +8 -0
  148. package/dist/cjs/models/payment.js.map +1 -0
  149. package/dist/cjs/models/product-discount.d.ts +461 -0
  150. package/dist/cjs/models/product-discount.d.ts.map +1 -0
  151. package/dist/cjs/models/product-discount.js +8 -0
  152. package/dist/cjs/models/product-discount.js.map +1 -0
  153. package/dist/cjs/models/product-selection.d.ts +638 -0
  154. package/dist/cjs/models/product-selection.d.ts.map +1 -0
  155. package/dist/cjs/models/product-selection.js +8 -0
  156. package/dist/cjs/models/product-selection.js.map +1 -0
  157. package/dist/cjs/models/product-type.d.ts +774 -0
  158. package/dist/cjs/models/product-type.d.ts.map +1 -0
  159. package/dist/cjs/models/product-type.js +8 -0
  160. package/dist/cjs/models/product-type.js.map +1 -0
  161. package/dist/cjs/models/product.d.ts +2282 -0
  162. package/dist/cjs/models/product.d.ts.map +1 -0
  163. package/dist/cjs/models/product.js +8 -0
  164. package/dist/cjs/models/product.js.map +1 -0
  165. package/dist/cjs/models/project.d.ts +381 -0
  166. package/dist/cjs/models/project.d.ts.map +1 -0
  167. package/dist/cjs/models/project.js +8 -0
  168. package/dist/cjs/models/project.js.map +1 -0
  169. package/dist/cjs/models/quote-request.d.ts +430 -0
  170. package/dist/cjs/models/quote-request.d.ts.map +1 -0
  171. package/dist/cjs/models/quote-request.js +8 -0
  172. package/dist/cjs/models/quote-request.js.map +1 -0
  173. package/dist/cjs/models/quote.d.ts +458 -0
  174. package/dist/cjs/models/quote.d.ts.map +1 -0
  175. package/dist/cjs/models/quote.js +8 -0
  176. package/dist/cjs/models/quote.js.map +1 -0
  177. package/dist/cjs/models/review.d.ts +435 -0
  178. package/dist/cjs/models/review.d.ts.map +1 -0
  179. package/dist/cjs/models/review.js +8 -0
  180. package/dist/cjs/models/review.js.map +1 -0
  181. package/dist/cjs/models/scalar-types.d.ts +9 -0
  182. package/dist/cjs/models/scalar-types.d.ts.map +1 -0
  183. package/dist/cjs/models/scalar-types.js +8 -0
  184. package/dist/cjs/models/scalar-types.js.map +1 -0
  185. package/dist/cjs/models/shipping-method.d.ts +569 -0
  186. package/dist/cjs/models/shipping-method.d.ts.map +1 -0
  187. package/dist/cjs/models/shipping-method.js +8 -0
  188. package/dist/cjs/models/shipping-method.js.map +1 -0
  189. package/dist/cjs/models/shopping-list.d.ts +844 -0
  190. package/dist/cjs/models/shopping-list.d.ts.map +1 -0
  191. package/dist/cjs/models/shopping-list.js +8 -0
  192. package/dist/cjs/models/shopping-list.js.map +1 -0
  193. package/dist/cjs/models/staged-quote.d.ts +338 -0
  194. package/dist/cjs/models/staged-quote.d.ts.map +1 -0
  195. package/dist/cjs/models/staged-quote.js +8 -0
  196. package/dist/cjs/models/staged-quote.js.map +1 -0
  197. package/dist/cjs/models/standalone-price.d.ts +410 -0
  198. package/dist/cjs/models/standalone-price.d.ts.map +1 -0
  199. package/dist/cjs/models/standalone-price.js +8 -0
  200. package/dist/cjs/models/standalone-price.js.map +1 -0
  201. package/dist/cjs/models/state.d.ts +341 -0
  202. package/dist/cjs/models/state.d.ts.map +1 -0
  203. package/dist/cjs/models/state.js +8 -0
  204. package/dist/cjs/models/state.js.map +1 -0
  205. package/dist/cjs/models/store-country.d.ts +14 -0
  206. package/dist/cjs/models/store-country.d.ts.map +1 -0
  207. package/dist/cjs/models/store-country.js +8 -0
  208. package/dist/cjs/models/store-country.js.map +1 -0
  209. package/dist/cjs/models/store.d.ts +547 -0
  210. package/dist/cjs/models/store.d.ts.map +1 -0
  211. package/dist/cjs/models/store.js +8 -0
  212. package/dist/cjs/models/store.js.map +1 -0
  213. package/dist/cjs/models/subscription.d.ts +717 -0
  214. package/dist/cjs/models/subscription.d.ts.map +1 -0
  215. package/dist/cjs/models/subscription.js +8 -0
  216. package/dist/cjs/models/subscription.js.map +1 -0
  217. package/dist/cjs/models/tax-category.d.ts +376 -0
  218. package/dist/cjs/models/tax-category.d.ts.map +1 -0
  219. package/dist/cjs/models/tax-category.js +8 -0
  220. package/dist/cjs/models/tax-category.js.map +1 -0
  221. package/dist/cjs/models/type.d.ts +645 -0
  222. package/dist/cjs/models/type.d.ts.map +1 -0
  223. package/dist/cjs/models/type.js +8 -0
  224. package/dist/cjs/models/type.js.map +1 -0
  225. package/dist/cjs/models/zone.d.ts +234 -0
  226. package/dist/cjs/models/zone.d.ts.map +1 -0
  227. package/dist/cjs/models/zone.js +8 -0
  228. package/dist/cjs/models/zone.js.map +1 -0
  229. package/dist/cjs/package.json +1 -0
  230. package/dist/cjs/request/index.d.ts +3 -0
  231. package/dist/cjs/request/index.d.ts.map +1 -0
  232. package/dist/cjs/request/index.js +19 -0
  233. package/dist/cjs/request/index.js.map +1 -0
  234. package/dist/cjs/request/is-retryable-error.d.ts +6 -0
  235. package/dist/cjs/request/is-retryable-error.d.ts.map +1 -0
  236. package/dist/cjs/request/is-retryable-error.js +28 -0
  237. package/dist/cjs/request/is-retryable-error.js.map +1 -0
  238. package/dist/{typings → cjs}/request/request-executor.d.ts +3 -2
  239. package/dist/cjs/request/request-executor.d.ts.map +1 -0
  240. package/dist/cjs/request/request-executor.js +23 -0
  241. package/dist/cjs/request/request-executor.js.map +1 -0
  242. package/dist/{typings → cjs}/request/request.d.ts +3 -2
  243. package/dist/cjs/request/request.d.ts.map +1 -0
  244. package/dist/cjs/request/request.js +84 -0
  245. package/dist/cjs/request/request.js.map +1 -0
  246. package/dist/cjs/request/transform-error.d.ts +7 -0
  247. package/dist/cjs/request/transform-error.d.ts.map +1 -0
  248. package/dist/cjs/request/transform-error.js +16 -0
  249. package/dist/cjs/request/transform-error.js.map +1 -0
  250. package/dist/{typings → cjs}/types.d.ts +39 -1
  251. package/dist/cjs/types.d.ts.map +1 -0
  252. package/dist/cjs/types.js +16 -0
  253. package/dist/cjs/types.js.map +1 -0
  254. package/dist/{typings → cjs}/utils/axios/convert-error.d.ts +2 -1
  255. package/dist/cjs/utils/axios/convert-error.d.ts.map +1 -0
  256. package/dist/cjs/utils/axios/convert-error.js +28 -0
  257. package/dist/cjs/utils/axios/convert-error.js.map +1 -0
  258. package/dist/{typings → cjs}/utils/axios/convert-response.d.ts +2 -1
  259. package/dist/cjs/utils/axios/convert-response.d.ts.map +1 -0
  260. package/dist/cjs/utils/axios/convert-response.js +23 -0
  261. package/dist/cjs/utils/axios/convert-response.js.map +1 -0
  262. package/dist/{typings → cjs}/utils/axios/create-instance.d.ts +5 -0
  263. package/dist/cjs/utils/axios/create-instance.d.ts.map +1 -0
  264. package/dist/cjs/utils/axios/create-instance.js +30 -0
  265. package/dist/cjs/utils/axios/create-instance.js.map +1 -0
  266. package/dist/{typings → cjs}/utils/axios/extract-headers.d.ts +1 -0
  267. package/dist/cjs/utils/axios/extract-headers.d.ts.map +1 -0
  268. package/dist/cjs/utils/axios/extract-headers.js +23 -0
  269. package/dist/cjs/utils/axios/extract-headers.js.map +1 -0
  270. package/dist/cjs/utils/axios/index.d.ts +5 -0
  271. package/dist/cjs/utils/axios/index.d.ts.map +1 -0
  272. package/dist/cjs/utils/axios/index.js +21 -0
  273. package/dist/cjs/utils/axios/index.js.map +1 -0
  274. package/dist/cjs/utils/calculate-delay.d.ts +7 -0
  275. package/dist/cjs/utils/calculate-delay.d.ts.map +1 -0
  276. package/dist/cjs/utils/calculate-delay.js +30 -0
  277. package/dist/cjs/utils/calculate-delay.js.map +1 -0
  278. package/dist/cjs/utils/ensure-non-empty-string.d.ts +16 -0
  279. package/dist/cjs/utils/ensure-non-empty-string.d.ts.map +1 -0
  280. package/dist/cjs/utils/ensure-non-empty-string.js +16 -0
  281. package/dist/cjs/utils/ensure-non-empty-string.js.map +1 -0
  282. package/dist/cjs/utils/format.d.ts +11 -0
  283. package/dist/cjs/utils/format.d.ts.map +1 -0
  284. package/dist/cjs/utils/format.js +48 -0
  285. package/dist/cjs/utils/format.js.map +1 -0
  286. package/dist/cjs/utils/get-attribute-value.d.ts +17 -0
  287. package/dist/cjs/utils/get-attribute-value.d.ts.map +1 -0
  288. package/dist/cjs/utils/get-attribute-value.js +19 -0
  289. package/dist/cjs/utils/get-attribute-value.js.map +1 -0
  290. package/dist/cjs/utils/index.d.ts +9 -0
  291. package/dist/cjs/utils/index.d.ts.map +1 -0
  292. package/dist/cjs/utils/index.js +25 -0
  293. package/dist/cjs/utils/index.js.map +1 -0
  294. package/dist/cjs/utils/mask.d.ts +28 -0
  295. package/dist/cjs/utils/mask.d.ts.map +1 -0
  296. package/dist/cjs/utils/mask.js +63 -0
  297. package/dist/cjs/utils/mask.js.map +1 -0
  298. package/dist/cjs/utils/plain-clone.d.ts +14 -0
  299. package/dist/cjs/utils/plain-clone.d.ts.map +1 -0
  300. package/dist/cjs/utils/plain-clone.js +41 -0
  301. package/dist/cjs/utils/plain-clone.js.map +1 -0
  302. package/dist/cjs/utils/retry-on-conflict.d.ts +99 -0
  303. package/dist/cjs/utils/retry-on-conflict.d.ts.map +1 -0
  304. package/dist/cjs/utils/retry-on-conflict.js +109 -0
  305. package/dist/cjs/utils/retry-on-conflict.js.map +1 -0
  306. package/dist/cjs/utils/useragent.d.ts +10 -0
  307. package/dist/cjs/utils/useragent.d.ts.map +1 -0
  308. package/dist/cjs/utils/useragent.js +21 -0
  309. package/dist/cjs/utils/useragent.js.map +1 -0
  310. package/dist/mjs/api/CommercetoolsApi.d.ts +1252 -0
  311. package/dist/mjs/api/CommercetoolsApi.d.ts.map +1 -0
  312. package/dist/mjs/api/CommercetoolsApi.js +2102 -0
  313. package/dist/mjs/api/CommercetoolsApi.js.map +1 -0
  314. package/dist/mjs/api/index.d.ts +3 -0
  315. package/dist/mjs/api/index.d.ts.map +1 -0
  316. package/dist/mjs/api/index.js +3 -0
  317. package/dist/mjs/api/index.js.map +1 -0
  318. package/dist/mjs/api/types.d.ts +33 -0
  319. package/dist/mjs/api/types.d.ts.map +1 -0
  320. package/dist/mjs/api/types.js +2 -0
  321. package/dist/mjs/api/types.js.map +1 -0
  322. package/dist/mjs/auth/CommercetoolsAuth.d.ts +182 -0
  323. package/dist/mjs/auth/CommercetoolsAuth.d.ts.map +1 -0
  324. package/dist/mjs/auth/CommercetoolsAuth.js +234 -0
  325. package/dist/mjs/auth/CommercetoolsAuth.js.map +1 -0
  326. package/dist/mjs/auth/CommercetoolsAuthApi.d.ts +83 -0
  327. package/dist/mjs/auth/CommercetoolsAuthApi.d.ts.map +1 -0
  328. package/dist/mjs/auth/CommercetoolsAuthApi.js +165 -0
  329. package/dist/mjs/auth/CommercetoolsAuthApi.js.map +1 -0
  330. package/dist/mjs/auth/CommercetoolsGrant.d.ts +66 -0
  331. package/dist/mjs/auth/CommercetoolsGrant.d.ts.map +1 -0
  332. package/dist/mjs/auth/CommercetoolsGrant.js +95 -0
  333. package/dist/mjs/auth/CommercetoolsGrant.js.map +1 -0
  334. package/dist/mjs/auth/constants.d.ts +7 -0
  335. package/dist/mjs/auth/constants.d.ts.map +1 -0
  336. package/dist/mjs/auth/constants.js +28 -0
  337. package/dist/mjs/auth/constants.js.map +1 -0
  338. package/dist/mjs/auth/index.d.ts +4 -0
  339. package/dist/mjs/auth/index.d.ts.map +1 -0
  340. package/dist/mjs/auth/index.js +3 -0
  341. package/dist/mjs/auth/index.js.map +1 -0
  342. package/dist/mjs/auth/scopes.d.ts +11 -0
  343. package/dist/mjs/auth/scopes.d.ts.map +1 -0
  344. package/dist/mjs/auth/scopes.js +25 -0
  345. package/dist/mjs/auth/scopes.js.map +1 -0
  346. package/dist/mjs/auth/types.d.ts +118 -0
  347. package/dist/mjs/auth/types.d.ts.map +1 -0
  348. package/dist/mjs/auth/types.js +25 -0
  349. package/dist/mjs/auth/types.js.map +1 -0
  350. package/dist/mjs/auth/utils.d.ts +2 -0
  351. package/dist/mjs/auth/utils.d.ts.map +1 -0
  352. package/dist/mjs/auth/utils.js +10 -0
  353. package/dist/mjs/auth/utils.js.map +1 -0
  354. package/dist/mjs/constants.d.ts +33 -0
  355. package/dist/mjs/constants.d.ts.map +1 -0
  356. package/dist/mjs/constants.js +43 -0
  357. package/dist/mjs/constants.js.map +1 -0
  358. package/dist/mjs/error/CommercetoolsError.d.ts +33 -0
  359. package/dist/mjs/error/CommercetoolsError.d.ts.map +1 -0
  360. package/dist/mjs/error/CommercetoolsError.js +103 -0
  361. package/dist/mjs/error/CommercetoolsError.js.map +1 -0
  362. package/dist/mjs/error/index.d.ts +2 -0
  363. package/dist/mjs/error/index.d.ts.map +1 -0
  364. package/dist/mjs/error/index.js +2 -0
  365. package/dist/mjs/error/index.js.map +1 -0
  366. package/dist/mjs/index.d.ts +8 -0
  367. package/dist/mjs/index.d.ts.map +1 -0
  368. package/dist/mjs/index.js +8 -0
  369. package/dist/mjs/index.js.map +1 -0
  370. package/dist/mjs/models/associate-role.d.ts +319 -0
  371. package/dist/mjs/models/associate-role.d.ts.map +1 -0
  372. package/dist/mjs/models/associate-role.js +7 -0
  373. package/dist/mjs/models/associate-role.js.map +1 -0
  374. package/dist/mjs/models/attribute-group.d.ts +253 -0
  375. package/dist/mjs/models/attribute-group.d.ts.map +1 -0
  376. package/dist/mjs/models/attribute-group.js +7 -0
  377. package/dist/mjs/models/attribute-group.js.map +1 -0
  378. package/dist/mjs/models/business-unit.d.ts +1197 -0
  379. package/dist/mjs/models/business-unit.d.ts.map +1 -0
  380. package/dist/mjs/models/business-unit.js +7 -0
  381. package/dist/mjs/models/business-unit.js.map +1 -0
  382. package/dist/mjs/models/cart-discount.d.ts +716 -0
  383. package/dist/mjs/models/cart-discount.d.ts.map +1 -0
  384. package/dist/mjs/models/cart-discount.js +7 -0
  385. package/dist/mjs/models/cart-discount.js.map +1 -0
  386. package/dist/mjs/models/cart.d.ts +3350 -0
  387. package/dist/mjs/models/cart.d.ts.map +1 -0
  388. package/dist/mjs/models/cart.js +7 -0
  389. package/dist/mjs/models/cart.js.map +1 -0
  390. package/dist/mjs/models/category.d.ts +634 -0
  391. package/dist/mjs/models/category.d.ts.map +1 -0
  392. package/dist/mjs/models/category.js +7 -0
  393. package/dist/mjs/models/category.js.map +1 -0
  394. package/dist/mjs/models/channel.d.ts +379 -0
  395. package/dist/mjs/models/channel.d.ts.map +1 -0
  396. package/dist/mjs/models/channel.js +7 -0
  397. package/dist/mjs/models/channel.js.map +1 -0
  398. package/dist/mjs/models/common.d.ts +1096 -0
  399. package/dist/mjs/models/common.d.ts.map +1 -0
  400. package/dist/mjs/models/common.js +7 -0
  401. package/dist/mjs/models/common.js.map +1 -0
  402. package/dist/mjs/models/custom-object.d.ts +151 -0
  403. package/dist/mjs/models/custom-object.d.ts.map +1 -0
  404. package/dist/mjs/models/custom-object.js +7 -0
  405. package/dist/mjs/models/custom-object.js.map +1 -0
  406. package/dist/mjs/models/customer-group.d.ts +235 -0
  407. package/dist/mjs/models/customer-group.d.ts.map +1 -0
  408. package/dist/mjs/models/customer-group.js +7 -0
  409. package/dist/mjs/models/customer-group.js.map +1 -0
  410. package/dist/mjs/models/customer.d.ts +1221 -0
  411. package/dist/mjs/models/customer.d.ts.map +1 -0
  412. package/dist/mjs/models/customer.js +7 -0
  413. package/dist/mjs/models/customer.js.map +1 -0
  414. package/dist/mjs/models/discount-code.d.ts +439 -0
  415. package/dist/mjs/models/discount-code.d.ts.map +1 -0
  416. package/dist/mjs/models/discount-code.js +7 -0
  417. package/dist/mjs/models/discount-code.js.map +1 -0
  418. package/dist/mjs/models/error.d.ts +3062 -0
  419. package/dist/mjs/models/error.d.ts.map +1 -0
  420. package/dist/mjs/models/error.js +7 -0
  421. package/dist/mjs/models/error.js.map +1 -0
  422. package/dist/mjs/models/extension.d.ts +335 -0
  423. package/dist/mjs/models/extension.d.ts.map +1 -0
  424. package/dist/mjs/models/extension.js +7 -0
  425. package/dist/mjs/models/extension.js.map +1 -0
  426. package/dist/mjs/models/graph-ql.d.ts +63 -0
  427. package/dist/mjs/models/graph-ql.d.ts.map +1 -0
  428. package/dist/mjs/models/graph-ql.js +7 -0
  429. package/dist/mjs/models/graph-ql.js.map +1 -0
  430. package/dist/mjs/models/index.d.ts +42 -0
  431. package/dist/mjs/models/index.d.ts.map +1 -0
  432. package/dist/mjs/models/index.js +42 -0
  433. package/dist/mjs/models/index.js.map +1 -0
  434. package/dist/mjs/models/inventory.d.ts +327 -0
  435. package/dist/mjs/models/inventory.d.ts.map +1 -0
  436. package/dist/mjs/models/inventory.js +7 -0
  437. package/dist/mjs/models/inventory.js.map +1 -0
  438. package/dist/mjs/models/me.d.ts +2483 -0
  439. package/dist/mjs/models/me.d.ts.map +1 -0
  440. package/dist/mjs/models/me.js +7 -0
  441. package/dist/mjs/models/me.js.map +1 -0
  442. package/dist/mjs/models/message.d.ts +15095 -0
  443. package/dist/mjs/models/message.d.ts.map +1 -0
  444. package/dist/mjs/models/message.js +7 -0
  445. package/dist/mjs/models/message.js.map +1 -0
  446. package/dist/mjs/models/order-edit.d.ts +1645 -0
  447. package/dist/mjs/models/order-edit.d.ts.map +1 -0
  448. package/dist/mjs/models/order-edit.js +7 -0
  449. package/dist/mjs/models/order-edit.js.map +1 -0
  450. package/dist/mjs/models/order.d.ts +2157 -0
  451. package/dist/mjs/models/order.d.ts.map +1 -0
  452. package/dist/mjs/models/order.js +7 -0
  453. package/dist/mjs/models/order.js.map +1 -0
  454. package/dist/mjs/models/payment.d.ts +734 -0
  455. package/dist/mjs/models/payment.d.ts.map +1 -0
  456. package/dist/mjs/models/payment.js +7 -0
  457. package/dist/mjs/models/payment.js.map +1 -0
  458. package/dist/mjs/models/product-discount.d.ts +461 -0
  459. package/dist/mjs/models/product-discount.d.ts.map +1 -0
  460. package/dist/mjs/models/product-discount.js +7 -0
  461. package/dist/mjs/models/product-discount.js.map +1 -0
  462. package/dist/mjs/models/product-selection.d.ts +638 -0
  463. package/dist/mjs/models/product-selection.d.ts.map +1 -0
  464. package/dist/mjs/models/product-selection.js +7 -0
  465. package/dist/mjs/models/product-selection.js.map +1 -0
  466. package/dist/mjs/models/product-type.d.ts +774 -0
  467. package/dist/mjs/models/product-type.d.ts.map +1 -0
  468. package/dist/mjs/models/product-type.js +7 -0
  469. package/dist/mjs/models/product-type.js.map +1 -0
  470. package/dist/mjs/models/product.d.ts +2282 -0
  471. package/dist/mjs/models/product.d.ts.map +1 -0
  472. package/dist/mjs/models/product.js +7 -0
  473. package/dist/mjs/models/product.js.map +1 -0
  474. package/dist/mjs/models/project.d.ts +381 -0
  475. package/dist/mjs/models/project.d.ts.map +1 -0
  476. package/dist/mjs/models/project.js +7 -0
  477. package/dist/mjs/models/project.js.map +1 -0
  478. package/dist/mjs/models/quote-request.d.ts +430 -0
  479. package/dist/mjs/models/quote-request.d.ts.map +1 -0
  480. package/dist/mjs/models/quote-request.js +7 -0
  481. package/dist/mjs/models/quote-request.js.map +1 -0
  482. package/dist/mjs/models/quote.d.ts +458 -0
  483. package/dist/mjs/models/quote.d.ts.map +1 -0
  484. package/dist/mjs/models/quote.js +7 -0
  485. package/dist/mjs/models/quote.js.map +1 -0
  486. package/dist/mjs/models/review.d.ts +435 -0
  487. package/dist/mjs/models/review.d.ts.map +1 -0
  488. package/dist/mjs/models/review.js +7 -0
  489. package/dist/mjs/models/review.js.map +1 -0
  490. package/dist/mjs/models/scalar-types.d.ts +9 -0
  491. package/dist/mjs/models/scalar-types.d.ts.map +1 -0
  492. package/dist/mjs/models/scalar-types.js +7 -0
  493. package/dist/mjs/models/scalar-types.js.map +1 -0
  494. package/dist/mjs/models/shipping-method.d.ts +569 -0
  495. package/dist/mjs/models/shipping-method.d.ts.map +1 -0
  496. package/dist/mjs/models/shipping-method.js +7 -0
  497. package/dist/mjs/models/shipping-method.js.map +1 -0
  498. package/dist/mjs/models/shopping-list.d.ts +844 -0
  499. package/dist/mjs/models/shopping-list.d.ts.map +1 -0
  500. package/dist/mjs/models/shopping-list.js +7 -0
  501. package/dist/mjs/models/shopping-list.js.map +1 -0
  502. package/dist/mjs/models/staged-quote.d.ts +338 -0
  503. package/dist/mjs/models/staged-quote.d.ts.map +1 -0
  504. package/dist/mjs/models/staged-quote.js +7 -0
  505. package/dist/mjs/models/staged-quote.js.map +1 -0
  506. package/dist/mjs/models/standalone-price.d.ts +410 -0
  507. package/dist/mjs/models/standalone-price.d.ts.map +1 -0
  508. package/dist/mjs/models/standalone-price.js +7 -0
  509. package/dist/mjs/models/standalone-price.js.map +1 -0
  510. package/dist/mjs/models/state.d.ts +341 -0
  511. package/dist/mjs/models/state.d.ts.map +1 -0
  512. package/dist/mjs/models/state.js +7 -0
  513. package/dist/mjs/models/state.js.map +1 -0
  514. package/dist/mjs/models/store-country.d.ts +14 -0
  515. package/dist/mjs/models/store-country.d.ts.map +1 -0
  516. package/dist/mjs/models/store-country.js +7 -0
  517. package/dist/mjs/models/store-country.js.map +1 -0
  518. package/dist/mjs/models/store.d.ts +547 -0
  519. package/dist/mjs/models/store.d.ts.map +1 -0
  520. package/dist/mjs/models/store.js +7 -0
  521. package/dist/mjs/models/store.js.map +1 -0
  522. package/dist/mjs/models/subscription.d.ts +717 -0
  523. package/dist/mjs/models/subscription.d.ts.map +1 -0
  524. package/dist/mjs/models/subscription.js +7 -0
  525. package/dist/mjs/models/subscription.js.map +1 -0
  526. package/dist/mjs/models/tax-category.d.ts +376 -0
  527. package/dist/mjs/models/tax-category.d.ts.map +1 -0
  528. package/dist/mjs/models/tax-category.js +7 -0
  529. package/dist/mjs/models/tax-category.js.map +1 -0
  530. package/dist/mjs/models/type.d.ts +645 -0
  531. package/dist/mjs/models/type.d.ts.map +1 -0
  532. package/dist/mjs/models/type.js +7 -0
  533. package/dist/mjs/models/type.js.map +1 -0
  534. package/dist/mjs/models/zone.d.ts +234 -0
  535. package/dist/mjs/models/zone.d.ts.map +1 -0
  536. package/dist/mjs/models/zone.js +7 -0
  537. package/dist/mjs/models/zone.js.map +1 -0
  538. package/dist/mjs/request/index.d.ts +3 -0
  539. package/dist/mjs/request/index.d.ts.map +1 -0
  540. package/dist/mjs/request/index.js +3 -0
  541. package/dist/mjs/request/index.js.map +1 -0
  542. package/dist/mjs/request/is-retryable-error.d.ts +6 -0
  543. package/dist/mjs/request/is-retryable-error.d.ts.map +1 -0
  544. package/dist/mjs/request/is-retryable-error.js +24 -0
  545. package/dist/mjs/request/is-retryable-error.js.map +1 -0
  546. package/dist/mjs/request/request-executor.d.ts +12 -0
  547. package/dist/mjs/request/request-executor.d.ts.map +1 -0
  548. package/dist/mjs/request/request-executor.js +19 -0
  549. package/dist/mjs/request/request-executor.js.map +1 -0
  550. package/dist/mjs/request/request.d.ts +11 -0
  551. package/dist/mjs/request/request.d.ts.map +1 -0
  552. package/dist/mjs/request/request.js +80 -0
  553. package/dist/mjs/request/request.js.map +1 -0
  554. package/dist/mjs/request/transform-error.d.ts +7 -0
  555. package/dist/mjs/request/transform-error.d.ts.map +1 -0
  556. package/dist/mjs/request/transform-error.js +12 -0
  557. package/dist/mjs/request/transform-error.js.map +1 -0
  558. package/dist/mjs/types.d.ts +96 -0
  559. package/dist/mjs/types.d.ts.map +1 -0
  560. package/dist/mjs/types.js +13 -0
  561. package/dist/mjs/types.js.map +1 -0
  562. package/dist/mjs/utils/axios/convert-error.d.ts +4 -0
  563. package/dist/mjs/utils/axios/convert-error.d.ts.map +1 -0
  564. package/dist/mjs/utils/axios/convert-error.js +24 -0
  565. package/dist/mjs/utils/axios/convert-error.js.map +1 -0
  566. package/dist/mjs/utils/axios/convert-response.d.ts +4 -0
  567. package/dist/mjs/utils/axios/convert-response.d.ts.map +1 -0
  568. package/dist/mjs/utils/axios/convert-response.js +19 -0
  569. package/dist/mjs/utils/axios/convert-response.js.map +1 -0
  570. package/dist/mjs/utils/axios/create-instance.d.ts +11 -0
  571. package/dist/mjs/utils/axios/create-instance.d.ts.map +1 -0
  572. package/dist/mjs/utils/axios/create-instance.js +23 -0
  573. package/dist/mjs/utils/axios/create-instance.js.map +1 -0
  574. package/dist/mjs/utils/axios/extract-headers.d.ts +2 -0
  575. package/dist/mjs/utils/axios/extract-headers.d.ts.map +1 -0
  576. package/dist/mjs/utils/axios/extract-headers.js +19 -0
  577. package/dist/mjs/utils/axios/extract-headers.js.map +1 -0
  578. package/dist/mjs/utils/axios/index.d.ts +5 -0
  579. package/dist/mjs/utils/axios/index.d.ts.map +1 -0
  580. package/dist/mjs/utils/axios/index.js +5 -0
  581. package/dist/mjs/utils/axios/index.js.map +1 -0
  582. package/dist/mjs/utils/calculate-delay.d.ts +7 -0
  583. package/dist/mjs/utils/calculate-delay.d.ts.map +1 -0
  584. package/dist/mjs/utils/calculate-delay.js +26 -0
  585. package/dist/mjs/utils/calculate-delay.js.map +1 -0
  586. package/dist/mjs/utils/ensure-non-empty-string.d.ts +16 -0
  587. package/dist/mjs/utils/ensure-non-empty-string.d.ts.map +1 -0
  588. package/dist/mjs/utils/ensure-non-empty-string.js +12 -0
  589. package/dist/mjs/utils/ensure-non-empty-string.js.map +1 -0
  590. package/dist/mjs/utils/format.d.ts +11 -0
  591. package/dist/mjs/utils/format.d.ts.map +1 -0
  592. package/dist/mjs/utils/format.js +44 -0
  593. package/dist/mjs/utils/format.js.map +1 -0
  594. package/dist/mjs/utils/get-attribute-value.d.ts +17 -0
  595. package/dist/mjs/utils/get-attribute-value.d.ts.map +1 -0
  596. package/dist/mjs/utils/get-attribute-value.js +15 -0
  597. package/dist/mjs/utils/get-attribute-value.js.map +1 -0
  598. package/dist/mjs/utils/index.d.ts +9 -0
  599. package/dist/mjs/utils/index.d.ts.map +1 -0
  600. package/dist/mjs/utils/index.js +9 -0
  601. package/dist/mjs/utils/index.js.map +1 -0
  602. package/dist/mjs/utils/mask.d.ts +28 -0
  603. package/dist/mjs/utils/mask.d.ts.map +1 -0
  604. package/dist/mjs/utils/mask.js +54 -0
  605. package/dist/mjs/utils/mask.js.map +1 -0
  606. package/dist/mjs/utils/plain-clone.d.ts +14 -0
  607. package/dist/mjs/utils/plain-clone.d.ts.map +1 -0
  608. package/dist/mjs/utils/plain-clone.js +37 -0
  609. package/dist/mjs/utils/plain-clone.js.map +1 -0
  610. package/dist/mjs/utils/retry-on-conflict.d.ts +99 -0
  611. package/dist/mjs/utils/retry-on-conflict.d.ts.map +1 -0
  612. package/dist/mjs/utils/retry-on-conflict.js +105 -0
  613. package/dist/mjs/utils/retry-on-conflict.js.map +1 -0
  614. package/dist/mjs/utils/useragent.d.ts +10 -0
  615. package/dist/mjs/utils/useragent.d.ts.map +1 -0
  616. package/dist/mjs/utils/useragent.js +17 -0
  617. package/dist/mjs/utils/useragent.js.map +1 -0
  618. package/package.json +48 -46
  619. package/dist/ge-commercetools-utils-browser.cjs.js +0 -2
  620. package/dist/ge-commercetools-utils-browser.cjs.js.map +0 -1
  621. package/dist/ge-commercetools-utils-browser.esm.js +0 -2
  622. package/dist/ge-commercetools-utils-browser.esm.js.map +0 -1
  623. package/dist/ge-commercetools-utils-node.cjs.js +0 -3
  624. package/dist/ge-commercetools-utils-node.cjs.js.LICENSE.txt +0 -13
  625. package/dist/ge-commercetools-utils-node.cjs.js.map +0 -1
  626. package/dist/ge-commercetools-utils-node.esm.js +0 -2
  627. package/dist/ge-commercetools-utils-node.esm.js.LICENSE.txt +0 -13
  628. package/dist/typings/api/CommercetoolsApi.d.ts +0 -515
  629. package/dist/typings/api/index.d.ts +0 -2
  630. package/dist/typings/api/types.d.ts +0 -12
  631. package/dist/typings/auth/CommercetoolsAuth.d.ts +0 -22
  632. package/dist/typings/auth/CommercetoolsAuthApi.d.ts +0 -27
  633. package/dist/typings/auth/CommercetoolsGrant.d.ts +0 -13
  634. package/dist/typings/auth/constants.d.ts +0 -3
  635. package/dist/typings/auth/index.d.ts +0 -3
  636. package/dist/typings/auth/scopes.d.ts +0 -2
  637. package/dist/typings/auth/types.d.ts +0 -41
  638. package/dist/typings/constants.d.ts +0 -12
  639. package/dist/typings/error/CommercetoolsError.d.ts +0 -11
  640. package/dist/typings/error/index.d.ts +0 -1
  641. package/dist/typings/index.d.ts +0 -7
  642. package/dist/typings/models/associate-role.d.ts +0 -79
  643. package/dist/typings/models/attribute-group.d.ts +0 -68
  644. package/dist/typings/models/business-unit.d.ts +0 -272
  645. package/dist/typings/models/cart-discount.d.ts +0 -196
  646. package/dist/typings/models/cart.d.ts +0 -745
  647. package/dist/typings/models/category.d.ts +0 -166
  648. package/dist/typings/models/channel.d.ts +0 -103
  649. package/dist/typings/models/common.d.ts +0 -256
  650. package/dist/typings/models/custom-object.d.ts +0 -30
  651. package/dist/typings/models/customer-group.d.ts +0 -58
  652. package/dist/typings/models/customer.d.ts +0 -293
  653. package/dist/typings/models/discount-code.d.ts +0 -116
  654. package/dist/typings/models/error.d.ts +0 -874
  655. package/dist/typings/models/extension.d.ts +0 -83
  656. package/dist/typings/models/graph-ql.d.ts +0 -23
  657. package/dist/typings/models/index.d.ts +0 -41
  658. package/dist/typings/models/inventory.d.ts +0 -88
  659. package/dist/typings/models/me.d.ts +0 -640
  660. package/dist/typings/models/message.d.ts +0 -3210
  661. package/dist/typings/models/order-edit.d.ts +0 -572
  662. package/dist/typings/models/payment.d.ts +0 -191
  663. package/dist/typings/models/product-discount.d.ts +0 -123
  664. package/dist/typings/models/product-selection.d.ts +0 -158
  665. package/dist/typings/models/product-type.d.ts +0 -213
  666. package/dist/typings/models/product.d.ts +0 -535
  667. package/dist/typings/models/project.d.ts +0 -120
  668. package/dist/typings/models/quote-request.d.ts +0 -94
  669. package/dist/typings/models/quote.d.ts +0 -103
  670. package/dist/typings/models/review.d.ts +0 -115
  671. package/dist/typings/models/scalar-types.d.ts +0 -3
  672. package/dist/typings/models/shipping-method.d.ts +0 -160
  673. package/dist/typings/models/shopping-list.d.ts +0 -217
  674. package/dist/typings/models/staged-quote.d.ts +0 -84
  675. package/dist/typings/models/standalone-price.d.ts +0 -95
  676. package/dist/typings/models/state.d.ts +0 -86
  677. package/dist/typings/models/store-country.d.ts +0 -3
  678. package/dist/typings/models/store.d.ts +0 -137
  679. package/dist/typings/models/subscription.d.ts +0 -161
  680. package/dist/typings/models/tax-category.d.ts +0 -91
  681. package/dist/typings/models/type.d.ts +0 -177
  682. package/dist/typings/models/zone.d.ts +0 -65
  683. package/dist/typings/request/index.d.ts +0 -2
  684. package/dist/typings/request/is-retryable-error.d.ts +0 -1
  685. package/dist/typings/request/transform-error.d.ts +0 -2
  686. package/dist/typings/utils/axios/index.d.ts +0 -4
  687. package/dist/typings/utils/calculate-delay.d.ts +0 -2
  688. package/dist/typings/utils/ensure-non-empty-string.d.ts +0 -5
  689. package/dist/typings/utils/format.d.ts +0 -1
  690. package/dist/typings/utils/get-attribute-value.d.ts +0 -6
  691. package/dist/typings/utils/index.d.ts +0 -8
  692. package/dist/typings/utils/mask.d.ts +0 -6
  693. package/dist/typings/utils/plain-clone.d.ts +0 -1
  694. package/dist/typings/utils/retry-on-conflict.d.ts +0 -7
  695. package/dist/typings/utils/useragent.d.ts +0 -1
@@ -0,0 +1,2282 @@
1
+ /**
2
+ * Code generated by [commercetools RMF-Codegen](https://github.com/commercetools/rmf-codegen). DO NOT EDIT.
3
+ * Please don't change this file manually but run `rmf-codegen generate raml_file_path -o output_path -t typescript_client` to update it.
4
+ * For more information about the commercetools platform APIs, visit https://docs.commercetools.com/.
5
+ */
6
+ import { ProductPublishScope } from './cart.js';
7
+ import { CategoryReference, CategoryResourceIdentifier } from './category.js';
8
+ import { Asset, AssetDraft, AssetSource, BaseResource, CreatedBy, DiscountedPriceDraft, Image, LastModifiedBy, LocalizedString, Price, PriceDraft, ScopedPrice } from './common.js';
9
+ import { ProductTypeReference, ProductTypeResourceIdentifier } from './product-type.js';
10
+ import { ReviewRatingStatistics } from './review.js';
11
+ import { StateReference, StateResourceIdentifier } from './state.js';
12
+ import { TaxCategoryReference, TaxCategoryResourceIdentifier } from './tax-category.js';
13
+ import { FieldContainer, TypeResourceIdentifier } from './type.js';
14
+ export interface Attribute {
15
+ /**
16
+ * Name of the Attribute.
17
+ *
18
+ *
19
+ */
20
+ readonly name: string;
21
+ /**
22
+ * The [AttributeType](ctp:api:type:AttributeType) determines the format of the Attribute `value` to be provided:
23
+ *
24
+ * - For [Enum Type](ctp:api:type:AttributeEnumType) and [Localized Enum Type](ctp:api:type:AttributeLocalizedEnumType),
25
+ * use the `key` of the [Plain Enum Value](ctp:api:type:AttributePlainEnumValue) or [Localized Enum Value](ctp:api:type:AttributeLocalizedEnumValue) objects,
26
+ * or the complete objects as `value`.
27
+ * - For [Localizable Text Type](ctp:api:type:AttributeLocalizableTextType), use the [LocalizedString](ctp:api:type:LocalizedString) object as `value`.
28
+ * - For [Money Type](ctp:api:type:AttributeMoneyType) Attributes, use the [Money](ctp:api:type:Money) object as `value`.
29
+ * - For [Set Type](ctp:api:type:AttributeSetType) Attributes, use the entire `set` object as `value`.
30
+ * - For [Nested Type](ctp:api:type:AttributeNestedType) Attributes, use the list of values of all Attributes of the nested Product as `value`.
31
+ * - For [Reference Type](ctp:api:type:AttributeReferenceType) Attributes, use the [Reference](ctp:api:type:Reference) object as `value`.
32
+ *
33
+ *
34
+ */
35
+ readonly value: any;
36
+ }
37
+ /**
38
+ * JSON object where the key is a [Category](ctp:api:type:Category) `id` and the value is an order hint.
39
+ * Allows controlling the order of Products and how they appear in Categories. Products with no order hint have an order score below `0`. Order hints are non-unique.
40
+ * If a subset of Products have the same value for order hint in a specific category, the behavior is undetermined.
41
+ */
42
+ export interface CategoryOrderHints {
43
+ [key: string]: string;
44
+ }
45
+ export interface FacetRange {
46
+ /**
47
+ *
48
+ */
49
+ readonly from: number;
50
+ /**
51
+ *
52
+ */
53
+ readonly fromStr: string;
54
+ /**
55
+ *
56
+ */
57
+ readonly to: number;
58
+ /**
59
+ *
60
+ */
61
+ readonly toStr: string;
62
+ /**
63
+ *
64
+ */
65
+ readonly count: number;
66
+ /**
67
+ *
68
+ */
69
+ readonly productCount?: number;
70
+ /**
71
+ *
72
+ */
73
+ readonly total: number;
74
+ /**
75
+ *
76
+ */
77
+ readonly min: number;
78
+ /**
79
+ *
80
+ */
81
+ readonly max: number;
82
+ /**
83
+ *
84
+ */
85
+ readonly mean: number;
86
+ }
87
+ export type FacetResult = FilteredFacetResult | RangeFacetResult | TermFacetResult;
88
+ export interface FacetResults {
89
+ [key: string]: FacetResult;
90
+ }
91
+ export interface FacetTerm {
92
+ /**
93
+ *
94
+ */
95
+ readonly term: any;
96
+ /**
97
+ *
98
+ */
99
+ readonly count: number;
100
+ /**
101
+ *
102
+ */
103
+ readonly productCount?: number;
104
+ }
105
+ export type FacetTypes = 'filter' | 'range' | 'terms' | string;
106
+ export interface FilteredFacetResult {
107
+ readonly type: 'filter';
108
+ /**
109
+ *
110
+ */
111
+ readonly count: number;
112
+ /**
113
+ *
114
+ */
115
+ readonly productCount?: number;
116
+ }
117
+ /**
118
+ * An abstract sellable good with a set of Attributes defined by a Product Type.
119
+ * Products themselves are not sellable. Instead, they act as a parent structure for Product Variants.
120
+ * Each Product must have at least one Product Variant, which is called the Master Variant.
121
+ * A single Product representation contains the _current_ and the _staged_ representation of its product data.
122
+ *
123
+ */
124
+ export interface Product extends BaseResource {
125
+ /**
126
+ * Unique identifier of the Product.
127
+ *
128
+ */
129
+ readonly id: string;
130
+ /**
131
+ * Current version of the Product.
132
+ *
133
+ *
134
+ */
135
+ readonly version: number;
136
+ /**
137
+ * Date and time (UTC) the Product was initially created.
138
+ *
139
+ *
140
+ */
141
+ readonly createdAt: string;
142
+ /**
143
+ * Date and time (UTC) the Product was last updated.
144
+ *
145
+ *
146
+ */
147
+ readonly lastModifiedAt: string;
148
+ /**
149
+ * Present on resources created after 1 February 2019 except for [events not tracked](/../api/client-logging#events-tracked).
150
+ *
151
+ *
152
+ */
153
+ readonly lastModifiedBy?: LastModifiedBy;
154
+ /**
155
+ * Present on resources created after 1 February 2019 except for [events not tracked](/../api/client-logging#events-tracked).
156
+ *
157
+ *
158
+ */
159
+ readonly createdBy?: CreatedBy;
160
+ /**
161
+ * User-defined unique identifier of the Product.
162
+ *
163
+ * This is different from the `key` of a [ProductVariant](ctp:api:type:ProductVariant).
164
+ *
165
+ *
166
+ */
167
+ readonly key?: string;
168
+ /**
169
+ * The Product Type defining the Attributes of the Product. Cannot be changed.
170
+ *
171
+ *
172
+ */
173
+ readonly productType: ProductTypeReference;
174
+ /**
175
+ * Contains the current and the staged representation of the product information.
176
+ *
177
+ *
178
+ */
179
+ readonly masterData: ProductCatalogData;
180
+ /**
181
+ * The [TaxCategory](ctp:api:type:TaxCategory) of the Product.
182
+ *
183
+ *
184
+ */
185
+ readonly taxCategory?: TaxCategoryReference;
186
+ /**
187
+ * [State](ctp:api:type:State) of the Product.
188
+ *
189
+ *
190
+ */
191
+ readonly state?: StateReference;
192
+ /**
193
+ * Review statistics of the Product.
194
+ *
195
+ *
196
+ */
197
+ readonly reviewRatingStatistics?: ReviewRatingStatistics;
198
+ /**
199
+ * Type of Price to be used when looking up a price for the Product.
200
+ *
201
+ *
202
+ */
203
+ readonly priceMode?: ProductPriceModeEnum;
204
+ }
205
+ /**
206
+ * Contains the `current` and `staged` [ProductData](ctp:api:type:ProductData).
207
+ *
208
+ */
209
+ export interface ProductCatalogData {
210
+ /**
211
+ * `true` if the Product is published.
212
+ *
213
+ *
214
+ */
215
+ readonly published: boolean;
216
+ /**
217
+ * Current (published) data of the Product.
218
+ *
219
+ *
220
+ */
221
+ readonly current: ProductData;
222
+ /**
223
+ * Staged (unpublished) data of the Product.
224
+ *
225
+ *
226
+ */
227
+ readonly staged: ProductData;
228
+ /**
229
+ * `true` if the `staged` data is different from the `current` data.
230
+ *
231
+ *
232
+ */
233
+ readonly hasStagedChanges: boolean;
234
+ }
235
+ /**
236
+ * Contains all the data of a Product and its Product Variants.
237
+ *
238
+ */
239
+ export interface ProductData {
240
+ /**
241
+ * Name of the Product.
242
+ *
243
+ *
244
+ */
245
+ readonly name: LocalizedString;
246
+ /**
247
+ * [Categories](ctp:api:type:Category) assigned to the Product.
248
+ *
249
+ *
250
+ */
251
+ readonly categories: CategoryReference[];
252
+ /**
253
+ * Numerical values to allow ordering of Products within a specified Category.
254
+ *
255
+ *
256
+ */
257
+ readonly categoryOrderHints?: CategoryOrderHints;
258
+ /**
259
+ * Description of the Product.
260
+ *
261
+ *
262
+ */
263
+ readonly description?: LocalizedString;
264
+ /**
265
+ * User-defined identifier used in a deep-link URL for the Product.
266
+ * Must be unique across a Project, but can be the same for Products in different [Locales](ctp:api:type:Locale).
267
+ * Matches the pattern `[a-zA-Z0-9_\\-]{2,256}`.
268
+ *
269
+ *
270
+ */
271
+ readonly slug: LocalizedString;
272
+ /**
273
+ * Title of the Product displayed in search results.
274
+ *
275
+ *
276
+ */
277
+ readonly metaTitle?: LocalizedString;
278
+ /**
279
+ * Description of the Product displayed in search results below the meta title.
280
+ *
281
+ *
282
+ */
283
+ readonly metaDescription?: LocalizedString;
284
+ /**
285
+ * Keywords that give additional information about the Product to search engines.
286
+ *
287
+ *
288
+ */
289
+ readonly metaKeywords?: LocalizedString;
290
+ /**
291
+ * The Master Variant of the Product.
292
+ *
293
+ *
294
+ */
295
+ readonly masterVariant: ProductVariant;
296
+ /**
297
+ * Additional Product Variants.
298
+ *
299
+ *
300
+ */
301
+ readonly variants: ProductVariant[];
302
+ /**
303
+ * Used by [Product Suggestions](ctp:api:type:ProductSuggestions), but is also considered for a full text search.
304
+ *
305
+ *
306
+ */
307
+ readonly searchKeywords: SearchKeywords;
308
+ }
309
+ export interface ProductDraft {
310
+ /**
311
+ * The Product Type defining the Attributes for the Product. Cannot be changed later.
312
+ *
313
+ *
314
+ */
315
+ readonly productType: ProductTypeResourceIdentifier;
316
+ /**
317
+ * Name of the Product.
318
+ *
319
+ *
320
+ */
321
+ readonly name: LocalizedString;
322
+ /**
323
+ * User-defined identifier used in a deep-link URL for the Product.
324
+ * It must be unique across a Project, but a Product can have the same slug in different [Locales](ctp:api:type:Locale).
325
+ * It must match the pattern `[a-zA-Z0-9_\\-]{2,256}`.
326
+ *
327
+ *
328
+ */
329
+ readonly slug: LocalizedString;
330
+ /**
331
+ * User-defined unique identifier for the Product.
332
+ *
333
+ *
334
+ */
335
+ readonly key?: string;
336
+ /**
337
+ * Description of the Product.
338
+ *
339
+ *
340
+ */
341
+ readonly description?: LocalizedString;
342
+ /**
343
+ * Categories assigned to the Product.
344
+ *
345
+ *
346
+ */
347
+ readonly categories?: CategoryResourceIdentifier[];
348
+ /**
349
+ * Numerical values to allow ordering of Products within a specified Category.
350
+ *
351
+ *
352
+ */
353
+ readonly categoryOrderHints?: CategoryOrderHints;
354
+ /**
355
+ * Title of the Product displayed in search results.
356
+ *
357
+ *
358
+ */
359
+ readonly metaTitle?: LocalizedString;
360
+ /**
361
+ * Description of the Product displayed in search results.
362
+ *
363
+ *
364
+ */
365
+ readonly metaDescription?: LocalizedString;
366
+ /**
367
+ * Keywords that give additional information about the Product to search engines.
368
+ *
369
+ *
370
+ */
371
+ readonly metaKeywords?: LocalizedString;
372
+ /**
373
+ * The Product Variant to be the Master Variant for the Product. Required if `variants` are provided also.
374
+ *
375
+ *
376
+ */
377
+ readonly masterVariant?: ProductVariantDraft;
378
+ /**
379
+ * The additional Product Variants for the Product.
380
+ *
381
+ *
382
+ */
383
+ readonly variants?: ProductVariantDraft[];
384
+ /**
385
+ * The Tax Category to be assigned to the Product.
386
+ *
387
+ *
388
+ */
389
+ readonly taxCategory?: TaxCategoryResourceIdentifier;
390
+ /**
391
+ * Used by [Product Suggestions](ctp:api:type:ProductSuggestions), but is also considered for a [full text search](/projects/products-search#full-text-search).
392
+ *
393
+ *
394
+ */
395
+ readonly searchKeywords?: SearchKeywords;
396
+ /**
397
+ * State to be assigned to the Product.
398
+ *
399
+ *
400
+ */
401
+ readonly state?: StateResourceIdentifier;
402
+ /**
403
+ * If `true`, the Product is published immediately to the current projection.
404
+ *
405
+ *
406
+ */
407
+ readonly publish?: boolean;
408
+ /**
409
+ * Specifies the type of prices used when looking up a price for the Product.
410
+ *
411
+ *
412
+ */
413
+ readonly priceMode?: ProductPriceModeEnum;
414
+ }
415
+ /**
416
+ * [PagedQueryResult](/../api/general-concepts#pagedqueryresult) with `results` containing an array of [Product](ctp:api:type:Product).
417
+ *
418
+ */
419
+ export interface ProductPagedQueryResponse {
420
+ /**
421
+ * Number of [results requested](/../api/general-concepts#limit).
422
+ *
423
+ *
424
+ */
425
+ readonly limit: number;
426
+ /**
427
+ * Number of [elements skipped](/../api/general-concepts#offset).
428
+ *
429
+ *
430
+ */
431
+ readonly offset: number;
432
+ /**
433
+ * Actual number of results returned.
434
+ *
435
+ *
436
+ */
437
+ readonly count: number;
438
+ /**
439
+ * Total number of results matching the query.
440
+ * This number is an estimation that is not [strongly consistent](/../api/general-concepts#strong-consistency).
441
+ * This field is returned by default.
442
+ * For improved performance, calculating this field can be deactivated by using the query parameter `withTotal=false`.
443
+ * When the results are filtered with a [Query Predicate](ctp:api:type:QueryPredicate), `total` is subject to a [limit](/../api/limits#queries).
444
+ *
445
+ *
446
+ */
447
+ readonly total?: number;
448
+ /**
449
+ * [Products](ctp:api:type:Product) matching the query.
450
+ *
451
+ *
452
+ */
453
+ readonly results: Product[];
454
+ }
455
+ /**
456
+ * This mode determines the type of Prices used for [Product Price Selection](ctp:api:type:ProductPriceSelection) and for [LineItem Price selection](ctp:api:type:LineItemPriceSelection).
457
+ *
458
+ */
459
+ export type ProductPriceModeEnum = 'Embedded' | 'Standalone' | string;
460
+ export interface ProductProjection extends BaseResource {
461
+ /**
462
+ * Unique identifier of the [Product](ctp:api:type:Product).
463
+ *
464
+ *
465
+ */
466
+ readonly id: string;
467
+ /**
468
+ * Current version of the [Product](ctp:api:type:Product).
469
+ *
470
+ *
471
+ */
472
+ readonly version: number;
473
+ /**
474
+ * User-defined unique identifier of the [Product](ctp:api:type:Product).
475
+ *
476
+ *
477
+ */
478
+ readonly key?: string;
479
+ /**
480
+ * Date and time (UTC) the ProductProjection was initially created.
481
+ *
482
+ *
483
+ */
484
+ readonly createdAt: string;
485
+ /**
486
+ * Date and time (UTC) the ProductProjection was last updated.
487
+ *
488
+ *
489
+ */
490
+ readonly lastModifiedAt: string;
491
+ /**
492
+ * The [ProductType](ctp:api:type:ProductType) defining the Attributes of the [Product](ctp:api:type:Product).
493
+ *
494
+ *
495
+ */
496
+ readonly productType: ProductTypeReference;
497
+ /**
498
+ * Name of the [Product](ctp:api:type:Product).
499
+ *
500
+ *
501
+ */
502
+ readonly name: LocalizedString;
503
+ /**
504
+ * Description of the [Product](ctp:api:type:Product).
505
+ *
506
+ *
507
+ */
508
+ readonly description?: LocalizedString;
509
+ /**
510
+ * User-defined identifier used in a deep-link URL for the [Product](ctp:api:type:Product).
511
+ * Must be unique across a Project, but can be the same for Products in different locales.
512
+ * Matches the pattern `[a-zA-Z0-9_\-]{2,256}`.
513
+ * For [good performance](/../api/predicates/query#performance-considerations), indexes are provided for the first 15 `languages` set in the [Project](ctp:api:type:Project).
514
+ *
515
+ *
516
+ */
517
+ readonly slug: LocalizedString;
518
+ /**
519
+ * [Categories](ctp:api:type:Category) assigned to the [Product](ctp:api:type:Product).
520
+ *
521
+ *
522
+ */
523
+ readonly categories: CategoryReference[];
524
+ /**
525
+ * Order of [Product](ctp:api:type:Product) in [Categories](ctp:api:type:Category).
526
+ *
527
+ *
528
+ */
529
+ readonly categoryOrderHints?: CategoryOrderHints;
530
+ /**
531
+ * Title of the [Product](ctp:api:type:Product) displayed in search results.
532
+ *
533
+ *
534
+ */
535
+ readonly metaTitle?: LocalizedString;
536
+ /**
537
+ * Description of the [Product](ctp:api:type:Product) displayed in search results below the meta title.
538
+ *
539
+ *
540
+ */
541
+ readonly metaDescription?: LocalizedString;
542
+ /**
543
+ * Keywords that give additional information about the [Product](ctp:api:type:Product) to search engines.
544
+ *
545
+ *
546
+ */
547
+ readonly metaKeywords?: LocalizedString;
548
+ /**
549
+ * Used by [Product Suggestions](/../api/projects/products-suggestions), but is also considered for a [full text search](ctp:api:type:FullTextSearch).
550
+ *
551
+ *
552
+ */
553
+ readonly searchKeywords?: SearchKeywords;
554
+ /**
555
+ * `true` if the staged data is different from the current data.
556
+ *
557
+ *
558
+ */
559
+ readonly hasStagedChanges?: boolean;
560
+ /**
561
+ * `true` if the [Product](ctp:api:type:Product) is [published](ctp:api:type:CurrentStaged).
562
+ *
563
+ *
564
+ */
565
+ readonly published?: boolean;
566
+ /**
567
+ * The Master Variant of the [Product](ctp:api:type:Product).
568
+ *
569
+ *
570
+ */
571
+ readonly masterVariant: ProductVariant;
572
+ /**
573
+ * Additional Product Variants.
574
+ *
575
+ *
576
+ */
577
+ readonly variants: ProductVariant[];
578
+ /**
579
+ * The [TaxCategory](ctp:api:type:TaxCategory) of the [Product](ctp:api:type:Product).
580
+ *
581
+ *
582
+ */
583
+ readonly taxCategory?: TaxCategoryReference;
584
+ /**
585
+ * [State](ctp:api:type:State) of the [Product](ctp:api:type:Product).
586
+ *
587
+ *
588
+ */
589
+ readonly state?: StateReference;
590
+ /**
591
+ * Review statistics of the [Product](ctp:api:type:Product).
592
+ *
593
+ *
594
+ */
595
+ readonly reviewRatingStatistics?: ReviewRatingStatistics;
596
+ /**
597
+ * Indicates whether the Prices of the Product Projection are [embedded](ctp:api:type:Price) or [standalone](ctp:api:type:StandalonePrice). [Projecting Prices](#prices) only works with `Embedded`, there is currently no support for `Standalone`.
598
+ *
599
+ *
600
+ */
601
+ readonly priceMode?: ProductPriceModeEnum;
602
+ }
603
+ export interface ProductProjectionPagedQueryResponse {
604
+ /**
605
+ * Number of [results requested](/../api/general-concepts#limit).
606
+ *
607
+ *
608
+ */
609
+ readonly limit: number;
610
+ /**
611
+ * Actual number of results returned.
612
+ *
613
+ *
614
+ */
615
+ readonly count: number;
616
+ /**
617
+ * Total number of results matching the query.
618
+ * This number is an estimation that is not [strongly consistent](/../api/general-concepts#strong-consistency).
619
+ * This field is returned by default.
620
+ * For improved performance, calculating this field can be deactivated by using the query parameter `withTotal=false`.
621
+ * When the results are filtered with a [Query Predicate](/../api/predicates/query), `total` is subject to a [limit](/../api/limits#queries).
622
+ *
623
+ *
624
+ */
625
+ readonly total?: number;
626
+ /**
627
+ * Number of [elements skipped](/../api/general-concepts#offset).
628
+ *
629
+ *
630
+ */
631
+ readonly offset: number;
632
+ /**
633
+ * [ProductProjections](ctp:api:type:ProductProjection) matching the query.
634
+ *
635
+ *
636
+ */
637
+ readonly results: ProductProjection[];
638
+ }
639
+ export interface ProductProjectionPagedSearchResponse {
640
+ /**
641
+ * Number of [results requested](/../api/general-concepts#limit).
642
+ *
643
+ *
644
+ */
645
+ readonly limit: number;
646
+ /**
647
+ *
648
+ */
649
+ readonly count: number;
650
+ /**
651
+ *
652
+ */
653
+ readonly total?: number;
654
+ /**
655
+ * Number of [elements skipped](/../api/general-concepts#offset).
656
+ *
657
+ *
658
+ */
659
+ readonly offset: number;
660
+ /**
661
+ *
662
+ */
663
+ readonly results: ProductProjection[];
664
+ /**
665
+ *
666
+ */
667
+ readonly facets: FacetResults;
668
+ }
669
+ /**
670
+ * [Reference](ctp:api:type:Reference) to a [Product](ctp:api:type:Product).
671
+ *
672
+ */
673
+ export interface ProductReference {
674
+ readonly typeId: 'product';
675
+ /**
676
+ * Unique identifier of the referenced [Product](ctp:api:type:Product).
677
+ *
678
+ *
679
+ */
680
+ readonly id: string;
681
+ /**
682
+ * Contains the representation of the expanded Product. Only present in responses to requests with [Reference Expansion](/../api/general-concepts#reference-expansion) for Products.
683
+ *
684
+ *
685
+ */
686
+ readonly obj?: Product;
687
+ }
688
+ /**
689
+ * [ResourceIdentifier](ctp:api:type:ResourceIdentifier) to a [Product](ctp:api:type:Product). Either `id` or `key` is required.
690
+ *
691
+ */
692
+ export interface ProductResourceIdentifier {
693
+ readonly typeId: 'product';
694
+ /**
695
+ * Unique identifier of the referenced [Product](ctp:api:type:Product).
696
+ *
697
+ *
698
+ */
699
+ readonly id?: string;
700
+ /**
701
+ * User-defined unique identifier of the referenced [Product](ctp:api:type:Product).
702
+ *
703
+ *
704
+ */
705
+ readonly key?: string;
706
+ }
707
+ export interface ProductUpdate {
708
+ /**
709
+ * Expected version of the Product on which the changes should be applied. If the expected version does not match the actual version, a [409 Conflict](/../api/errors#409-conflict) will be returned.
710
+ *
711
+ *
712
+ */
713
+ readonly version: number;
714
+ /**
715
+ * Update actions to be performed on the Product.
716
+ *
717
+ *
718
+ */
719
+ readonly actions: ProductUpdateAction[];
720
+ }
721
+ export type ProductUpdateAction = ProductAddAssetAction | ProductAddExternalImageAction | ProductAddPriceAction | ProductAddToCategoryAction | ProductAddVariantAction | ProductChangeAssetNameAction | ProductChangeAssetOrderAction | ProductChangeMasterVariantAction | ProductChangeNameAction | ProductChangePriceAction | ProductChangeSlugAction | ProductLegacySetSkuAction | ProductMoveImageToPositionAction | ProductPublishAction | ProductRemoveAssetAction | ProductRemoveFromCategoryAction | ProductRemoveImageAction | ProductRemovePriceAction | ProductRemoveVariantAction | ProductRevertStagedChangesAction | ProductRevertStagedVariantChangesAction | ProductSetAssetCustomFieldAction | ProductSetAssetCustomTypeAction | ProductSetAssetDescriptionAction | ProductSetAssetKeyAction | ProductSetAssetSourcesAction | ProductSetAssetTagsAction | ProductSetAttributeAction | ProductSetAttributeInAllVariantsAction | ProductSetCategoryOrderHintAction | ProductSetDescriptionAction | ProductSetDiscountedPriceAction | ProductSetImageLabelAction | ProductSetKeyAction | ProductSetMetaDescriptionAction | ProductSetMetaKeywordsAction | ProductSetMetaTitleAction | ProductSetPriceKeyAction | ProductSetPriceModeAction | ProductSetPricesAction | ProductSetProductPriceCustomFieldAction | ProductSetProductPriceCustomTypeAction | ProductSetProductVariantKeyAction | ProductSetSearchKeywordsAction | ProductSetSkuAction | ProductSetTaxCategoryAction | ProductTransitionStateAction | ProductUnpublishAction;
722
+ /**
723
+ * A concrete sellable good for which inventory can be tracked. Product Variants are generally mapped to specific SKUs.
724
+ *
725
+ */
726
+ export interface ProductVariant {
727
+ /**
728
+ * A unique, sequential identifier of the Product Variant within the Product.
729
+ *
730
+ *
731
+ */
732
+ readonly id: number;
733
+ /**
734
+ * User-defined unique SKU of the Product Variant.
735
+ *
736
+ *
737
+ */
738
+ readonly sku?: string;
739
+ /**
740
+ * User-defined unique identifier of the ProductVariant.
741
+ *
742
+ * This is different from [Product](ctp:api:type:Product) `key`.
743
+ *
744
+ *
745
+ */
746
+ readonly key?: string;
747
+ /**
748
+ * The Embedded Prices of the Product Variant.
749
+ * Cannot contain two Prices of the same Price scope (with same currency, country, Customer Group, Channel, `validFrom` and `validUntil`).
750
+ *
751
+ *
752
+ */
753
+ readonly prices?: Price[];
754
+ /**
755
+ * Attributes of the Product Variant.
756
+ *
757
+ *
758
+ */
759
+ readonly attributes?: Attribute[];
760
+ /**
761
+ * Only available when [Price selection](#price-selection) is used.
762
+ * Cannot be used in a [Query Predicate](ctp:api:type:QueryPredicate).
763
+ *
764
+ *
765
+ */
766
+ readonly price?: Price;
767
+ /**
768
+ * Images of the Product Variant.
769
+ *
770
+ *
771
+ */
772
+ readonly images?: Image[];
773
+ /**
774
+ * Media assets of the Product Variant.
775
+ *
776
+ *
777
+ */
778
+ readonly assets?: Asset[];
779
+ /**
780
+ * Set if the Product Variant is tracked by [Inventory](ctp:api:type:InventoryEntry).
781
+ * Can be used as an optimization to reduce calls to the Inventory service.
782
+ * May not contain the latest Inventory State (it is [eventually consistent](/general-concepts#eventual-consistency)).
783
+ *
784
+ *
785
+ */
786
+ readonly availability?: ProductVariantAvailability;
787
+ /**
788
+ * `true` if the Product Variant matches the search query.
789
+ * Only available in response to a [Product Projection Search](ctp:api:type:ProductProjectionSearch) request.
790
+ *
791
+ *
792
+ */
793
+ readonly isMatchingVariant?: boolean;
794
+ /**
795
+ * Only available in response to a [Product Projection Search](ctp:api:type:ProductProjectionSearch) request
796
+ * with [price selection](ctp:api:type:ProductPriceSelection).
797
+ * Can be used to sort, [filter](ctp:api:type:ProductProjectionSearchFilterScopedPrice), and facet.
798
+ *
799
+ *
800
+ */
801
+ readonly scopedPrice?: ScopedPrice;
802
+ /**
803
+ * Only available in response to a [Product Projection Search](ctp:api:type:ProductProjectionSearchFilterScopedPrice) request
804
+ * with [price selection](ctp:api:type:ProductPriceSelection).
805
+ *
806
+ *
807
+ */
808
+ readonly scopedPriceDiscounted?: boolean;
809
+ }
810
+ /**
811
+ * The [InventoryEntry](ctp:api:type:InventoryEntry) information of the Product Variant. If there is a supply [Channel](ctp:api:type:Channel) for the InventoryEntry, then `channels` is returned. If not, then `isOnStock`, `restockableInDays`, and `quantityOnStock` are returned.
812
+ *
813
+ */
814
+ export interface ProductVariantAvailability {
815
+ /**
816
+ * For each [InventoryEntry](ctp:api:type:InventoryEntry) with a supply Channel, an entry is added to `channels`.
817
+ *
818
+ *
819
+ */
820
+ readonly channels?: ProductVariantChannelAvailabilityMap;
821
+ /**
822
+ * Indicates whether a Product Variant is in stock.
823
+ *
824
+ *
825
+ */
826
+ readonly isOnStock?: boolean;
827
+ /**
828
+ * Number of days to restock a Product Variant once it is out of stock.
829
+ *
830
+ *
831
+ */
832
+ readonly restockableInDays?: number;
833
+ /**
834
+ * Number of items of the Product Variant that are in stock.
835
+ *
836
+ *
837
+ */
838
+ readonly availableQuantity?: number;
839
+ }
840
+ export interface ProductVariantChannelAvailability {
841
+ /**
842
+ * Indicates whether a Product Variant is in stock in a specified [Channel](ctp:api:type:Channel).
843
+ *
844
+ *
845
+ */
846
+ readonly isOnStock?: boolean;
847
+ /**
848
+ * Number of days to restock a Product Variant once it is out of stock in a specified [Channel](ctp:api:type:Channel).
849
+ *
850
+ *
851
+ */
852
+ readonly restockableInDays?: number;
853
+ /**
854
+ * Number of items of this Product Variant that are in stock in a specified [Channel](ctp:api:type:Channel).
855
+ *
856
+ *
857
+ */
858
+ readonly availableQuantity?: number;
859
+ /**
860
+ * Unique identifier of the [InventoryEntry](ctp:api:type:InventoryEntry).
861
+ *
862
+ *
863
+ */
864
+ readonly id: string;
865
+ /**
866
+ * Current version of the [InventoryEntry](ctp:api:type:InventoryEntry).
867
+ *
868
+ *
869
+ */
870
+ readonly version: number;
871
+ }
872
+ /**
873
+ * JSON object where the key is a supply [Channel](ctp:api:type:Channel) `id` and the value is the [ProductVariantChannelAvailability](ctp:api:type:ProductVariantChannelAvailability) of the [InventoryEntry](ctp:api:type:InventoryEntry).
874
+ *
875
+ */
876
+ export interface ProductVariantChannelAvailabilityMap {
877
+ [key: string]: ProductVariantChannelAvailability;
878
+ }
879
+ /**
880
+ * Creates a Product Variant when included in the `masterVariant` and `variants` fields of the [ProductDraft](ctp:api:type:ProductDraft).
881
+ *
882
+ */
883
+ export interface ProductVariantDraft {
884
+ /**
885
+ * User-defined unique SKU of the Product Variant.
886
+ *
887
+ *
888
+ */
889
+ readonly sku?: string;
890
+ /**
891
+ * User-defined unique identifier for the ProductVariant.
892
+ *
893
+ *
894
+ */
895
+ readonly key?: string;
896
+ /**
897
+ * The Embedded Prices for the Product Variant.
898
+ * Each Price must have its unique Price scope (with same currency, country, Customer Group, Channel, `validFrom` and `validUntil`).
899
+ *
900
+ *
901
+ */
902
+ readonly prices?: PriceDraft[];
903
+ /**
904
+ * Attributes according to the respective [AttributeDefinition](ctp:api:type:AttributeDefinition).
905
+ *
906
+ *
907
+ */
908
+ readonly attributes?: Attribute[];
909
+ /**
910
+ * Images for the Product Variant.
911
+ *
912
+ *
913
+ */
914
+ readonly images?: Image[];
915
+ /**
916
+ * Media assets for the Product Variant.
917
+ *
918
+ *
919
+ */
920
+ readonly assets?: AssetDraft[];
921
+ }
922
+ export interface RangeFacetResult {
923
+ readonly type: 'range';
924
+ /**
925
+ *
926
+ */
927
+ readonly ranges: FacetRange[];
928
+ }
929
+ export interface SearchKeyword {
930
+ /**
931
+ * Text to return in the result of a [suggest query](ctp:api:type:ProductSuggestionsSuggestQuery).
932
+ *
933
+ *
934
+ */
935
+ readonly text: string;
936
+ /**
937
+ * If no tokenizer is defined, the `text` is used as a single token.
938
+ *
939
+ *
940
+ */
941
+ readonly suggestTokenizer?: SuggestTokenizer;
942
+ }
943
+ /**
944
+ * Search keywords are JSON objects primarily used by [Product Suggestions](ctp:api:type:ProductSuggestions), but are also considered for a full text search. The keys are of type [Locale](ctp:api:type:Locale), and the values are an array of [SearchKeyword](ctp:api:type:SearchKeyword).
945
+ *
946
+ */
947
+ export interface SearchKeywords {
948
+ [key: string]: SearchKeyword[];
949
+ }
950
+ export type SuggestTokenizer = CustomTokenizer | WhitespaceTokenizer;
951
+ /**
952
+ * Define arbitrary tokens that are used to match the input.
953
+ *
954
+ */
955
+ export interface CustomTokenizer {
956
+ readonly type: 'custom';
957
+ /**
958
+ * Contains custom tokens.
959
+ *
960
+ *
961
+ */
962
+ readonly inputs: string[];
963
+ }
964
+ export interface Suggestion {
965
+ /**
966
+ * The suggested text.
967
+ *
968
+ */
969
+ readonly text: string;
970
+ }
971
+ export interface SuggestionResult {
972
+ [key: string]: Suggestion[];
973
+ }
974
+ export interface TermFacetResult {
975
+ readonly type: 'terms';
976
+ /**
977
+ *
978
+ */
979
+ readonly dataType: TermFacetResultType;
980
+ /**
981
+ *
982
+ */
983
+ readonly missing: number;
984
+ /**
985
+ *
986
+ */
987
+ readonly total: number;
988
+ /**
989
+ *
990
+ */
991
+ readonly other: number;
992
+ /**
993
+ *
994
+ */
995
+ readonly terms: FacetTerm[];
996
+ }
997
+ export type TermFacetResultType = 'boolean' | 'date' | 'datetime' | 'number' | 'text' | 'time' | string;
998
+ /**
999
+ * Creates tokens by splitting the `text` field in [SearchKeyword](ctp:api:type:SearchKeyword) by whitespaces.
1000
+ *
1001
+ */
1002
+ export interface WhitespaceTokenizer {
1003
+ readonly type: 'whitespace';
1004
+ }
1005
+ /**
1006
+ * Either `variantId` or `sku` is required.
1007
+ *
1008
+ */
1009
+ export interface ProductAddAssetAction {
1010
+ readonly action: 'addAsset';
1011
+ /**
1012
+ * The `id` of the ProductVariant to update.
1013
+ *
1014
+ *
1015
+ */
1016
+ readonly variantId?: number;
1017
+ /**
1018
+ * The `sku` of the ProductVariant to update.
1019
+ *
1020
+ *
1021
+ */
1022
+ readonly sku?: string;
1023
+ /**
1024
+ * If `true`, only the staged `assets` are updated. If `false`, both the current and staged `assets` are updated.
1025
+ *
1026
+ *
1027
+ */
1028
+ readonly staged?: boolean;
1029
+ /**
1030
+ * Value to append.
1031
+ *
1032
+ *
1033
+ */
1034
+ readonly asset: AssetDraft;
1035
+ /**
1036
+ * Position in `assets` where the Asset should be put. When specified, the value must be between `0` and the total number of Assets minus `1`.
1037
+ *
1038
+ *
1039
+ */
1040
+ readonly position?: number;
1041
+ }
1042
+ /**
1043
+ * Either `variantId` or `sku` is required. Produces the [ProductImageAdded](/projects/messages#product-image-added) Message.
1044
+ *
1045
+ */
1046
+ export interface ProductAddExternalImageAction {
1047
+ readonly action: 'addExternalImage';
1048
+ /**
1049
+ * The `id` of the ProductVariant to update.
1050
+ *
1051
+ *
1052
+ */
1053
+ readonly variantId?: number;
1054
+ /**
1055
+ * The `sku` of the ProductVariant to update.
1056
+ *
1057
+ *
1058
+ */
1059
+ readonly sku?: string;
1060
+ /**
1061
+ * Value to add to `images`.
1062
+ *
1063
+ *
1064
+ */
1065
+ readonly image: Image;
1066
+ /**
1067
+ * If `true`, only the staged `images` is updated. If `false`, both the current and staged `images` is updated.
1068
+ *
1069
+ *
1070
+ */
1071
+ readonly staged?: boolean;
1072
+ }
1073
+ /**
1074
+ * Adds the given Price to the `prices` array of the [ProductVariant](ctp:api:type:ProductVariant).
1075
+ * Either `variantId` or `sku` is required.
1076
+ *
1077
+ */
1078
+ export interface ProductAddPriceAction {
1079
+ readonly action: 'addPrice';
1080
+ /**
1081
+ * The `id` of the ProductVariant to update.
1082
+ *
1083
+ *
1084
+ */
1085
+ readonly variantId?: number;
1086
+ /**
1087
+ * The `sku` of the ProductVariant to update.
1088
+ *
1089
+ *
1090
+ */
1091
+ readonly sku?: string;
1092
+ /**
1093
+ * Embedded Price to add to the Product Variant.
1094
+ *
1095
+ *
1096
+ */
1097
+ readonly price: PriceDraft;
1098
+ /**
1099
+ * If `true`, only the staged `prices` is updated. If `false`, both the current and staged `prices` are updated.
1100
+ *
1101
+ *
1102
+ */
1103
+ readonly staged?: boolean;
1104
+ }
1105
+ /**
1106
+ * Produces the [ProductAddedToCategory](/projects/messages#product-added-to-category) Message.
1107
+ */
1108
+ export interface ProductAddToCategoryAction {
1109
+ readonly action: 'addToCategory';
1110
+ /**
1111
+ * The Category to add.
1112
+ *
1113
+ *
1114
+ */
1115
+ readonly category: CategoryResourceIdentifier;
1116
+ /**
1117
+ * A string representing a number between 0 and 1. Must start with `0.` and cannot end with `0`. If empty, any existing value will be removed.
1118
+ *
1119
+ *
1120
+ */
1121
+ readonly orderHint?: string;
1122
+ /**
1123
+ * If `true`, only the staged `categories` and `categoryOrderHints` are updated. If `false`, both the current and staged `categories` and `categoryOrderHints` are updated.
1124
+ *
1125
+ *
1126
+ */
1127
+ readonly staged?: boolean;
1128
+ }
1129
+ export interface ProductAddVariantAction {
1130
+ readonly action: 'addVariant';
1131
+ /**
1132
+ * Value to set. Must be unique.
1133
+ *
1134
+ *
1135
+ */
1136
+ readonly sku?: string;
1137
+ /**
1138
+ * Value to set. Must be unique.
1139
+ *
1140
+ *
1141
+ */
1142
+ readonly key?: string;
1143
+ /**
1144
+ * Embedded Prices for the Product Variant.
1145
+ *
1146
+ *
1147
+ */
1148
+ readonly prices?: PriceDraft[];
1149
+ /**
1150
+ * Images for the Product Variant.
1151
+ *
1152
+ *
1153
+ */
1154
+ readonly images?: Image[];
1155
+ /**
1156
+ * Attributes for the Product Variant.
1157
+ *
1158
+ */
1159
+ readonly attributes?: Attribute[];
1160
+ /**
1161
+ * If `true` the new Product Variant is only staged. If `false` the new Product Variant is both current and staged.
1162
+ *
1163
+ *
1164
+ */
1165
+ readonly staged?: boolean;
1166
+ /**
1167
+ * Media assets for the Product Variant.
1168
+ *
1169
+ *
1170
+ */
1171
+ readonly assets?: AssetDraft[];
1172
+ }
1173
+ /**
1174
+ * Either `variantId` or `sku` is required. The Asset to update must be specified using either `assetId` or `assetKey`.
1175
+ *
1176
+ */
1177
+ export interface ProductChangeAssetNameAction {
1178
+ readonly action: 'changeAssetName';
1179
+ /**
1180
+ * The `id` of the ProductVariant to update.
1181
+ *
1182
+ *
1183
+ */
1184
+ readonly variantId?: number;
1185
+ /**
1186
+ * The `sku` of the ProductVariant to update.
1187
+ *
1188
+ *
1189
+ */
1190
+ readonly sku?: string;
1191
+ /**
1192
+ * If `true`, only the staged Asset is updated. If `false`, both the current and staged Asset is updated.
1193
+ *
1194
+ *
1195
+ */
1196
+ readonly staged?: boolean;
1197
+ /**
1198
+ * The `id` of the Asset to update.
1199
+ *
1200
+ *
1201
+ */
1202
+ readonly assetId?: string;
1203
+ /**
1204
+ * The `key` of the Asset to update.
1205
+ *
1206
+ *
1207
+ */
1208
+ readonly assetKey?: string;
1209
+ /**
1210
+ * New value to set. Must not be empty.
1211
+ *
1212
+ *
1213
+ */
1214
+ readonly name: LocalizedString;
1215
+ }
1216
+ /**
1217
+ * Either `variantId` or `sku` is required.
1218
+ *
1219
+ */
1220
+ export interface ProductChangeAssetOrderAction {
1221
+ readonly action: 'changeAssetOrder';
1222
+ /**
1223
+ * The `id` of the ProductVariant to update.
1224
+ *
1225
+ *
1226
+ */
1227
+ readonly variantId?: number;
1228
+ /**
1229
+ * The `sku` of the ProductVariant to update.
1230
+ *
1231
+ *
1232
+ */
1233
+ readonly sku?: string;
1234
+ /**
1235
+ * If `true`, only the staged `assets` is updated. If `false`, both the current and staged `assets` are updated.
1236
+ *
1237
+ *
1238
+ */
1239
+ readonly staged?: boolean;
1240
+ /**
1241
+ * All existing Asset `id`s of the ProductVariant in the desired new order.
1242
+ *
1243
+ *
1244
+ */
1245
+ readonly assetOrder: string[];
1246
+ }
1247
+ /**
1248
+ * Assigns the specified Product Variant to the `masterVariant` and removes the same from `variants` at the same time. The current Master Variant becomes part of the `variants` array.
1249
+ * Either `variantId` or `sku` is required.
1250
+ *
1251
+ */
1252
+ export interface ProductChangeMasterVariantAction {
1253
+ readonly action: 'changeMasterVariant';
1254
+ /**
1255
+ * The `id` of the ProductVariant to become the Master Variant.
1256
+ *
1257
+ *
1258
+ */
1259
+ readonly variantId?: number;
1260
+ /**
1261
+ * The `sku` of the ProductVariant to become the Master Variant.
1262
+ *
1263
+ *
1264
+ */
1265
+ readonly sku?: string;
1266
+ /**
1267
+ * If `true`, only the staged Master Variant is changed. If `false`, both the current and staged Master Variant are changed.
1268
+ *
1269
+ *
1270
+ */
1271
+ readonly staged?: boolean;
1272
+ }
1273
+ export interface ProductChangeNameAction {
1274
+ readonly action: 'changeName';
1275
+ /**
1276
+ * Value to set. Must not be empty.
1277
+ *
1278
+ *
1279
+ */
1280
+ readonly name: LocalizedString;
1281
+ /**
1282
+ * If `true`, only the staged `name` is updated. If `false`, both the current and staged `name` are updated.
1283
+ *
1284
+ *
1285
+ */
1286
+ readonly staged?: boolean;
1287
+ }
1288
+ export interface ProductChangePriceAction {
1289
+ readonly action: 'changePrice';
1290
+ /**
1291
+ * The `id` of the Embedded Price to update.
1292
+ *
1293
+ *
1294
+ */
1295
+ readonly priceId: string;
1296
+ /**
1297
+ * Value to set.
1298
+ *
1299
+ *
1300
+ */
1301
+ readonly price: PriceDraft;
1302
+ /**
1303
+ * If `true`, only the staged Embedded Price is updated. If `false`, both the current and staged Embedded Price are updated.
1304
+ *
1305
+ *
1306
+ */
1307
+ readonly staged?: boolean;
1308
+ }
1309
+ /**
1310
+ * Produces the [ProductSlugChanged](ctp:api:type:ProductSlugChangedMessage) Message.
1311
+ */
1312
+ export interface ProductChangeSlugAction {
1313
+ readonly action: 'changeSlug';
1314
+ /**
1315
+ * Value to set. Must not be empty. A Product can have the same slug for different [Locales](ctp:api:type:Locale), but it must be unique across the [Project](ctp:api:type:Project). Must match the pattern `^[A-Za-z0-9_-]{2,256}+$`.
1316
+ *
1317
+ *
1318
+ */
1319
+ readonly slug: LocalizedString;
1320
+ /**
1321
+ * If `true`, only the staged `slug` is updated. If `false`, both the current and staged `slug` are updated.
1322
+ *
1323
+ *
1324
+ */
1325
+ readonly staged?: boolean;
1326
+ }
1327
+ export interface ProductLegacySetSkuAction {
1328
+ readonly action: 'legacySetSku';
1329
+ /**
1330
+ *
1331
+ */
1332
+ readonly sku?: string;
1333
+ /**
1334
+ *
1335
+ */
1336
+ readonly variantId: number;
1337
+ }
1338
+ /**
1339
+ * Either `variantId` or `sku` is required.
1340
+ *
1341
+ */
1342
+ export interface ProductMoveImageToPositionAction {
1343
+ readonly action: 'moveImageToPosition';
1344
+ /**
1345
+ * The `id` of the ProductVariant to update.
1346
+ *
1347
+ *
1348
+ */
1349
+ readonly variantId?: number;
1350
+ /**
1351
+ * The `sku` of the ProductVariant to update.
1352
+ *
1353
+ *
1354
+ */
1355
+ readonly sku?: string;
1356
+ /**
1357
+ * The URL of the image to update.
1358
+ *
1359
+ *
1360
+ */
1361
+ readonly imageUrl: string;
1362
+ /**
1363
+ * Position in `images` where the image should be moved. Must be between `0` and the total number of images minus `1`.
1364
+ *
1365
+ *
1366
+ */
1367
+ readonly position: number;
1368
+ /**
1369
+ * If `true`, only the staged `images` is updated. If `false`, both the current and staged `images` is updated.
1370
+ *
1371
+ *
1372
+ */
1373
+ readonly staged?: boolean;
1374
+ }
1375
+ /**
1376
+ * Publishes product data from the Product's staged projection to its current projection.
1377
+ * Produces the [ProductPublished](ctp:api:type:ProductPublishedMessage) Message.
1378
+ */
1379
+ export interface ProductPublishAction {
1380
+ readonly action: 'publish';
1381
+ /**
1382
+ * `All` or `Prices`
1383
+ *
1384
+ *
1385
+ */
1386
+ readonly scope?: ProductPublishScope;
1387
+ }
1388
+ /**
1389
+ * Either `variantId` or `sku` is required. The Asset to remove must be specified using either `assetId` or `assetKey`.
1390
+ *
1391
+ */
1392
+ export interface ProductRemoveAssetAction {
1393
+ readonly action: 'removeAsset';
1394
+ /**
1395
+ * The `id` of the ProductVariant to update.
1396
+ *
1397
+ *
1398
+ */
1399
+ readonly variantId?: number;
1400
+ /**
1401
+ * The `sku` of the ProductVariant to update.
1402
+ *
1403
+ *
1404
+ */
1405
+ readonly sku?: string;
1406
+ /**
1407
+ * If `true`, only the staged Asset is removed. If `false`, both the current and staged Asset is removed.
1408
+ *
1409
+ *
1410
+ */
1411
+ readonly staged?: boolean;
1412
+ /**
1413
+ * The `id` of the Asset to remove.
1414
+ *
1415
+ *
1416
+ */
1417
+ readonly assetId?: string;
1418
+ /**
1419
+ * The `key` of the Asset to remove.
1420
+ *
1421
+ *
1422
+ */
1423
+ readonly assetKey?: string;
1424
+ }
1425
+ /**
1426
+ * Produces the [ProductRemovedFromCategory](ctp:api:type:ProductRemovedFromCategoryMessage) Message.
1427
+ */
1428
+ export interface ProductRemoveFromCategoryAction {
1429
+ readonly action: 'removeFromCategory';
1430
+ /**
1431
+ * The Category to remove.
1432
+ *
1433
+ *
1434
+ */
1435
+ readonly category: CategoryResourceIdentifier;
1436
+ /**
1437
+ * If `true`, only the staged `categories` and `categoryOrderHints` are removed. If `false`, both the current and staged `categories` and `categoryOrderHints` are removed.
1438
+ *
1439
+ *
1440
+ */
1441
+ readonly staged?: boolean;
1442
+ }
1443
+ /**
1444
+ * Removes a Product image and deletes it from the Content Delivery Network (external images are not deleted). Deletion from the CDN is not instant, which means the image file itself will stay available for some time after the deletion. Either `variantId` or `sku` is required.
1445
+ *
1446
+ */
1447
+ export interface ProductRemoveImageAction {
1448
+ readonly action: 'removeImage';
1449
+ /**
1450
+ * The `id` of the ProductVariant to update.
1451
+ *
1452
+ *
1453
+ */
1454
+ readonly variantId?: number;
1455
+ /**
1456
+ * The `sku` of the ProductVariant to update.
1457
+ *
1458
+ *
1459
+ */
1460
+ readonly sku?: string;
1461
+ /**
1462
+ * The URL of the image to remove.
1463
+ *
1464
+ *
1465
+ */
1466
+ readonly imageUrl: string;
1467
+ /**
1468
+ * If `true`, only the staged image is removed. If `false`, both the current and staged image is removed.
1469
+ *
1470
+ *
1471
+ */
1472
+ readonly staged?: boolean;
1473
+ }
1474
+ export interface ProductRemovePriceAction {
1475
+ readonly action: 'removePrice';
1476
+ /**
1477
+ * The `id` of the Embedded Price to remove.
1478
+ *
1479
+ *
1480
+ */
1481
+ readonly priceId: string;
1482
+ /**
1483
+ * If `true`, only the staged Embedded Price is removed. If `false`, both the current and staged Embedded Price are removed.
1484
+ *
1485
+ *
1486
+ */
1487
+ readonly staged?: boolean;
1488
+ }
1489
+ /**
1490
+ * Either `id` or `sku` is required.
1491
+ * Produces the [ProductVariantDeleted](ctp:api:type:ProductVariantDeletedMessage) Message.
1492
+ * If the Product Variant to remove is part of a [ProductSelectionAssignment](ctp:api:type:ProductSelectionAssignment)
1493
+ * its SKU will be automatically removed from the respective [ProductVariantSelection](ctp:api:type:ProductVariantSelection).
1494
+ *
1495
+ */
1496
+ export interface ProductRemoveVariantAction {
1497
+ readonly action: 'removeVariant';
1498
+ /**
1499
+ * The `id` of the ProductVariant to remove.
1500
+ *
1501
+ *
1502
+ */
1503
+ readonly id?: number;
1504
+ /**
1505
+ * The `sku` of the ProductVariant to remove.
1506
+ *
1507
+ *
1508
+ */
1509
+ readonly sku?: string;
1510
+ /**
1511
+ * If `true`, only the staged ProductVariant is removed. If `false`, both the current and staged ProductVariant is removed.
1512
+ *
1513
+ *
1514
+ */
1515
+ readonly staged?: boolean;
1516
+ }
1517
+ /**
1518
+ * Reverts the staged version of a Product to the current version. Produces the [ProductRevertedStagedChanges](ctp:api:type:ProductRevertedStagedChangesMessage) Message.
1519
+ *
1520
+ */
1521
+ export interface ProductRevertStagedChangesAction {
1522
+ readonly action: 'revertStagedChanges';
1523
+ }
1524
+ /**
1525
+ * Reverts the staged version of a ProductVariant to the current version.
1526
+ *
1527
+ */
1528
+ export interface ProductRevertStagedVariantChangesAction {
1529
+ readonly action: 'revertStagedVariantChanges';
1530
+ /**
1531
+ * The `id` of the ProductVariant to revert.
1532
+ *
1533
+ *
1534
+ */
1535
+ readonly variantId: number;
1536
+ }
1537
+ /**
1538
+ * Either `variantId` or `sku` is required. The [Asset](ctp:api:type:Asset) to update must be specified using either `assetId` or `assetKey`.
1539
+ *
1540
+ */
1541
+ export interface ProductSetAssetCustomFieldAction {
1542
+ readonly action: 'setAssetCustomField';
1543
+ /**
1544
+ * The `id` of the ProductVariant to update.
1545
+ *
1546
+ *
1547
+ */
1548
+ readonly variantId?: number;
1549
+ /**
1550
+ * The `sku` of the ProductVariant to update.
1551
+ *
1552
+ *
1553
+ */
1554
+ readonly sku?: string;
1555
+ /**
1556
+ * If `true`, only the staged Asset is updated. If `false`, both the current and staged Asset is updated.
1557
+ *
1558
+ *
1559
+ */
1560
+ readonly staged?: boolean;
1561
+ /**
1562
+ * The `id` of the Asset to update.
1563
+ *
1564
+ *
1565
+ */
1566
+ readonly assetId?: string;
1567
+ /**
1568
+ * The `key` of the Asset to update.
1569
+ *
1570
+ *
1571
+ */
1572
+ readonly assetKey?: string;
1573
+ /**
1574
+ * Name of the [Custom Field](/../api/projects/custom-fields).
1575
+ *
1576
+ *
1577
+ */
1578
+ readonly name: string;
1579
+ /**
1580
+ * If `value` is absent or `null`, this field will be removed if it exists.
1581
+ * Removing a field that does not exist returns an [InvalidOperation](ctp:api:type:InvalidOperationError) error.
1582
+ * If `value` is provided, it is set for the field defined by `name`.
1583
+ *
1584
+ *
1585
+ */
1586
+ readonly value?: any;
1587
+ }
1588
+ /**
1589
+ * Either `variantId` or `sku` is required. The [Asset](ctp:api:type:Asset) to update must be specified using either `assetId` or `assetKey`.
1590
+ *
1591
+ */
1592
+ export interface ProductSetAssetCustomTypeAction {
1593
+ readonly action: 'setAssetCustomType';
1594
+ /**
1595
+ * The `id` of the ProductVariant to update.
1596
+ *
1597
+ *
1598
+ */
1599
+ readonly variantId?: number;
1600
+ /**
1601
+ * The `sku` of the ProductVariant to update.
1602
+ *
1603
+ *
1604
+ */
1605
+ readonly sku?: string;
1606
+ /**
1607
+ * If `true`, only the staged Asset is updated. If `false`, both the current and staged Asset is updated.
1608
+ *
1609
+ *
1610
+ */
1611
+ readonly staged?: boolean;
1612
+ /**
1613
+ * The `id` of the Asset to update.
1614
+ *
1615
+ *
1616
+ */
1617
+ readonly assetId?: string;
1618
+ /**
1619
+ * The `key` of the Asset to update.
1620
+ *
1621
+ *
1622
+ */
1623
+ readonly assetKey?: string;
1624
+ /**
1625
+ * Defines the [Type](ctp:api:type:Type) that extends the Asset with [Custom Fields](/../api/projects/custom-fields).
1626
+ * If absent, any existing Type and Custom Fields are removed from the Asset.
1627
+ *
1628
+ *
1629
+ */
1630
+ readonly type?: TypeResourceIdentifier;
1631
+ /**
1632
+ * Sets the [Custom Fields](/../api/projects/custom-fields) fields for the Asset.
1633
+ *
1634
+ *
1635
+ */
1636
+ readonly fields?: FieldContainer;
1637
+ }
1638
+ /**
1639
+ * Either `variantId` or `sku` is required. The [Asset](ctp:api:type:Asset) to update must be specified using either `assetId` or `assetKey`.
1640
+ *
1641
+ */
1642
+ export interface ProductSetAssetDescriptionAction {
1643
+ readonly action: 'setAssetDescription';
1644
+ /**
1645
+ * The `id` of the ProductVariant to update.
1646
+ *
1647
+ *
1648
+ */
1649
+ readonly variantId?: number;
1650
+ /**
1651
+ * The `sku` of the ProductVariant to update.
1652
+ *
1653
+ *
1654
+ */
1655
+ readonly sku?: string;
1656
+ /**
1657
+ * If `true`, only the staged Asset is updated. If `false`, both the current and staged Asset is updated.
1658
+ *
1659
+ *
1660
+ */
1661
+ readonly staged?: boolean;
1662
+ /**
1663
+ * The `id` of the Asset to update.
1664
+ *
1665
+ *
1666
+ */
1667
+ readonly assetId?: string;
1668
+ /**
1669
+ * The `key` of the Asset to update.
1670
+ *
1671
+ *
1672
+ */
1673
+ readonly assetKey?: string;
1674
+ /**
1675
+ * Value to set. If empty, any existing value will be removed.
1676
+ *
1677
+ *
1678
+ */
1679
+ readonly description?: LocalizedString;
1680
+ }
1681
+ /**
1682
+ * Either `variantId` or `sku` is required.
1683
+ *
1684
+ */
1685
+ export interface ProductSetAssetKeyAction {
1686
+ readonly action: 'setAssetKey';
1687
+ /**
1688
+ * The `id` of the ProductVariant to update.
1689
+ *
1690
+ *
1691
+ */
1692
+ readonly variantId?: number;
1693
+ /**
1694
+ * The `sku` of the ProductVariant to update.
1695
+ *
1696
+ *
1697
+ */
1698
+ readonly sku?: string;
1699
+ /**
1700
+ * If `true`, only the staged Asset is updated. If `false`, both the current and staged Asset is updated.
1701
+ *
1702
+ *
1703
+ */
1704
+ readonly staged?: boolean;
1705
+ /**
1706
+ * The `id` of the Asset to update.
1707
+ *
1708
+ *
1709
+ */
1710
+ readonly assetId: string;
1711
+ /**
1712
+ * Value to set. If empty, any existing value will be removed.
1713
+ *
1714
+ *
1715
+ */
1716
+ readonly assetKey?: string;
1717
+ }
1718
+ /**
1719
+ * Either `variantId` or `sku` is required. The [Asset](ctp:api:type:Asset) to update must be specified using either `assetId` or `assetKey`.
1720
+ *
1721
+ */
1722
+ export interface ProductSetAssetSourcesAction {
1723
+ readonly action: 'setAssetSources';
1724
+ /**
1725
+ * The `id` of the ProductVariant to update.
1726
+ *
1727
+ *
1728
+ */
1729
+ readonly variantId?: number;
1730
+ /**
1731
+ * The `sku` of the ProductVariant to update.
1732
+ *
1733
+ *
1734
+ */
1735
+ readonly sku?: string;
1736
+ /**
1737
+ * If `true`, only the staged Asset is updated. If `false` both the current and staged Asset is updated.
1738
+ *
1739
+ *
1740
+ */
1741
+ readonly staged?: boolean;
1742
+ /**
1743
+ * The `id` of the Asset to update.
1744
+ *
1745
+ *
1746
+ */
1747
+ readonly assetId?: string;
1748
+ /**
1749
+ * The `key` of the Asset to update.
1750
+ *
1751
+ *
1752
+ */
1753
+ readonly assetKey?: string;
1754
+ /**
1755
+ * Value to set.
1756
+ *
1757
+ *
1758
+ */
1759
+ readonly sources: AssetSource[];
1760
+ }
1761
+ /**
1762
+ * Either `variantId` or `sku` is required. The Asset to update must be specified using either `assetId` or `assetKey`.
1763
+ *
1764
+ */
1765
+ export interface ProductSetAssetTagsAction {
1766
+ readonly action: 'setAssetTags';
1767
+ /**
1768
+ * The `id` of the ProductVariant to update.
1769
+ *
1770
+ *
1771
+ */
1772
+ readonly variantId?: number;
1773
+ /**
1774
+ * The `sku` of the ProductVariant to update.
1775
+ *
1776
+ *
1777
+ */
1778
+ readonly sku?: string;
1779
+ /**
1780
+ * If `true`, only the staged Asset is updated. If `false`, both the current and staged Asset is updated.
1781
+ *
1782
+ *
1783
+ */
1784
+ readonly staged?: boolean;
1785
+ /**
1786
+ * The `id` of the Asset to update.
1787
+ *
1788
+ *
1789
+ */
1790
+ readonly assetId?: string;
1791
+ /**
1792
+ * The `key` of the Asset to update.
1793
+ *
1794
+ *
1795
+ */
1796
+ readonly assetKey?: string;
1797
+ /**
1798
+ * Keywords for categorizing and organizing Assets.
1799
+ *
1800
+ *
1801
+ */
1802
+ readonly tags?: string[];
1803
+ }
1804
+ /**
1805
+ * Either `variantId` or `sku` is required.
1806
+ *
1807
+ */
1808
+ export interface ProductSetAttributeAction {
1809
+ readonly action: 'setAttribute';
1810
+ /**
1811
+ * The `id` of the ProductVariant to update.
1812
+ *
1813
+ *
1814
+ */
1815
+ readonly variantId?: number;
1816
+ /**
1817
+ * The `sku` of the ProductVariant to update.
1818
+ *
1819
+ *
1820
+ */
1821
+ readonly sku?: string;
1822
+ /**
1823
+ * The name of the Attribute to set.
1824
+ *
1825
+ *
1826
+ */
1827
+ readonly name: string;
1828
+ /**
1829
+ * Value to set for the Attribute. If empty, any existing value will be removed.
1830
+ *
1831
+ * The [AttributeType](ctp:api:type:AttributeType) determines the format of the Attribute `value` to be provided:
1832
+ *
1833
+ * - For [Enum Type](ctp:api:type:AttributeEnumType) and [Localized Enum Type](ctp:api:type:AttributeLocalizedEnumType),
1834
+ * use the `key` of the [Plain Enum Value](ctp:api:type:AttributePlainEnumValue) or [Localized Enum Value](ctp:api:type:AttributeLocalizedEnumValue) objects,
1835
+ * or the complete objects as `value`.
1836
+ * - For [Localizable Text Type](ctp:api:type:AttributeLocalizableTextType), use the [LocalizedString](ctp:api:type:LocalizedString) object as `value`.
1837
+ * - For [Money Type](ctp:api:type:AttributeMoneyType) Attributes, use the [Money](ctp:api:type:Money) object as `value`.
1838
+ * - For [Set Type](ctp:api:type:AttributeSetType) Attributes, use the entire `set` object as `value`.
1839
+ * - For [Nested Type](ctp:api:type:AttributeNestedType) Attributes, use the list of values of all Attributes of the nested Product as `value`.
1840
+ * - For [Reference Type](ctp:api:type:AttributeReferenceType) Attributes, use the [Reference](ctp:api:type:Reference) object as `value`.
1841
+ *
1842
+ *
1843
+ */
1844
+ readonly value?: any;
1845
+ /**
1846
+ * If `true`, only the staged Attribute is set. If `false`, both current and staged Attribute is set.
1847
+ *
1848
+ *
1849
+ */
1850
+ readonly staged?: boolean;
1851
+ }
1852
+ /**
1853
+ * Adds, removes, or changes a Product Attribute in all Product Variants at the same time.
1854
+ * This action is useful for setting values for Attributes with the [Constraint](ctp:api:type:AttributeConstraintEnum) `SameForAll`.
1855
+ */
1856
+ export interface ProductSetAttributeInAllVariantsAction {
1857
+ readonly action: 'setAttributeInAllVariants';
1858
+ /**
1859
+ * The name of the Attribute to set.
1860
+ *
1861
+ *
1862
+ */
1863
+ readonly name: string;
1864
+ /**
1865
+ * Value to set for the Attributes. If empty, any existing value will be removed.
1866
+ *
1867
+ * The [AttributeType](ctp:api:type:AttributeType) determines the format of the Attribute `value` to be provided:
1868
+ *
1869
+ * - For [Enum Type](ctp:api:type:AttributeEnumType) and [Localized Enum Type](ctp:api:type:AttributeLocalizedEnumType),
1870
+ * use the `key` of the [Plain Enum Value](ctp:api:type:AttributePlainEnumValue) or [Localized Enum Value](ctp:api:type:AttributeLocalizedEnumValue) objects,
1871
+ * or the complete objects as `value`.
1872
+ * - For [Localizable Text Type](ctp:api:type:AttributeLocalizableTextType), use the [LocalizedString](ctp:api:type:LocalizedString) object as `value`.
1873
+ * - For [Money Type](ctp:api:type:AttributeMoneyType) Attributes, use the [Money](ctp:api:type:Money) object as `value`.
1874
+ * - For [Set Type](ctp:api:type:AttributeSetType) Attributes, use the entire `set` object as `value`.
1875
+ * - For [Nested Type](ctp:api:type:AttributeNestedType) Attributes, use the list of values of all Attributes of the nested Product as `value`.
1876
+ * - For [Reference Type](ctp:api:type:AttributeReferenceType) Attributes, use the [Reference](ctp:api:type:Reference) object as `value`.
1877
+ *
1878
+ *
1879
+ */
1880
+ readonly value?: any;
1881
+ /**
1882
+ * If `true`, only the staged Attributes are set. If `false`, both the current and staged Attributes are set.
1883
+ *
1884
+ *
1885
+ */
1886
+ readonly staged?: boolean;
1887
+ }
1888
+ export interface ProductSetCategoryOrderHintAction {
1889
+ readonly action: 'setCategoryOrderHint';
1890
+ /**
1891
+ * The `id` of the Category to add the `orderHint`.
1892
+ *
1893
+ *
1894
+ */
1895
+ readonly categoryId: string;
1896
+ /**
1897
+ * A string representing a number between 0 and 1. Must start with `0.` and cannot end with `0`. If empty, any existing value will be removed.
1898
+ *
1899
+ *
1900
+ */
1901
+ readonly orderHint?: string;
1902
+ /**
1903
+ * If `true`, only the staged `categoryOrderHints` is updated. If `false`, both the current and staged `categoryOrderHints` are updated.
1904
+ *
1905
+ *
1906
+ */
1907
+ readonly staged?: boolean;
1908
+ }
1909
+ export interface ProductSetDescriptionAction {
1910
+ readonly action: 'setDescription';
1911
+ /**
1912
+ * Value to set. If empty, any existing value will be removed.
1913
+ *
1914
+ *
1915
+ */
1916
+ readonly description?: LocalizedString;
1917
+ /**
1918
+ * If `true`, only the staged `description` is updated. If `false`, both the current and staged `description` are updated.
1919
+ *
1920
+ *
1921
+ */
1922
+ readonly staged?: boolean;
1923
+ }
1924
+ /**
1925
+ * Produces the [ProductPriceExternalDiscountSet](ctp:api:type:ProductPriceExternalDiscountSetMessage) Message.
1926
+ *
1927
+ */
1928
+ export interface ProductSetDiscountedPriceAction {
1929
+ readonly action: 'setDiscountedPrice';
1930
+ /**
1931
+ * The `id` of the [Price](ctp:api:type:Price) to set the Discount.
1932
+ *
1933
+ *
1934
+ */
1935
+ readonly priceId: string;
1936
+ /**
1937
+ * If `true`, only the staged Embedded Price is updated. If `false`, both the current and staged Embedded Price are updated.
1938
+ *
1939
+ *
1940
+ */
1941
+ readonly staged?: boolean;
1942
+ /**
1943
+ * Value to set. If empty, any existing value will be removed.
1944
+ * The referenced [ProductDiscount](ctp:api:type:ProductDiscount) must have the Type `external`, be active, and its predicate must match the referenced Price.
1945
+ *
1946
+ *
1947
+ */
1948
+ readonly discounted?: DiscountedPriceDraft;
1949
+ }
1950
+ /**
1951
+ * Either `variantId` or `sku` is required.
1952
+ *
1953
+ */
1954
+ export interface ProductSetImageLabelAction {
1955
+ readonly action: 'setImageLabel';
1956
+ /**
1957
+ * The `sku` of the ProductVariant to update.
1958
+ *
1959
+ *
1960
+ */
1961
+ readonly sku?: string;
1962
+ /**
1963
+ * The `id` of the ProductVariant to update.
1964
+ *
1965
+ *
1966
+ */
1967
+ readonly variantId?: number;
1968
+ /**
1969
+ * The URL of the image to set the label.
1970
+ *
1971
+ *
1972
+ */
1973
+ readonly imageUrl: string;
1974
+ /**
1975
+ * Value to set. If empty, any existing value will be removed.
1976
+ *
1977
+ *
1978
+ */
1979
+ readonly label?: string;
1980
+ /**
1981
+ * If `true`, only the staged image is updated. If `false`, both the current and staged image is updated.
1982
+ *
1983
+ *
1984
+ */
1985
+ readonly staged?: boolean;
1986
+ }
1987
+ export interface ProductSetKeyAction {
1988
+ readonly action: 'setKey';
1989
+ /**
1990
+ * Value to set. If empty, any existing value will be removed.
1991
+ *
1992
+ *
1993
+ */
1994
+ readonly key?: string;
1995
+ }
1996
+ export interface ProductSetMetaDescriptionAction {
1997
+ readonly action: 'setMetaDescription';
1998
+ /**
1999
+ * Value to set. If empty, any existing value will be removed.
2000
+ *
2001
+ *
2002
+ */
2003
+ readonly metaDescription?: LocalizedString;
2004
+ /**
2005
+ * If `true`, only the staged `metaDescription` is updated. If `false`, both the current and staged `metaDescription` are updated.
2006
+ *
2007
+ *
2008
+ */
2009
+ readonly staged?: boolean;
2010
+ }
2011
+ export interface ProductSetMetaKeywordsAction {
2012
+ readonly action: 'setMetaKeywords';
2013
+ /**
2014
+ * Value to set. If empty, any existing value will be removed.
2015
+ *
2016
+ *
2017
+ */
2018
+ readonly metaKeywords?: LocalizedString;
2019
+ /**
2020
+ * If `true`, only the staged `metaKeywords` is updated. If `false`, both the current and staged `metaKeywords` are updated.
2021
+ *
2022
+ *
2023
+ */
2024
+ readonly staged?: boolean;
2025
+ }
2026
+ export interface ProductSetMetaTitleAction {
2027
+ readonly action: 'setMetaTitle';
2028
+ /**
2029
+ * Value to set. If empty, any existing value will be removed.
2030
+ *
2031
+ *
2032
+ */
2033
+ readonly metaTitle?: LocalizedString;
2034
+ /**
2035
+ * If `true`, only the staged `metaTitle` is updated. If `false`, both the current and staged `metaTitle` are updated.
2036
+ *
2037
+ *
2038
+ */
2039
+ readonly staged?: boolean;
2040
+ }
2041
+ /**
2042
+ * Sets the key of an [Embedded Price](/projects/products#embedded-price). Produces the [ProductPriceKeySet](ctp:api:type:ProductPriceKeySetMessage) Message.
2043
+ *
2044
+ */
2045
+ export interface ProductSetPriceKeyAction {
2046
+ readonly action: 'setPriceKey';
2047
+ /**
2048
+ * The `id` of the [Price](ctp:api:type:Price) to set the key.
2049
+ *
2050
+ *
2051
+ */
2052
+ readonly priceId: string;
2053
+ /**
2054
+ * If `true`, only the staged [Embedded Price](/projects/products#embedded-price) is updated. If `false`, both the current and staged Embedded Price are updated.
2055
+ *
2056
+ *
2057
+ */
2058
+ readonly staged?: boolean;
2059
+ /**
2060
+ * Value to set. If empty, any existing value will be removed.
2061
+ *
2062
+ *
2063
+ */
2064
+ readonly key?: string;
2065
+ }
2066
+ /**
2067
+ * Controls whether the Prices of a Product Variant are embedded into the Product or standalone.
2068
+ *
2069
+ */
2070
+ export interface ProductSetPriceModeAction {
2071
+ readonly action: 'setPriceMode';
2072
+ /**
2073
+ * Specifies which type of Prices should be used when looking up a price for the Product.
2074
+ *
2075
+ *
2076
+ */
2077
+ readonly priceMode?: ProductPriceModeEnum;
2078
+ }
2079
+ /**
2080
+ * Either `variantId` or `sku` is required.
2081
+ *
2082
+ */
2083
+ export interface ProductSetPricesAction {
2084
+ readonly action: 'setPrices';
2085
+ /**
2086
+ * The `id` of the ProductVariant to update.
2087
+ *
2088
+ *
2089
+ */
2090
+ readonly variantId?: number;
2091
+ /**
2092
+ * The `sku` of the ProductVariant to update.
2093
+ *
2094
+ *
2095
+ */
2096
+ readonly sku?: string;
2097
+ /**
2098
+ * The Embedded Prices to set.
2099
+ * Each Price must have its unique Price scope (with same currency, country, Customer Group, Channel, `validFrom` and `validUntil`).
2100
+ *
2101
+ *
2102
+ */
2103
+ readonly prices: PriceDraft[];
2104
+ /**
2105
+ * If `true`, only the staged ProductVariant is updated. If `false`, both the current and staged ProductVariant are updated.
2106
+ *
2107
+ *
2108
+ */
2109
+ readonly staged?: boolean;
2110
+ }
2111
+ export interface ProductSetProductPriceCustomFieldAction {
2112
+ readonly action: 'setProductPriceCustomField';
2113
+ /**
2114
+ * The `id` of the Embedded Price to update.
2115
+ *
2116
+ *
2117
+ */
2118
+ readonly priceId: string;
2119
+ /**
2120
+ * If `true`, only the staged Embedded Price Custom Field is updated. If `false`, both the current and staged Embedded Price Custom Field are updated.
2121
+ *
2122
+ *
2123
+ */
2124
+ readonly staged?: boolean;
2125
+ /**
2126
+ * Name of the [Custom Field](/../api/projects/custom-fields).
2127
+ *
2128
+ *
2129
+ */
2130
+ readonly name: string;
2131
+ /**
2132
+ * If `value` is absent or `null`, this field will be removed if it exists.
2133
+ * Removing a field that does not exist returns an [InvalidOperation](ctp:api:type:InvalidOperationError) error.
2134
+ * If `value` is provided, it is set for the field defined by `name`.
2135
+ *
2136
+ *
2137
+ */
2138
+ readonly value?: any;
2139
+ }
2140
+ export interface ProductSetProductPriceCustomTypeAction {
2141
+ readonly action: 'setProductPriceCustomType';
2142
+ /**
2143
+ * The `id` of the Embedded Price to update.
2144
+ *
2145
+ *
2146
+ */
2147
+ readonly priceId: string;
2148
+ /**
2149
+ * If `true`, only the staged Embedded Price is updated. If `false`, both the current and staged Embedded Price is updated.
2150
+ *
2151
+ *
2152
+ */
2153
+ readonly staged?: boolean;
2154
+ /**
2155
+ * Defines the [Type](ctp:api:type:Type) that extends the Price with [Custom Fields](/../api/projects/custom-fields).
2156
+ * If absent, any existing Type and Custom Fields are removed from the Embedded Price.
2157
+ *
2158
+ *
2159
+ */
2160
+ readonly type?: TypeResourceIdentifier;
2161
+ /**
2162
+ * Sets the [Custom Fields](/../api/projects/custom-fields) fields for the Embedded Price.
2163
+ *
2164
+ *
2165
+ */
2166
+ readonly fields?: FieldContainer;
2167
+ }
2168
+ /**
2169
+ * Either `variantId` or `sku` is required.
2170
+ *
2171
+ */
2172
+ export interface ProductSetProductVariantKeyAction {
2173
+ readonly action: 'setProductVariantKey';
2174
+ /**
2175
+ * The `id` of the ProductVariant to update.
2176
+ *
2177
+ *
2178
+ */
2179
+ readonly variantId?: number;
2180
+ /**
2181
+ * The `sku` of the ProductVariant to update.
2182
+ *
2183
+ *
2184
+ */
2185
+ readonly sku?: string;
2186
+ /**
2187
+ * Value to set. Must be unique. If empty, any existing value will be removed.
2188
+ *
2189
+ *
2190
+ */
2191
+ readonly key?: string;
2192
+ /**
2193
+ * If `true`, only the staged `key` is set. If `false`, both the current and staged `key` are set.
2194
+ *
2195
+ *
2196
+ */
2197
+ readonly staged?: boolean;
2198
+ }
2199
+ export interface ProductSetSearchKeywordsAction {
2200
+ readonly action: 'setSearchKeywords';
2201
+ /**
2202
+ * Value to set.
2203
+ *
2204
+ *
2205
+ */
2206
+ readonly searchKeywords: SearchKeywords;
2207
+ /**
2208
+ * If `true`, only the staged `searchKeywords` is updated. If `false`, both the current and staged `searchKeywords` are updated.
2209
+ *
2210
+ *
2211
+ */
2212
+ readonly staged?: boolean;
2213
+ }
2214
+ /**
2215
+ * SKU cannot be changed or removed if it is associated with an [InventoryEntry](ctp:api:type:InventoryEntry).
2216
+ * If the SKU to set or unset is part of a [ProductSelectionAssignment](ctp:api:type:ProductSelectionAssignment)
2217
+ * it will be automatically added or removed from the respective [ProductVariantSelection](ctp:api:type:ProductVariantSelection).
2218
+ *
2219
+ */
2220
+ export interface ProductSetSkuAction {
2221
+ readonly action: 'setSku';
2222
+ /**
2223
+ * The `id` of the ProductVariant to update.
2224
+ *
2225
+ *
2226
+ */
2227
+ readonly variantId: number;
2228
+ /**
2229
+ * Value to set. Must be unique. If empty, any existing value will be removed.
2230
+ *
2231
+ *
2232
+ */
2233
+ readonly sku?: string;
2234
+ /**
2235
+ * If `true`, only the staged `sku` is updated. If `false`, both the current and staged `sku` are updated.
2236
+ *
2237
+ *
2238
+ */
2239
+ readonly staged?: boolean;
2240
+ }
2241
+ /**
2242
+ * Cannot be staged. Published Products are immediately updated.
2243
+ *
2244
+ */
2245
+ export interface ProductSetTaxCategoryAction {
2246
+ readonly action: 'setTaxCategory';
2247
+ /**
2248
+ * The Tax Category to set. If empty, any existing value will be removed.
2249
+ *
2250
+ *
2251
+ */
2252
+ readonly taxCategory?: TaxCategoryResourceIdentifier;
2253
+ }
2254
+ /**
2255
+ * If the existing [State](ctp:api:type:State) has set `transitions`, there must be a direct transition to the new State. If `transitions` is not set, no validation is performed. Produces the [ProductStateTransition](ctp:api:type:ProductStateTransitionMessage) Message.
2256
+ *
2257
+ */
2258
+ export interface ProductTransitionStateAction {
2259
+ readonly action: 'transitionState';
2260
+ /**
2261
+ * The State to transition to. If there is no existing State, this must be an initial State.
2262
+ *
2263
+ *
2264
+ */
2265
+ readonly state?: StateResourceIdentifier;
2266
+ /**
2267
+ * If `true`, validations are disabled.
2268
+ *
2269
+ *
2270
+ */
2271
+ readonly force?: boolean;
2272
+ }
2273
+ /**
2274
+ * Removes the current projection of the Product. The staged projection is unaffected. Unpublished Products only appear in query/search results with `staged=false`. Produces the [ProductUnpublished](ctp:api:type:ProductUnpublishedMessage) Message.
2275
+ *
2276
+ * Unpublished Products cannot be added to a Cart. However, if a Cart contains Line Items for Products that were added before the Product was unpublished, the Cart is unaffected and can still be used to create an Order. To prevent this, in addition to unpublishing the Product you should remove the Prices from the Product using [Remove Price](ctp:api:type:ProductRemovePriceAction) for Embedded Prices or [Delete StandalonePrice](/projects/standalone-prices#delete-standaloneprice) for Standalone Prices.
2277
+ *
2278
+ */
2279
+ export interface ProductUnpublishAction {
2280
+ readonly action: 'unpublish';
2281
+ }
2282
+ //# sourceMappingURL=product.d.ts.map