@djust-b2b/djust-front-sdk 1.15.0 → 1.16.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.
@@ -1,1800 +1,409 @@
1
- import { CreateProductReviewParameters, CreateProductReviewResponse, GetProductOffersParameters, GetProductOffersResponse, GetProductParameters, GetProductReviewsParameters, GetProductReviewsResponse, GetProductStatReviewsParameters, GetProductStatReviewsResponse, GetProductVariantAttributesParameters, GetProductVariantAttributesResponse, GetProductVariantOffersParameters, GetProductVariantOffersResponse, GetProductVariantSuppliersParameters, GetProductVariantSuppliersResponse, GetProductVariantsListParameters, GetProductVariantsListResponse, GetProductsListParameters, GetProductsListResponse, GetRelatedProductsParameters, GetRelatedProductsResponse, AutoCompleteSearchProductsParameters, SearchProductsResponse, UpdateProductReviewParameters, UpdateProductReviewResponse, GetProductPaginatedOffersParameters, GetProductPaginatedOffersResponse } from "./definitions";
1
+ import { CreateProductReviewParameters, CreateProductReviewResponse, GetProductOffersParameters, GetProductOffersResponse, GetProductParameters, GetProductReviewsParameters, GetProductReviewsResponse, GetProductStatReviewsParameters, GetProductStatReviewsResponse, GetProductVariantAttributesParameters, GetProductVariantAttributesResponse, GetProductVariantOffersParameters, GetProductVariantOffersResponse, GetProductVariantSuppliersParameters, GetProductVariantSuppliersResponse, GetProductVariantsListParameters, GetProductVariantsListResponse, GetProductsListParameters, GetProductsListResponse, GetRelatedProductsParameters, AutoCompleteSearchProductsParameters, SearchProductsResponse, UpdateProductReviewParameters, UpdateProductReviewResponse, GetProductPaginatedOffersParameters, GetProductPaginatedOffersResponse } from "./definitions";
2
2
  /**
3
- * ## Search product with text expression for search and autocomplete
4
- * ### APICODE(PRODUCT 553)
5
- * @param {AutoCompleteSearchProductsParameters} params - Parameters for search product with text expression for search and autocomplete
6
- * #### locale - `string` | <strong style={{ color: 'red'}}>(required)</strong>
7
- * #### currency - `string` | <strong style={{ color: 'red'}}>(required)</strong>
8
- * #### input - `string`
9
- * #### pageable - `object`
10
- * #### aggregation - `string` (PRODUCT, VARIANT)
11
- * #### productTags - `string[]` | <strong style={{ color: 'red'}}>(optional)</strong>
12
- *
13
- * @returns {Promise<SearchProductsResponse>} - The response with the products
14
- *
15
- * @example
16
- * ###input
3
+ * 📄 Search products with a text expression for search and autocomplete.
4
+ *
5
+ * This function provides product search and autocomplete capabilities.
6
+ *
7
+ * 🛠 **Endpoint**: `GET /v2/shop/autocomplete`
8
+ *
9
+ * | Parameter | Type | Required | Description |
10
+ * |-----------------|--------------|----------|---------------------------------------------|
11
+ * | `input` | `string` | | The text expression to search for. |
12
+ * | `locale` | `string` | ✅ | The locale for the search. |
13
+ * | `currency` | `string` | ✅ | The currency for price formatting. |
14
+ * | `pageable.page` | `number` | ❌ | The page number to fetch (0-based index). |
15
+ * | `pageable.size` | `number` | ❌ | The number of items per page. |
16
+ * | `aggregation` | `boolean` | ❌ | Whether to include aggregation data. |
17
+ * | `productTags` | `string[]` | ❌ | Filters by product tags. |
18
+ *
19
+ * 📤 **Returns**:
20
+ * A `Promise` resolving to a `SearchProductsResponse` containing the matched products.
21
+ *
22
+ * 🛠 **Example usage**:
17
23
  * ```typescript
18
- * const response = await autoCompleteSearchProducts({
19
- * input: 'test',
20
- * locale: 'fr',
21
- * currency: 'EUR',
22
- * pageable: {
23
- * page: 1,
24
- * size: 10,
25
- * },
26
- * aggregation: 'PRODUCT',
27
- * productTags: ['tag1', 'tag2'],
24
+ * const products = await autoCompleteSearchProducts({
25
+ * input: 'laptop',
26
+ * locale: 'en-US',
27
+ * currency: 'USD',
28
+ * pageable: { page: 0, size: 10 },
28
29
  * });
30
+ * console.log(products);
29
31
  * ```
30
- *
31
- * Reponse - <strong style={{ color: 'green' }}>200</strong> - OK
32
- * ```json
33
- * {
34
- * "products": [
35
- * {
36
- * "attributes": [
37
- * {
38
- * "externalId": "string",
39
- * "externalSource": "MIRAKL",
40
- * "id": string,
41
- * "names": {
42
- * additionalProp1: "string",
43
- * additionalProp2: "string",
44
- * additionalProp3: "string",
45
- * }
46
- * }
47
- * ],
48
- * "offer": {
49
- * "currency": "EUR",
50
- * customFields: [
51
- * {
52
- * "externalId": "string",
53
- * "id": string,
54
- * "name": "string",
55
- * "values": [ "string" ]
56
- * }
57
- * ],
58
- * "externalId": "string",
59
- * "id": "string",
60
- * "leadTimeToShip": "string",
61
- * "maxOrderQuantity": 1,
62
- * "minOrderQuantity": 1,
63
- * "minShippingPrice": 0,
64
- * "minStockAlert": 0,
65
- * "packingType": "BOX",
66
- * "productUnit": "string",
67
- * "quantityPerItem": 0,
68
- * "stock": 5
69
- * },
70
- * "offerPrice": {
71
- * "discountPerItem": 0,
72
- * "discountUnitPrice": 0,
73
- * "itemPerPack": 0,
74
- * "id": "string",
75
- * "price": 0,
76
- * "externalId": "string",
77
- * "itemPrice": 0,
78
- * "offerPriceType": "PUBLIC",
79
- * "unitPrice": 0,
80
- * "unitPriceTTC": 0,
81
- * },
82
- * "product": {
83
- * "brand": "string"
84
- * "description": "string",
85
- * "externalId": string,
86
- * "id": "string",
87
- * "mainPictureUrl": "string"
88
- * "name": "string",
89
- * "sku": "string",
90
- * "tags": [
91
- * {
92
- * "id": "string",
93
- * "name": "string"
94
- * }
95
- * ],
96
- * "unit": {
97
- * "id": "string",
98
- * "type": "ITEM",
99
- * "unit": "string"
100
- * }
101
- * },
102
- * "supplier": {
103
- * "externalId": "string",
104
- * "id": "string",
105
- * "name": "string"
106
- * },
107
- * "variant": {
108
- * "description": "string",
109
- * "ean": "string",
110
- * "externalId": "string",
111
- * "id": "string",
112
- * "mpn": "string",
113
- * "name": "string",
114
- * "pictureUrls": [
115
- * {
116
- * "formatType": "string",
117
- * "heightInPx": 0,
118
- * "sizeType": "string",
119
- * "url": "string",
120
- * "widthInPx": 0,
121
- * "main": true
122
- * }
123
- * ],
124
- * "sku": "string"
125
- * },
126
- * }
127
- * ]
128
- * }
129
- * ```
130
- *
131
32
  */
132
33
  export declare function autoCompleteSearchProducts({ input, locale, currency, pageable, aggregation, productTags, }: AutoCompleteSearchProductsParameters): Promise<SearchProductsResponse>;
133
34
  /**
134
- * ## Get product list with filtering and pagination
135
- * ### APICODE(PRODUCT 552)
136
- * @param {GetProductsListParameters} params - Parameters for retrieving the product list, with filters, pagination, and locale.
137
- * #### locale - `string` | <strong style={{ color: 'red'}}>(required)</strong>
138
- * #### filters - `object` | <strong style={{ color: 'red'}}>(required)</strong>
139
- * #### pageable - `object`
35
+ * 📄 Fetches a list of products with thumbnails, reviews, attributes, and best offers.
36
+ *
37
+ * 🛠 **Endpoint**: `GET /v2/shop/search`
38
+ *
39
+ * | Parameter | Type | Required | Description |
40
+ * |-----------------|--------------|----------|---------------------------------------------|
41
+ * | `locale` | `string` | ✅ | The locale for product data. |
42
+ * | `filters` | `object` | ❌ | Filters for narrowing down search results. |
43
+ * | `pageable.page` | `number` | ❌ | The page number to fetch (0-based index). |
44
+ * | `pageable.size` | `number` | ❌ | The number of items per page. |
140
45
  *
141
- * @returns {Promise<GetProductsListResponse>} - The response with the products
46
+ * 📤 **Returns**:
47
+ * A `Promise` resolving to a `GetProductsListResponse` containing the products and their metadata.
142
48
  *
143
- * @example
144
- * ### Input
49
+ * 🛠 **Example usage**:
145
50
  * ```typescript
146
- * const response = await getProductsList({
147
- * locale: 'fr',
148
- * filters: {
149
- * currency: 'EUR',
150
- * categoryIds: ['category1', 'category2'],
151
- * skus: ['sku1', 'sku2'],
152
- * brand: ['brand1', 'brand2'],
153
- * query: 'query',
154
- * productTags: ['tag1', 'tag2'],
155
- * aggregation: 'PRODUCT',
156
- * attributes: ['attribute1', 'attribute2'],
157
- * suppliers: ['supplier1', 'supplier2'],
158
- * customFields: ['customField1', 'customField2'],
159
- * offerUpdatedTime: '2024-12-11T10:28:21.123Z',
160
- * productUpdatedTime: '2024-12-11T10:28:21.123Z'
161
- * },
162
- * pageable: {
163
- * page: 1,
164
- * size: 10,
165
- * sort: ['price,asc']
166
- * }
51
+ * const products = await getProductsList({
52
+ * locale: 'en-US',
53
+ * filters: { category: 'electronics' },
54
+ * pageable: { page: 1, size: 20 },
167
55
  * });
168
- * ```
169
- *
170
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
171
- * ```json
172
- * {
173
- * "facets": {
174
- * "attributes": [
175
- * {
176
- * "id": "string",
177
- * "name": "string",
178
- * "values": ["string"]
179
- * }
180
- * ],
181
- * "brands": [
182
- * {
183
- * "id": "string",
184
- * "name": "string"
185
- * }
186
- * ],
187
- * "customFields": [
188
- * {
189
- * "id": "string",
190
- * "name": "string",
191
- * "values": ["string"]
192
- * }
193
- * ],
194
- * "productTags": [
195
- * {
196
- * "id": "string",
197
- * "name": "string"
198
- * }
199
- * ],
200
- * "suppliers": [
201
- * {
202
- * "externalId": "string",
203
- * "id": "string",
204
- * "name": "string"
205
- * }
206
- * ]
207
- * },
208
- * "products": {
209
- * "content": [
210
- * {
211
- * "attributes": [
212
- * {
213
- * "externalId": "string",
214
- * "externalSource": "MIRAKL",
215
- * "id": "string",
216
- * "names": {
217
- * "additionalProp1": "string",
218
- * "additionalProp2": "string",
219
- * "additionalProp3": "string"
220
- * }
221
- * }
222
- * ],
223
- * "offer": {
224
- * "currency": "USD",
225
- * "customFields": [
226
- * {
227
- * "externalId": "string",
228
- * "id": "string",
229
- * "name": "string",
230
- * "values": ["string"]
231
- * }
232
- * ],
233
- * "externalId": "string",
234
- * "id": "string",
235
- * "leadTimeToShip": "string",
236
- * "maxOrderQuantity": 0,
237
- * "minOrderQuantity": 0,
238
- * "minShippingPrice": 0,
239
- * "minStockAlert": 0,
240
- * "packingType": "BOX",
241
- * "productUnit": "string",
242
- * "quantityPerItem": 0,
243
- * "stock": 0
244
- * },
245
- * "offerPrice": {
246
- * "discountItemPrice": 0,
247
- * "discountUnitPrice": 0,
248
- * "externalId": "string",
249
- * "id": "string",
250
- * "itemPerPack": 0,
251
- * "itemPrice": 0,
252
- * "offerPriceType": "PUBLIC",
253
- * "price": 0,
254
- * "unitPrice": 0,
255
- * "unitPriceTTC": 0
256
- * },
257
- * "product": {
258
- * "brand": "string",
259
- * "description": "string",
260
- * "externalId": "string",
261
- * "id": "string",
262
- * "mainPictureUrl": "string",
263
- * "name": "string",
264
- * "sku": "string",
265
- * "tags": [
266
- * {
267
- * "id": "string",
268
- * "name": "string"
269
- * }
270
- * ],
271
- * "unit": {
272
- * "id": "string",
273
- * "type": "ITEM",
274
- * "unit": "string"
275
- * }
276
- * },
277
- * "supplier": {
278
- * "externalId": "string",
279
- * "id": "string",
280
- * "name": "string"
281
- * },
282
- * "variant": {
283
- * "description": "string",
284
- * "ean": "string",
285
- * "externalId": "string",
286
- * "id": "string",
287
- * "mpn": "string",
288
- * "name": "string",
289
- * "pictureUrls": [
290
- * {
291
- * "formatType": "string",
292
- * "heightInPx": 0,
293
- * "main": true,
294
- * "sizeType": "string",
295
- * "url": "string",
296
- * "widthInPx": 0
297
- * }
298
- * ],
299
- * "sku": "string"
300
- * }
301
- * }
302
- * ],
303
- * "empty": true,
304
- * "first": true,
305
- * "last": true,
306
- * "number": 0,
307
- * "numberOfElements": 0,
308
- * "pageable": {
309
- * "offset": 0,
310
- * "pageNumber": 0,
311
- * "pageSize": 0,
312
- * "paged": true,
313
- * "sort": [
314
- * {
315
- * "ascending": true,
316
- * "descending": true,
317
- * "direction": "ASC",
318
- * "ignoreCase": true,
319
- * "nullHandling": "NATIVE",
320
- * "property": "string"
321
- * }
322
- * ],
323
- * "unpaged": true
324
- * },
325
- * "size": 0,
326
- * "sort": [
327
- * {
328
- * "ascending": true,
329
- * "descending": true,
330
- * "direction": "ASC",
331
- * "ignoreCase": true,
332
- * "nullHandling": "NATIVE",
333
- * "property": "string"
334
- * }
335
- * ],
336
- * "totalElements": 0,
337
- * "totalPages": 0
338
- * }
339
- * }
56
+ * console.log(products);
340
57
  * ```
341
58
  */
342
59
  export declare function getProductsList({ locale, filters, pageable, }: GetProductsListParameters): Promise<GetProductsListResponse>;
343
60
  /**
344
- * ## Get paginated list of a product's variants
345
- * ### APICODE(PRODUCT 506)
346
- * @param {GetProductVariantsListParameters} params - Parameters for retrieving a product's variants, with pagination and locale.
347
- * #### productSku - `string` | <strong style={{ color: 'red'}}>(required)</strong>
348
- * #### locale - `string`
349
- * #### pageable - `object`
61
+ * 📄 Fetches product variants by product SKU.
62
+ *
63
+ * 🛠 **Endpoint**: `GET /v1/shop/product-variants`
64
+ *
65
+ * | Parameter | Type | Required | Description |
66
+ * |-----------------|--------------|----------|--------------------------------------------|
67
+ * | `productSku` | `string` | ✅ | The SKU of the product. |
68
+ * | `locale` | `string` | ❌ | The locale for product variants. |
69
+ * | `pageable.page` | `number` | ❌ | The page number to fetch (0-based index). |
70
+ * | `pageable.size` | `number` | ❌ | The number of items per page. |
350
71
  *
351
- * @returns {Promise<GetProductVariantsListResponse>} - The response with the product variants
72
+ * 📤 **Returns**:
73
+ * A `Promise` resolving to a `GetProductVariantsListResponse` containing the product variants.
352
74
  *
353
- * @example
354
- * ### Input
75
+ * 🛠 **Example usage**:
355
76
  * ```typescript
356
- * const response = await getProductVariantsList({
357
- * productSku: 'product-sku-123',
358
- * locale: 'fr',
359
- * pageable: {
360
- * page: 1,
361
- * size: 10,
362
- * sort: ['name,asc']
363
- * }
77
+ * const variants = await getProductVariantsList({
78
+ * productSku: 'sku123',
79
+ * locale: 'en-US',
80
+ * pageable: { page: 0, size: 10 },
364
81
  * });
365
- * ```
366
- *
367
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
368
- * ```json
369
- * {
370
- * "content": [
371
- * {
372
- * "attributeValues": [
373
- * {
374
- * "attribute": {
375
- * "externalId": "string",
376
- * "id": "string",
377
- * "name": {
378
- * "additionalProp1": "string",
379
- * "additionalProp2": "string",
380
- * "additionalProp3": "string"
381
- * },
382
- * "type": "LONG_TEXT"
383
- * },
384
- * "value": {}
385
- * }
386
- * ],
387
- * "description": "string",
388
- * "ean": "string",
389
- * "externalId": "string",
390
- * "id": "string",
391
- * "info": {
392
- * "description": "string",
393
- * "ean": "string",
394
- * "mpn": "string",
395
- * "name": "string",
396
- * "sku": "string"
397
- * },
398
- * "mpn": "string",
399
- * "name": "string",
400
- * "productMediaInfoDTO": {
401
- * "isMain": true,
402
- * "urls": [
403
- * {
404
- * "formatType": "string",
405
- * "heightInPx": 0,
406
- * "sizeType": "string",
407
- * "url": "string",
408
- * "widthInPx": 0
409
- * }
410
- * ]
411
- * },
412
- * "productPictures": [
413
- * {
414
- * "isMain": true,
415
- * "urls": [
416
- * {
417
- * "formatType": "string",
418
- * "heightInPx": 0,
419
- * "sizeType": "string",
420
- * "url": "string",
421
- * "widthInPx": 0
422
- * }
423
- * ]
424
- * }
425
- * ],
426
- * "skuProduct": "string",
427
- * "skuVariant": "string",
428
- * "status": "NEW"
429
- * }
430
- * ],
431
- * "empty": true,
432
- * "first": true,
433
- * "last": true,
434
- * "number": 0,
435
- * "numberOfElements": 0,
436
- * "pageable": {
437
- * "offset": 0,
438
- * "pageNumber": 0,
439
- * "pageSize": 0,
440
- * "paged": true,
441
- * "sort": [
442
- * {
443
- * "ascending": true,
444
- * "descending": true,
445
- * "direction": "ASC",
446
- * "ignoreCase": true,
447
- * "nullHandling": "NATIVE",
448
- * "property": "string"
449
- * }
450
- * ],
451
- * "unpaged": true
452
- * },
453
- * "size": 0,
454
- * "sort": [
455
- * {
456
- * "ascending": true,
457
- * "descending": true,
458
- * "direction": "ASC",
459
- * "ignoreCase": true,
460
- * "nullHandling": "NATIVE",
461
- * "property": "string"
462
- * }
463
- * ],
464
- * "totalElements": 0,
465
- * "totalPages": 0
466
- * }
82
+ * console.log(variants);
467
83
  * ```
468
84
  */
469
85
  export declare function getProductVariantsList({ productSku, locale, pageable, }: GetProductVariantsListParameters): Promise<GetProductVariantsListResponse>;
470
86
  /**
471
- * ## Get List of Offers for a Product Variant
472
- * ### APICODE(PRODUCT 508)
473
- * @param {GetProductVariantOffersParameters} params - Parameters for retrieving offers of a product variant.
474
- * #### productIdentifier - `string` | <strong style={{ color: 'red'}}>(required)</strong>
475
- * #### productIdType - `string` | <strong style={{ color: 'red'}}>(required)</strong> (e.g., "sku", "id", or "externalId")
476
- * #### currency - `string`
87
+ * 📄 Fetches offers for a specific product variant.
477
88
  *
478
- * @returns {Promise<GetProductVariantOffersResponse>} - The response with the product variant offers
89
+ * Retrieves the list of offers available for a product variant identified by SKU, ID, or external ID.
479
90
  *
480
- * @example
481
- * ### Input
482
- * ```typescript
483
- * const response = await getProductVariantOffers({
484
- * productIdentifier: 'sku-12345',
91
+ * 🛠 **Endpoint**: `GET /v1/shop/product-variants/{productIdentifier}/offers`
92
+ *
93
+ * | Parameter | Type | Required | Description |
94
+ * |-----------------------|-------------|------------|---------------------------------------------------------------|
95
+ * | `productIdentifier` | `string` | ✅ | Unique identifier for the product variant (e.g., SKU, ID). |
96
+ * | `productIdType` | `string` | ✅ | The type of identifier: `"sku"`, `"id"`, or `"externalId"`. |
97
+ * | `currency` | `string` | ✅ | Currency in which offers should be returned (e.g., `"USD"`). |
98
+ *
99
+ * 📤 **Returns**:
100
+ * A `Promise<GetProductVariantOffersResponse>` containing a list of offers for the product variant.
101
+ *
102
+ * 🛠 **Example usage**:
103
+ * ```ts
104
+ * const offers = await getProductVariantOffers({
105
+ * productIdentifier: 'sku123',
485
106
  * productIdType: 'sku',
486
- * currency: 'EUR'
107
+ * currency: 'USD',
487
108
  * });
109
+ *
110
+ * console.log(offers);
488
111
  * ```
489
112
  *
490
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
113
+ * **Example Response**:
491
114
  * ```json
492
- * [
493
- * {
494
- * "estimatedDeliveryDates": [
495
- * {
496
- * "code": "string",
497
- * "deliveryTimeRange": {
498
- * "earliestDeliveryDate": "2025-01-06T14:37:05.142Z",
499
- * "latestDeliveryDate": "2025-01-06T14:37:05.142Z"
500
- * },
501
- * "label": "string",
502
- * "shippingPriceUnit": 0,
503
- * "shippingZone": {
504
- * "code": "string",
505
- * "label": "string"
506
- * }
507
- * }
508
- * ],
509
- * "offerInventory": {
510
- * "brand": "string",
115
+ * {
116
+ * "offers": [
117
+ * {
118
+ * "id": "offer1",
119
+ * "price": 19.99,
511
120
  * "currency": "USD",
512
- * "customFieldValues": [
513
- * {
514
- * "customField": {
515
- * "externalId": "string",
516
- * "id": "string",
517
- * "name": {
518
- * "additionalProp1": "string",
519
- * "additionalProp2": "string",
520
- * "additionalProp3": "string"
521
- * },
522
- * "type": "LONG_TEXT"
523
- * },
524
- * "value": {}
525
- * }
526
- * ],
527
- * "externalSource": "MIRAKL",
528
- * "id": "string",
529
- * "leadTimeToShip": 0,
530
- * "maxOrderQuantity": 0,
531
- * "minOrderQuantity": 0,
532
- * "minShippingPrice": 0,
533
- * "minShippingPriceAdditional": 0,
534
- * "minShippingType": "string",
535
- * "minShippingZone": "string",
536
- * "minStockAlert": 0,
537
- * "packingType": "BOX",
538
- * "productUnit": "string",
539
- * "quantityPerItem": 0,
540
- * "status": "ACTIVE",
541
- * "stock": 0,
542
- * "variant": {
543
- * "attributeValues": [
544
- * {
545
- * "attribute": {
546
- * "externalId": "string",
547
- * "id": "string",
548
- * "name": {
549
- * "additionalProp1": "string",
550
- * "additionalProp2": "string",
551
- * "additionalProp3": "string"
552
- * },
553
- * "type": "LONG_TEXT"
554
- * },
555
- * "value": {}
556
- * }
557
- * ],
558
- * "description": "string",
559
- * "ean": "string",
560
- * "externalId": "string",
561
- * "id": "string",
562
- * "info": {
563
- * "description": "string",
564
- * "ean": "string",
565
- * "mpn": "string",
566
- * "name": "string",
567
- * "sku": "string"
568
- * },
569
- * "mpn": "string",
570
- * "name": "string",
571
- * "productMediaInfoDTO": {
572
- * "isMain": true,
573
- * "urls": [
574
- * {
575
- * "formatType": "string",
576
- * "heightInPx": 0,
577
- * "sizeType": "string",
578
- * "url": "string",
579
- * "widthInPx": 0
580
- * }
581
- * ]
582
- * },
583
- * "productPictures": [
584
- * {
585
- * "isMain": true,
586
- * "urls": [
587
- * {
588
- * "formatType": "string",
589
- * "heightInPx": 0,
590
- * "sizeType": "string",
591
- * "url": "string",
592
- * "widthInPx": 0
593
- * }
594
- * ]
595
- * }
596
- * ],
597
- * "skuProduct": "string",
598
- * "skuVariant": "string",
599
- * "status": "NEW"
600
- * }
121
+ * "availability": "In Stock",
122
+ * "seller": "Seller A"
601
123
  * },
602
- * "offerPrices": [
603
- * {
604
- * "customerAccountId": "string",
605
- * "customerTagId": "string",
606
- * "externalId": "string",
607
- * "id": "string",
608
- * "itemPerPack": 0,
609
- * "offerPriceType": "PUBLIC",
610
- * "priceRanges": [
611
- * {
612
- * "discountPrice": {
613
- * "itemPrice": 0,
614
- * "itemPriceTTC": 0,
615
- * "unitPrice": 0,
616
- * "unitPriceTTC": 0
617
- * },
618
- * "price": {
619
- * "itemPrice": 0,
620
- * "itemPriceTTC": 0,
621
- * "unitPrice": 0,
622
- * "unitPriceTTC": 0
623
- * },
624
- * "quantity": 0
625
- * }
626
- * ]
627
- * }
628
- * ],
629
- * "supplier": {
630
- * "customFieldValues": [
631
- * {
632
- * "customField": {
633
- * "externalId": "string",
634
- * "externalSource": "MIRAKL",
635
- * "faceted": true,
636
- * "id": "string",
637
- * "indexable": true,
638
- * "mandatory": true,
639
- * "name": {
640
- * "additionalProp1": "string",
641
- * "additionalProp2": "string",
642
- * "additionalProp3": "string"
643
- * },
644
- * "role": "PRODUCT_TAX_RATE",
645
- * "sealedTarget": "string",
646
- * "searchable": true,
647
- * "sortable": true,
648
- * "status": "ACTIVE"
649
- * },
650
- * "value": {}
651
- * }
652
- * ],
653
- * "externalId": "string",
654
- * "id": "string",
655
- * "name": "string",
656
- * "returnPolicy": "string",
657
- * "supplierRating": "string"
124
+ * {
125
+ * "id": "offer2",
126
+ * "price": 17.99,
127
+ * "currency": "USD",
128
+ * "availability": "Limited Stock",
129
+ * "seller": "Seller B"
658
130
  * }
659
- * }
660
- * ]
131
+ * ]
132
+ * }
661
133
  * ```
662
134
  */
663
135
  export declare function getProductVariantOffers({ productIdentifier, productIdType, currency, }: GetProductVariantOffersParameters): Promise<GetProductVariantOffersResponse>;
664
136
  /**
665
- * ## Get Suppliers of a Product Variant
666
- * ### APICODE(PRODUCT 507)
667
- * @param {GetProductVariantSuppliersParameters} params - Parameters for retrieving the suppliers of a product variant.
668
- * #### productVariantId - `string` | <strong style={{ color: 'red'}}>(required)</strong>
137
+ * 📄 Fetches suppliers associated with a product variant.
669
138
  *
670
- * @returns {Promise<GetProductVariantSuppliersResponse>} - The response with the product variant suppliers
139
+ * Retrieves a list of suppliers for a given product variant.
671
140
  *
672
- * @example
673
- * ### Input
674
- * ```typescript
675
- * const response = await getProductVariantSuppliers({
676
- * productVariantId: 'variant-12345'
141
+ * 🛠 **Endpoint**: `GET /v1/shop/product-variants/{productVariantId}/suppliers`
142
+ *
143
+ * | Parameter | Type | Required | Description |
144
+ * |-----------------------|-------------------------------|------------|---------------------------------------------------------------|
145
+ * | `productVariantId` | `string` | ✅ | ID of the product variant. |
146
+ *
147
+ * 📤 **Returns**:
148
+ * A `Promise<GetProductVariantSuppliersResponse>` containing the list of suppliers.
149
+ *
150
+ * 🛠 **Example usage**:
151
+ * ```ts
152
+ * const suppliers = await getProductVariantSuppliers({
153
+ * productVariantId: 'variant123',
677
154
  * });
678
- * ```
679
155
  *
680
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
681
- * ```json
682
- * [
683
- * {
684
- * "additionalImageLink": [
685
- * "string"
686
- * ],
687
- * "banner": "string",
688
- * "createdAt": "2025-01-06T14:43:34.185Z",
689
- * "customFieldValues": [
690
- * {
691
- * "customField": {
692
- * "externalId": "string",
693
- * "externalSource": "MIRAKL",
694
- * "faceted": true,
695
- * "id": "string",
696
- * "indexable": true,
697
- * "mandatory": true,
698
- * "name": {
699
- * "additionalProp1": "string",
700
- * "additionalProp2": "string",
701
- * "additionalProp3": "string"
702
- * },
703
- * "role": "PRODUCT_TAX_RATE",
704
- * "sealedTarget": "string",
705
- * "searchable": true,
706
- * "sortable": true,
707
- * "status": "ACTIVE"
708
- * },
709
- * "value": {}
710
- * }
711
- * ],
712
- * "description": "string",
713
- * "evaluationCount": 0,
714
- * "externalId": "string",
715
- * "externalSource": "MIRAKL",
716
- * "id": "string",
717
- * "isDefault": true,
718
- * "logo": "string",
719
- * "name": "string",
720
- * "paymentDueDate": {
721
- * "paymentDueDateDelay": 0,
722
- * "paymentDueDateMode": "SIMPLE"
723
- * },
724
- * "returnPolicy": "string",
725
- * "supplierRating": "string",
726
- * "supplierStatus": "ACTIVE",
727
- * "totalOffers": 0,
728
- * "totalOrders": 0,
729
- * "updatedAt": "2025-01-06T14:43:34.185Z"
730
- * }
731
- * ]
156
+ * console.log(suppliers);
732
157
  * ```
733
158
  */
734
159
  export declare function getProductVariantSuppliers({ productVariantId, }: GetProductVariantSuppliersParameters): Promise<GetProductVariantSuppliersResponse>;
735
160
  /**
736
- * ## Get a Product by SKU, ID, or External ID
737
- * ### APICODE(PRODUCT 500)
738
- * @param {GetProductParameters} params - Parameters for retrieving a product.
739
- * #### productIdentifier - `string` | <strong style={{ color: 'red'}}>(required)</strong>
740
- * #### productIdType - `"sku" | "id" | "externalId"` | <strong style={{ color: 'red'}}>(required)</strong>
741
- * #### locale - `string`
161
+ * 📄 Fetches details for a specific product.
742
162
  *
743
- * @returns {Promise<Product>}
163
+ * Retrieves information about a product identified by SKU, ID, or external ID.
744
164
  *
745
- * @example
746
- * ### Input
747
- * ```typescript
748
- * const response = await getProduct({
749
- * productIdentifier: "product-12345",
750
- * productIdType: "sku",
751
- * locale: "en-US"
165
+ * 🛠 **Endpoint**: `GET /v1/shop/products/{productIdentifier}`
166
+ *
167
+ * | Parameter | Type | Required | Description |
168
+ * |-----------------------|-------------|------------|---------------------------------------------------------------|
169
+ * | `productIdentifier` | `string` | ✅ | Unique identifier for the product (e.g., SKU, ID). |
170
+ * | `productIdType` | `string` | ✅ | The type of identifier: `"sku"`, `"id"`, or `"externalId"`. |
171
+ * | `locale` | `string` | ✅ | Locale for the product details (e.g., `"en_US"`). |
172
+ *
173
+ * 📤 **Returns**:
174
+ * A `Promise<GetProductsListResponse>` containing the product details.
175
+ *
176
+ * 🛠 **Example usage**:
177
+ * ```ts
178
+ * const product = await getProduct({
179
+ * productIdentifier: 'sku123',
180
+ * productIdType: 'sku',
181
+ * locale: 'en_US',
752
182
  * });
753
- * ```
754
183
  *
755
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
756
- * ```json
757
- * {
758
- * "attributeValues": [
759
- * {
760
- * "attribute": {
761
- * "externalId": "string",
762
- * "id": "string",
763
- * "name": {
764
- * "additionalProp1": "string",
765
- * "additionalProp2": "string",
766
- * "additionalProp3": "string"
767
- * },
768
- * "type": "LONG_TEXT"
769
- * },
770
- * "value": {}
771
- * }
772
- * ],
773
- * "classificationCategory": {
774
- * "externalId": "string",
775
- * "externalSource": "MIRAKL",
776
- * "id": "string",
777
- * "name": "string"
778
- * },
779
- * "externalId": "string",
780
- * "externalSource": "MIRAKL",
781
- * "id": "string",
782
- * "info": {
783
- * "brand": "string",
784
- * "description": "string",
785
- * "name": "string",
786
- * "sku": "string",
787
- * "unit": {
788
- * "id": "string",
789
- * "type": "ITEM",
790
- * "unit": "string"
791
- * }
792
- * },
793
- * "productPictures": [
794
- * {
795
- * "isMain": true,
796
- * "urls": [
797
- * {
798
- * "formatType": "string",
799
- * "heightInPx": 0,
800
- * "sizeType": "string",
801
- * "url": "string",
802
- * "widthInPx": 0
803
- * }
804
- * ]
805
- * }
806
- * ],
807
- * "productStatus": "NEW",
808
- * "productUnit": {
809
- * "id": "string",
810
- * "type": "ITEM",
811
- * "unit": "string"
812
- * },
813
- * "sku": "string",
814
- * "tags": [
815
- * {
816
- * "id": "string",
817
- * "name": "string"
818
- * }
819
- * ]
820
- * }
184
+ * console.log(product);
821
185
  * ```
822
186
  */
823
187
  export declare function getProduct({ productIdentifier, productIdType, locale, }: GetProductParameters): Promise<GetProductsListResponse>;
824
188
  /**
825
- * ## Get Offers of a Product by SKU, ID, or External ID
826
- * @deprecated This method is deprecated and replaced by APICODE(PRODUCT 509). Please update your implementation to use the new API.
827
- *
828
- * ### Deprecated Function
829
- * Fetches the list of offers for a given product based on its identifier.
830
- * ### APICODE(PRODUCT 502)
831
-
832
- * @param {GetProductOffersParameters} params - Parameters for retrieving product offers.
833
- * #### productIdentifier - `string` | <strong style={{ color: 'red'}}>required</strong>
834
- * #### productIdType - `"sku" | "id" | "externalId"` | <strong style={{ color: 'red'}}>required</strong>
835
- * #### locale - `string`
836
- * #### currency - `string`
837
- *
838
- * @returns {Promise<GetProductOffersResponse>} A promise that resolves to the response from the API.
839
- *
840
- * @example
841
- * ### Input
842
- * ```typescript
843
- * const response = await getProductOffers({
844
- * productIdentifier: "product-12345",
845
- * productIdType: "sku",
846
- * locale: "en-US",
847
- * currency: "USD"
848
- * });
849
- * ```
189
+ * 📄 Fetches product offers by SKU, ID, or external ID.
850
190
  *
851
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
852
- * ```json
853
- * [
854
- * {
855
- * "estimatedDeliveryDates": [
856
- * {
857
- * "code": "string",
858
- * "deliveryTimeRange": {
859
- * "earliestDeliveryDate": "2025-01-06T15:57:23.302Z",
860
- * "latestDeliveryDate": "2025-01-06T15:57:23.302Z"
861
- * },
862
- * "label": "string",
863
- * "shippingPriceUnit": 0,
864
- * "shippingZone": {
865
- * "code": "string",
866
- * "label": "string"
867
- * }
868
- * }
869
- * ],
870
- * "offerInventory": {
871
- * "brand": "string",
872
- * "currency": "USD",
873
- * "customFieldValues": [
874
- * {
875
- * "customField": {
876
- * "externalId": "string",
877
- * "id": "string",
878
- * "name": {
879
- * "additionalProp1": "string",
880
- * "additionalProp2": "string",
881
- * "additionalProp3": "string"
882
- * },
883
- * "type": "LONG_TEXT"
884
- * },
885
- * "value": {}
886
- * }
887
- * ],
888
- * "externalSource": "MIRAKL",
889
- * "id": "string",
890
- * "leadTimeToShip": 0,
891
- * "maxOrderQuantity": 0,
892
- * "minOrderQuantity": 0,
893
- * "minShippingPrice": 0,
894
- * "minShippingPriceAdditional": 0,
895
- * "minShippingType": "string",
896
- * "minShippingZone": "string",
897
- * "minStockAlert": 0,
898
- * "packingType": "BOX",
899
- * "productUnit": "string",
900
- * "quantityPerItem": 0,
901
- * "status": "ACTIVE",
902
- * "stock": 0,
903
- * "variant": {
904
- * "attributeValues": [
905
- * {
906
- * "attribute": {
907
- * "externalId": "string",
908
- * "id": "string",
909
- * "name": {
910
- * "additionalProp1": "string",
911
- * "additionalProp2": "string",
912
- * "additionalProp3": "string"
913
- * },
914
- * "type": "LONG_TEXT"
915
- * },
916
- * "value": {}
917
- * }
918
- * ],
919
- * "description": "string",
920
- * "ean": "string",
921
- * "externalId": "string",
922
- * "id": "string",
923
- * "info": {
924
- * "description": "string",
925
- * "ean": "string",
926
- * "mpn": "string",
927
- * "name": "string",
928
- * "sku": "string"
929
- * },
930
- * "mpn": "string",
931
- * "name": "string",
932
- * "productMediaInfoDTO": {
933
- * "isMain": true,
934
- * "urls": [
935
- * {
936
- * "formatType": "string",
937
- * "heightInPx": 0,
938
- * "sizeType": "string",
939
- * "url": "string",
940
- * "widthInPx": 0
941
- * }
942
- * ]
943
- * },
944
- * "productPictures": [
945
- * {
946
- * "isMain": true,
947
- * "urls": [
948
- * {
949
- * "formatType": "string",
950
- * "heightInPx": 0,
951
- * "sizeType": "string",
952
- * "url": "string",
953
- * "widthInPx": 0
954
- * }
955
- * ]
956
- * }
957
- * ],
958
- * "skuProduct": "string",
959
- * "skuVariant": "string",
960
- * "status": "NEW"
961
- * }
962
- * },
963
- * "offerPrices": [
964
- * {
965
- * "customerAccountId": "string",
966
- * "customerTagId": "string",
967
- * "externalId": "string",
968
- * "id": "string",
969
- * "itemPerPack": 0,
970
- * "offerPriceType": "PUBLIC",
971
- * "priceRanges": [
972
- * {
973
- * "discountPrice": {
974
- * "itemPrice": 0,
975
- * "itemPriceTTC": 0,
976
- * "unitPrice": 0,
977
- * "unitPriceTTC": 0
978
- * },
979
- * "price": {
980
- * "itemPrice": 0,
981
- * "itemPriceTTC": 0,
982
- * "unitPrice": 0,
983
- * "unitPriceTTC": 0
984
- * },
985
- * "quantity": 0
986
- * }
987
- * ]
988
- * }
989
- * ],
990
- * "supplier": {
991
- * "customFieldValues": [
992
- * {
993
- * "customField": {
994
- * "externalId": "string",
995
- * "externalSource": "MIRAKL",
996
- * "faceted": true,
997
- * "id": "string",
998
- * "indexable": true,
999
- * "mandatory": true,
1000
- * "name": {
1001
- * "additionalProp1": "string",
1002
- * "additionalProp2": "string",
1003
- * "additionalProp3": "string"
1004
- * },
1005
- * "role": "PRODUCT_TAX_RATE",
1006
- * "sealedTarget": "string",
1007
- * "searchable": true,
1008
- * "sortable": true,
1009
- * "status": "ACTIVE"
1010
- * },
1011
- * "value": {}
1012
- * }
1013
- * ],
1014
- * "externalId": "string",
1015
- * "id": "string",
1016
- * "name": "string",
1017
- * "returnPolicy": "string",
1018
- * "supplierRating": "string"
1019
- * }
1020
- * }
1021
- * ]
1022
- */
1023
- export declare function getProductOffers({ productIdentifier, productIdType, locale, currency, }: GetProductOffersParameters): Promise<GetProductOffersResponse>;
1024
- /**
1025
- * ## Get Paginated Offers of a Product by SKU, ID, or External ID
1026
- * ### APICODE(PRODUCT 509 - REPLACES PRODUCT 502)
1027
- * @param {GetProductPaginatedOffersParameters} params - Parameters for retrieving paginated offers.
1028
- * #### productIdentifier - `string` | <strong style={{ color: 'red' }}>(required)</strong>
1029
- * #### productIdType - `string` | <strong style={{ color: 'red' }}>(required)</strong> (e.g., "sku", "id", or "externalId")
1030
- * #### currency - `string`
1031
- * #### locale - `string`
1032
- * #### withoutPrices - `boolean`
1033
- * #### pageable - `object`
1034
- *
1035
- * @returns {Promise<GetProductPaginatedOffersResponse>} - The response with paginated offers.
1036
- *
1037
- * @example
1038
- * ### Input
191
+ * 🛠 **Endpoint**: `GET /v1/shop/products/{productIdentifier}/offers`
192
+ *
193
+ * | Parameter | Type | Required | Description |
194
+ * |---------------------|--------------|----------|-------------------------------------------------|
195
+ * | `productIdentifier` | `string` | ✅ | The unique identifier of the product. |
196
+ * | `productIdType` | `string` | ✅ | The type of the identifier (`sku`, `id`, etc.).|
197
+ * | `currency` | `string` | ✅ | The currency for the offer details. |
198
+ *
199
+ * 📤 **Returns**:
200
+ * A `Promise` resolving to a `GetProductVariantOffersResponse` containing the offers.
201
+ *
202
+ * 🛠 **Example usage**:
1039
203
  * ```typescript
1040
- * const response = await getProductPaginatedOffers({
1041
- * productIdentifier: 'sku-67890',
204
+ * const offers = await getProductVariantOffers({
205
+ * productIdentifier: 'sku123',
1042
206
  * productIdType: 'sku',
1043
207
  * currency: 'USD',
1044
- * locale: 'en-US',
1045
- * withoutPrices: false,
1046
- * pageable: {
1047
- * page: 0,
1048
- * size: 10,
1049
- * sort: 'price,asc'
1050
- * }
1051
208
  * });
1052
- * ```
1053
- *
1054
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
1055
- * ```json
1056
- * {
1057
- * "content": [
1058
- * {
1059
- * "estimatedDeliveryDates": [
1060
- * {
1061
- * "code": "string",
1062
- * "deliveryTimeRange": {
1063
- * "earliestDeliveryDate": "2025-01-06T16:33:58.524Z",
1064
- * "latestDeliveryDate": "2025-01-06T16:33:58.525Z"
1065
- * },
1066
- * "label": "string",
1067
- * "shippingPriceUnit": 0,
1068
- * "shippingZone": {
1069
- * "code": "string",
1070
- * "label": "string"
1071
- * }
1072
- * }
1073
- * ],
1074
- * "offerInventory": {
1075
- * "brand": "string",
1076
- * "currency": "USD",
1077
- * "stock": 0,
1078
- * "variant": {
1079
- * "description": "string",
1080
- * "sku": "string",
1081
- * "name": "string"
1082
- * }
1083
- * },
1084
- * "offerPrices": [
1085
- * {
1086
- * "priceRanges": [
1087
- * {
1088
- * "price": {
1089
- * "unitPrice": 100,
1090
- * "itemPrice": 100
1091
- * },
1092
- * "quantity": 1
1093
- * }
1094
- * ]
1095
- * }
1096
- * ],
1097
- * "supplier": {
1098
- * "id": "string",
1099
- * "name": "string",
1100
- * "supplierRating": "5/5"
1101
- * }
1102
- * }
1103
- * ],
1104
- * "empty": false,
1105
- * "first": true,
1106
- * "last": false,
1107
- * "number": 0,
1108
- * "size": 10,
1109
- * "totalElements": 100,
1110
- * "totalPages": 10
1111
- * }
209
+ * console.log(offers);
1112
210
  * ```
1113
211
  */
1114
- export declare function getProductPaginatedOffers({ productIdentifier, productIdType, currency, locale, withoutPrices, pageable, }: GetProductPaginatedOffersParameters): Promise<GetProductPaginatedOffersResponse>;
212
+ export declare function getProductOffers({ productIdentifier, productIdType, locale, currency, }: GetProductOffersParameters): Promise<GetProductOffersResponse>;
1115
213
  /**
1116
- * ## Get Related Products by SKU, ID, or External ID
1117
- * ### APICODE(PRODUCT 503)
1118
- * @param {GetRelatedProductsParameters} params - Parameters for retrieving related products.
1119
- * #### productIdentifier - `string` | <strong style={{ color: 'red' }}>(required)</strong>
1120
- * #### productIdType - `string` | <strong style={{ color: 'red' }}>(required)</strong> (e.g., "sku", "id", or "externalId")
1121
- * #### locale - `string`
1122
- * #### currency - `string
1123
- * #### pageable - `object`
1124
- *
1125
- * @returns {Promise<GetRelatedProductsResponse>} - The response with related products.
1126
- *
1127
- * @example
1128
- * ### Input
1129
- * ```typescript
1130
- * const response = await getRelatedProducts({
1131
- * productIdentifier: 'sku-12345',
214
+ * 📄 Fetches related products for a specific product.
215
+ *
216
+ * Retrieves a paginated list of related products identified by SKU, ID, or external ID.
217
+ *
218
+ * 🛠 **Endpoint**: `GET /v1/shop/products/{productIdentifier}/related-products`
219
+ *
220
+ * | Parameter | Type | Required | Description |
221
+ * |-----------------------|-------------|------------|---------------------------------------------------------------|
222
+ * | `productIdentifier` | `string` | ✅ | Unique identifier for the product (e.g., SKU, ID). |
223
+ * | `productIdType` | `string` | ✅ | The type of identifier: `"sku"`, `"id"`, or `"externalId"`. |
224
+ * | `locale` | `string` | ✅ | Locale for the related products (e.g., `"en_US"`). |
225
+ * | `currency` | `string` | ✅ | Currency for the related products (e.g., `"USD"`). |
226
+ * | `pageable` | `object` | ❌ | Pagination details: `page`, `size`, `sort`. |
227
+ *
228
+ * 📤 **Returns**:
229
+ * A `Promise<GetRelatedProductsParameters>` containing related products.
230
+ *
231
+ * 🛠 **Example usage**:
232
+ * ```ts
233
+ * const relatedProducts = await getRelatedProducts({
234
+ * productIdentifier: 'sku123',
1132
235
  * productIdType: 'sku',
1133
- * locale: 'fr-FR',
236
+ * locale: 'en_US',
1134
237
  * currency: 'USD',
1135
- * pageable: {
1136
- * page: 0,
1137
- * size: 10,
1138
- * sort: 'name,asc'
1139
- * }
238
+ * pageable: { page: 1, size: 10 },
1140
239
  * });
1141
- * ```
1142
240
  *
1143
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
1144
- * ```json
1145
- * {
1146
- * "aggregations": [
1147
- * {
1148
- * "buckets": [
1149
- * {
1150
- * "count": 0,
1151
- * "externalId": "string",
1152
- * "id": "string",
1153
- * "key": "string",
1154
- * "name": "string",
1155
- * "values": ["string"]
1156
- * }
1157
- * ],
1158
- * "type": "string"
1159
- * }
1160
- * ],
1161
- * "productThumbnails": {
1162
- * "content": [
1163
- * {
1164
- * "bestOffer": {
1165
- * "offerInventory": {
1166
- * "brand": "string",
1167
- * "currency": "USD",
1168
- * "stock": 10,
1169
- * "variant": {
1170
- * "description": "string",
1171
- * "sku": "string",
1172
- * "name": "string"
1173
- * }
1174
- * },
1175
- * "offerPrice": {
1176
- * "priceRanges": [
1177
- * {
1178
- * "price": {
1179
- * "unitPrice": 100,
1180
- * "itemPrice": 100
1181
- * },
1182
- * "quantity": 1
1183
- * }
1184
- * ]
1185
- * }
1186
- * },
1187
- * "product": {
1188
- * "info": {
1189
- * "brand": "string",
1190
- * "name": "string",
1191
- * "sku": "string"
1192
- * },
1193
- * "productPictures": [
1194
- * {
1195
- * "urls": [
1196
- * {
1197
- * "url": "string",
1198
- * "widthInPx": 100,
1199
- * "heightInPx": 100
1200
- * }
1201
- * ]
1202
- * }
1203
- * ]
1204
- * },
1205
- * "productReviewRatings": {
1206
- * "countRating": 10,
1207
- * "rating": 4.5
1208
- * }
1209
- * }
1210
- * ],
1211
- * "empty": false,
1212
- * "first": true,
1213
- * "last": false,
1214
- * "number": 0,
1215
- * "size": 10,
1216
- * "totalElements": 100,
1217
- * "totalPages": 10
1218
- * }
1219
- * }
241
+ * console.log(relatedProducts);
1220
242
  * ```
1221
243
  */
1222
- export declare function getRelatedProducts({ productIdentifier, productIdType, locale, currency, pageable, }: GetRelatedProductsParameters): Promise<GetRelatedProductsResponse>;
244
+ export declare function getRelatedProducts({ productIdentifier, productIdType, locale, currency, pageable, }: GetRelatedProductsParameters): Promise<GetRelatedProductsParameters>;
1223
245
  /**
1224
- * ## Get Product Reviews by SKU, ID, or External ID
1225
- * ### APICODE(PRODUCT 504)
1226
- * @param {GetProductReviewsParameters} params - Parameters for retrieving product reviews.
1227
- * #### productIdentifier - `string` | <strong style={{ color: 'red' }}>(required)</strong>
1228
- * #### productIdType - `string` | <strong style={{ color: 'red' }}>(required)</strong> (e.g., "sku", "id", or "externalId")
246
+ * 📄 Fetches reviews for a specific product.
1229
247
  *
1230
- * @returns {Promise<GetProductReviewsResponse>} - The response with product reviews.
248
+ * Retrieves a list of reviews for a product identified by SKU, ID, or external ID.
1231
249
  *
1232
- * @example
1233
- * ### Input
1234
- * ```typescript
1235
- * const response = await getProductReviews({
1236
- * productIdentifier: 'sku-12345',
250
+ * 🛠 **Endpoint**: `GET /v1/shop/products/{productIdentifier}/reviews`
251
+ *
252
+ * | Parameter | Type | Required | Description |
253
+ * |-----------------------|-------------|------------|---------------------------------------------------------------|
254
+ * | `productIdentifier` | `string` | ✅ | Unique identifier for the product (e.g., SKU, ID). |
255
+ * | `productIdType` | `string` | ✅ | The type of identifier: `"sku"`, `"id"`, or `"externalId"`. |
256
+ *
257
+ * 📤 **Returns**:
258
+ * A `Promise<GetProductReviewsResponse>` containing the reviews.
259
+ *
260
+ * 🛠 **Example usage**:
261
+ * ```ts
262
+ * const reviews = await getProductReviews({
263
+ * productIdentifier: 'sku123',
1237
264
  * productIdType: 'sku',
1238
265
  * });
1239
- * ```
1240
266
  *
1241
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
1242
- * ```json
1243
- * [
1244
- * {
1245
- * "productReview": {
1246
- * "message": "string",
1247
- * "rating": 0
1248
- * },
1249
- * "user": {
1250
- * "customerUserId": "string",
1251
- * "email": "string",
1252
- * "firstName": "string",
1253
- * "lastName": "string"
1254
- * }
1255
- * }
1256
- * ]
1257
- * ```
1258
- *
1259
- * ### Response - <strong style={{ color: 'red' }}>404</strong> - Not Found
1260
- * ```json
1261
- * {
1262
- * "content": {},
1263
- * "errors": [
1264
- * {
1265
- * "cause": {
1266
- * "localizedMessage": "string",
1267
- * "message": "string",
1268
- * "stackTrace": [
1269
- * {
1270
- * "classLoaderName": "string",
1271
- * "className": "string",
1272
- * "fileName": "string",
1273
- * "lineNumber": 0,
1274
- * "methodName": "string",
1275
- * "moduleName": "string",
1276
- * "moduleVersion": "string",
1277
- * "nativeMethod": true
1278
- * }
1279
- * ]
1280
- * },
1281
- * "code": "string",
1282
- * "detail": "string",
1283
- * "localizedMessage": "string",
1284
- * "message": "string",
1285
- * "stackTrace": [
1286
- * {
1287
- * "classLoaderName": "string",
1288
- * "className": "string",
1289
- * "fileName": "string",
1290
- * "lineNumber": 0,
1291
- * "methodName": "string",
1292
- * "moduleName": "string",
1293
- * "moduleVersion": "string",
1294
- * "nativeMethod": true
1295
- * }
1296
- * ],
1297
- * "suppressed": [
1298
- * {
1299
- * "localizedMessage": "string",
1300
- * "message": "string",
1301
- * "stackTrace": [
1302
- * {
1303
- * "classLoaderName": "string",
1304
- * "className": "string",
1305
- * "fileName": "string",
1306
- * "lineNumber": 0,
1307
- * "methodName": "string",
1308
- * "moduleName": "string",
1309
- * "moduleVersion": "string",
1310
- * "nativeMethod": true
1311
- * }
1312
- * ]
1313
- * }
1314
- * ]
1315
- * }
1316
- * ],
1317
- * "warnings": [
1318
- * {
1319
- * "code": "string",
1320
- * "field": "string",
1321
- * "message": "string"
1322
- * }
1323
- * ]
1324
- * }
267
+ * console.log(reviews);
1325
268
  * ```
1326
269
  */
1327
270
  export declare function getProductReviews({ productIdentifier, productIdType, }: GetProductReviewsParameters): Promise<GetProductReviewsResponse>;
1328
271
  /**
1329
- * ## Get Stat Reviews of a Product by SKU, ID, or External ID
1330
- * ### APICODE(PRODUCT 505)
1331
- * @param {GetProductStatReviewsParameters} params - Parameters for retrieving statistical reviews of a product.
1332
- * #### productIdentifier - `string` | <strong style={{ color: 'red' }}>(required)</strong>
1333
- * #### productIdType - `string` | <strong style={{ color: 'red' }}>(required)</strong> (e.g., "sku", "id", or "externalId")
272
+ * 📄 Fetches statistical review data for a specific product.
1334
273
  *
1335
- * @returns {Promise<GetProductStatReviewsResponse>} - The response with statistical reviews.
274
+ * Retrieves aggregate review statistics for a product identified by SKU, ID, or external ID.
1336
275
  *
1337
- * @example
1338
- * ### Input
1339
- * ```typescript
1340
- * const response = await getProductStatReviews({
1341
- * productIdentifier: 'sku-12345',
276
+ * 🛠 **Endpoint**: `GET /v1/shop/products/{productIdentifier}/stat-reviews`
277
+ *
278
+ * | Parameter | Type | Required | Description |
279
+ * |-----------------------|-------------|------------|---------------------------------------------------------------|
280
+ * | `productIdentifier` | `string` | ✅ | Unique identifier for the product (e.g., SKU, ID). |
281
+ * | `productIdType` | `string` | ✅ | The type of identifier: `"sku"`, `"id"`, or `"externalId"`. |
282
+ *
283
+ * 📤 **Returns**:
284
+ * A `Promise<GetProductStatReviewsResponse>` containing review statistics.
285
+ *
286
+ * 🛠 **Example usage**:
287
+ * ```ts
288
+ * const stats = await getProductStatReviews({
289
+ * productIdentifier: 'sku123',
1342
290
  * productIdType: 'sku',
1343
291
  * });
1344
- * ```
1345
- *
1346
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
1347
- * ```json
1348
- * {
1349
- * "countRating": 0,
1350
- * "rating": 0
1351
- * }
1352
- * ```
1353
292
  *
1354
- * ### Response - <strong style={{ color: 'red' }}>404</strong> - Not Found
1355
- * ```json
1356
- * {
1357
- * "content": {},
1358
- * "errors": [
1359
- * {
1360
- * "cause": {
1361
- * "localizedMessage": "string",
1362
- * "message": "string",
1363
- * "stackTrace": [
1364
- * {
1365
- * "classLoaderName": "string",
1366
- * "className": "string",
1367
- * "fileName": "string",
1368
- * "lineNumber": 0,
1369
- * "methodName": "string",
1370
- * "moduleName": "string",
1371
- * "moduleVersion": "string",
1372
- * "nativeMethod": true
1373
- * }
1374
- * ]
1375
- * },
1376
- * "code": "string",
1377
- * "detail": "string",
1378
- * "localizedMessage": "string",
1379
- * "message": "string",
1380
- * "stackTrace": [
1381
- * {
1382
- * "classLoaderName": "string",
1383
- * "className": "string",
1384
- * "fileName": "string",
1385
- * "lineNumber": 0,
1386
- * "methodName": "string",
1387
- * "moduleName": "string",
1388
- * "moduleVersion": "string",
1389
- * "nativeMethod": true
1390
- * }
1391
- * ],
1392
- * "suppressed": [
1393
- * {
1394
- * "localizedMessage": "string",
1395
- * "message": "string",
1396
- * "stackTrace": [
1397
- * {
1398
- * "classLoaderName": "string",
1399
- * "className": "string",
1400
- * "fileName": "string",
1401
- * "lineNumber": 0,
1402
- * "methodName": "string",
1403
- * "moduleName": "string",
1404
- * "moduleVersion": "string",
1405
- * "nativeMethod": true
1406
- * }
1407
- * ]
1408
- * }
1409
- * ]
1410
- * }
1411
- * ],
1412
- * "warnings": [
1413
- * {
1414
- * "code": "string",
1415
- * "field": "string",
1416
- * "message": "string"
1417
- * }
1418
- * ]
1419
- * }
293
+ * console.log(stats);
1420
294
  * ```
1421
295
  */
1422
296
  export declare function getProductStatReviews({ productIdentifier, productIdType, }: GetProductStatReviewsParameters): Promise<GetProductStatReviewsResponse>;
1423
297
  /**
1424
- * ## Get Attributes of a Product Variant by SKU, ID, or External ID
1425
- * ### APICODE(PRODUCT 501)
1426
- * @param {GetProductVariantAttributesParameters} params - Parameters for retrieving attributes of a product variant.
1427
- * #### productIdentifier - `string` | <strong style={{ color: 'red' }}>(required)</strong>
1428
- * #### productIdType - `string` | <strong style={{ color: 'red' }}>(required)</strong> (e.g., "sku", "id", or "externalId")
1429
- * #### locale - `string`
298
+ * 📄 Fetches attributes for a product variant.
1430
299
  *
1431
- * @returns {Promise<GetProductVariantAttributesResponse>} - The response with attributes of a product variant.
300
+ * Retrieves attributes for a product variant identified by SKU, ID, or external ID.
1432
301
  *
1433
- * @example
1434
- * ### Input
1435
- * ```typescript
1436
- * const response = await getProductVariantAttributes({
1437
- * productIdentifier: 'sku-12345',
302
+ * 🛠 **Endpoint**: `GET /v1/shop/products/{productIdentifier}/variant-attributes`
303
+ *
304
+ * | Parameter | Type | Required | Description |
305
+ * |-----------------------|-------------|------------|---------------------------------------------------------------|
306
+ * | `productIdentifier` | `string` | ✅ | Unique identifier for the product variant (e.g., SKU, ID). |
307
+ * | `productIdType` | `string` | ✅ | The type of identifier: `"sku"`, `"id"`, or `"externalId"`. |
308
+ * | `locale` | `string` | ✅ | Locale for the attributes (e.g., `"en_US"`). |
309
+ *
310
+ * 📤 **Returns**:
311
+ * A `Promise<GetProductVariantAttributesResponse>` containing variant attributes.
312
+ *
313
+ * 🛠 **Example usage**:
314
+ * ```ts
315
+ * const attributes = await getProductVariantAttributes({
316
+ * productIdentifier: 'sku123',
1438
317
  * productIdType: 'sku',
1439
- * locale: 'fr-FR',
318
+ * locale: 'en_US',
1440
319
  * });
1441
- * ```
1442
320
  *
1443
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
1444
- * ```json
1445
- * [
1446
- * {
1447
- * "externalId": "string",
1448
- * "id": "string",
1449
- * "name": {
1450
- * "additionalProp1": "string",
1451
- * "additionalProp2": "string",
1452
- * "additionalProp3": "string"
1453
- * },
1454
- * "type": "LONG_TEXT",
1455
- * "values": [
1456
- * {}
1457
- * ]
1458
- * }
1459
- * ]
1460
- * ```
1461
- *
1462
- * ### Response - <strong style={{ color: 'red' }}>404</strong> - Not Found
1463
- * ```json
1464
- * {
1465
- * "content": {},
1466
- * "errors": [
1467
- * {
1468
- * "cause": {
1469
- * "localizedMessage": "string",
1470
- * "message": "string",
1471
- * "stackTrace": [
1472
- * {
1473
- * "classLoaderName": "string",
1474
- * "className": "string",
1475
- * "fileName": "string",
1476
- * "lineNumber": 0,
1477
- * "methodName": "string",
1478
- * "moduleName": "string",
1479
- * "moduleVersion": "string",
1480
- * "nativeMethod": true
1481
- * }
1482
- * ]
1483
- * },
1484
- * "code": "string",
1485
- * "detail": "string",
1486
- * "localizedMessage": "string",
1487
- * "message": "string",
1488
- * "stackTrace": [
1489
- * {
1490
- * "classLoaderName": "string",
1491
- * "className": "string",
1492
- * "fileName": "string",
1493
- * "lineNumber": 0,
1494
- * "methodName": "string",
1495
- * "moduleName": "string",
1496
- * "moduleVersion": "string",
1497
- * "nativeMethod": true
1498
- * }
1499
- * ],
1500
- * "suppressed": [
1501
- * {
1502
- * "localizedMessage": "string",
1503
- * "message": "string",
1504
- * "stackTrace": [
1505
- * {
1506
- * "classLoaderName": "string",
1507
- * "className": "string",
1508
- * "fileName": "string",
1509
- * "lineNumber": 0,
1510
- * "methodName": "string",
1511
- * "moduleName": "string",
1512
- * "moduleVersion": "string",
1513
- * "nativeMethod": true
1514
- * }
1515
- * ]
1516
- * }
1517
- * ]
1518
- * }
1519
- * ],
1520
- * "warnings": [
1521
- * {
1522
- * "code": "string",
1523
- * "field": "string",
1524
- * "message": "string"
1525
- * }
1526
- * ]
1527
- * }
321
+ * console.log(attributes);
1528
322
  * ```
1529
323
  */
1530
324
  export declare function getProductVariantAttributes({ productIdentifier, productIdType, locale, }: GetProductVariantAttributesParameters): Promise<GetProductVariantAttributesResponse>;
1531
325
  /**
1532
- * ## Create a Review for a Product
1533
- * ### APICODE(PRODUCT 153)
1534
- * @param {CreateProductReviewParameters} params - Parameters for creating a review for a product.
1535
- * #### message - `string` | <strong style={{ color: 'red' }}>(required)</strong>
1536
- * #### productSku - `string` | <strong style={{ color: 'red' }}>(required)</strong>
1537
- * #### rating - `number` | <strong style={{ color: 'red' }}>(required)</strong>
326
+ * 📄 Creates a review for a product.
1538
327
  *
1539
- * @returns {Promise<CreateProductReviewResponse>} - The response with the created product review.
328
+ * Submits a review for a specific product based on its SKU.
1540
329
  *
1541
- * @example
1542
- * ### Input
1543
- * ```typescript
1544
- * const response = await createProductReview({
330
+ * 🛠 **Endpoint**: `POST /v1/shop/reviews`
331
+ *
332
+ * | Parameter | Type | Required | Description |
333
+ * |-----------------------|-------------------------------|------------|---------------------------------------------------------------|
334
+ * | `message` | `string` | ✅ | Review content. |
335
+ * | `productSku` | `string` | ✅ | SKU of the product to review. |
336
+ * | `rating` | `number` | ✅ | Rating (e.g., 1 to 5). |
337
+ *
338
+ * 📤 **Returns**:
339
+ * A `Promise<CreateProductReviewResponse>` indicating the result of the operation.
340
+ *
341
+ * 🛠 **Example usage**:
342
+ * ```ts
343
+ * const review = await createProductReview({
1545
344
  * message: 'Great product!',
1546
- * productSku: 'sku-12345',
345
+ * productSku: 'sku123',
1547
346
  * rating: 5,
1548
347
  * });
1549
- * ```
1550
348
  *
1551
- * ### Response - <strong style={{ color: 'green' }}>201</strong> - Created
1552
- * ```json
1553
- * {
1554
- * "productReview": {
1555
- * "message": "string",
1556
- * "rating": 0
1557
- * },
1558
- * "user": {
1559
- * "customerUserId": "string",
1560
- * "email": "string",
1561
- * "firstName": "string",
1562
- * "lastName": "string"
1563
- * }
1564
- * }
1565
- * ```
1566
- *
1567
- * ### Response - <strong style={{ color: 'red' }}>400</strong> - Bad Request
1568
- * ```json
1569
- * {
1570
- * "content": {},
1571
- * "errors": [
1572
- * {
1573
- * "cause": {
1574
- * "localizedMessage": "string",
1575
- * "message": "string",
1576
- * "stackTrace": [
1577
- * {
1578
- * "classLoaderName": "string",
1579
- * "className": "string",
1580
- * "fileName": "string",
1581
- * "lineNumber": 0,
1582
- * "methodName": "string",
1583
- * "moduleName": "string",
1584
- * "moduleVersion": "string",
1585
- * "nativeMethod": true
1586
- * }
1587
- * ]
1588
- * },
1589
- * "code": "string",
1590
- * "detail": "string",
1591
- * "localizedMessage": "string",
1592
- * "message": "string",
1593
- * "stackTrace": [
1594
- * {
1595
- * "classLoaderName": "string",
1596
- * "className": "string",
1597
- * "fileName": "string",
1598
- * "lineNumber": 0,
1599
- * "methodName": "string",
1600
- * "moduleName": "string",
1601
- * "moduleVersion": "string",
1602
- * "nativeMethod": true
1603
- * }
1604
- * ],
1605
- * "suppressed": [
1606
- * {
1607
- * "localizedMessage": "string",
1608
- * "message": "string",
1609
- * "stackTrace": [
1610
- * {
1611
- * "classLoaderName": "string",
1612
- * "className": "string",
1613
- * "fileName": "string",
1614
- * "lineNumber": 0,
1615
- * "methodName": "string",
1616
- * "moduleName": "string",
1617
- * "moduleVersion": "string",
1618
- * "nativeMethod": true
1619
- * }
1620
- * ]
1621
- * }
1622
- * ]
1623
- * }
1624
- * ],
1625
- * "warnings": [
1626
- * {
1627
- * "code": "string",
1628
- * "field": "string",
1629
- * "message": "string"
1630
- * }
1631
- * ]
1632
- * }
349
+ * console.log(review);
1633
350
  * ```
1634
351
  */
1635
352
  export declare function createProductReview({ message, productSku, rating, }: CreateProductReviewParameters): Promise<CreateProductReviewResponse>;
1636
353
  /**
1637
- * ## Update a Review for a Product
1638
- * ### APICODE(PRODUCT 204)
1639
- * @param {UpdateProductReviewParameters} params - Parameters for updating a product review.
1640
- * #### productReviewId - `string` | <strong style={{ color: 'red' }}>(required)</strong>
1641
- * #### message - `string` | <strong style={{ color: 'red' }}>(required)</strong>
1642
- * #### rating - `number` | <strong style={{ color: 'red' }}>(required)</strong>
354
+ * 📄 Updates an existing review for a product.
1643
355
  *
1644
- * @returns {Promise<UpdateProductReviewResponse>} - The response for updating a product review.
356
+ * Modifies the content and/or rating of an existing review for a specific product.
1645
357
  *
1646
- * @example
1647
- * ### Input
1648
- * ```typescript
1649
- * const response = await updateProductReview({
1650
- * productReviewId: 'review-12345',
1651
- * message: 'Updated review message!',
1652
- * rating: 5,
1653
- * });
1654
- * ```
358
+ * 🛠 **Endpoint**: `PUT /v1/shop/reviews/{productReviewId}`
1655
359
  *
1656
- * ### Response - <strong style={{ color: 'green' }}>200</strong> - OK
1657
- * ```json
1658
- * {
1659
- * "message": "string",
1660
- * "rating": 0
1661
- * }
1662
- * ```
360
+ * | Parameter | Type | Required | Description |
361
+ * |-----------------------|-------------------------------|------------|---------------------------------------------------------------|
362
+ * | `productReviewId` | `string` | ✅ | ID of the review to update. |
363
+ * | `message` | `string` | ✅ | New review content. |
364
+ * | `rating` | `number` | ✅ | New rating (e.g., 1 to 5). |
1663
365
  *
1664
- * ### Response - <strong style={{ color: 'red' }}>400</strong> - Bad Request
1665
- * ```json
1666
- * {
1667
- * "content": {},
1668
- * "errors": [
1669
- * {
1670
- * "cause": {
1671
- * "localizedMessage": "string",
1672
- * "message": "string",
1673
- * "stackTrace": [
1674
- * {
1675
- * "classLoaderName": "string",
1676
- * "className": "string",
1677
- * "fileName": "string",
1678
- * "lineNumber": 0,
1679
- * "methodName": "string",
1680
- * "moduleName": "string",
1681
- * "moduleVersion": "string",
1682
- * "nativeMethod": true
1683
- * }
1684
- * ]
1685
- * },
1686
- * "code": "string",
1687
- * "detail": "string",
1688
- * "localizedMessage": "string",
1689
- * "message": "string",
1690
- * "stackTrace": [
1691
- * {
1692
- * "classLoaderName": "string",
1693
- * "className": "string",
1694
- * "fileName": "string",
1695
- * "lineNumber": 0,
1696
- * "methodName": "string",
1697
- * "moduleName": "string",
1698
- * "moduleVersion": "string",
1699
- * "nativeMethod": true
1700
- * }
1701
- * ],
1702
- * "suppressed": [
1703
- * {
1704
- * "localizedMessage": "string",
1705
- * "message": "string",
1706
- * "stackTrace": [
1707
- * {
1708
- * "classLoaderName": "string",
1709
- * "className": "string",
1710
- * "fileName": "string",
1711
- * "lineNumber": 0,
1712
- * "methodName": "string",
1713
- * "moduleName": "string",
1714
- * "moduleVersion": "string",
1715
- * "nativeMethod": true
1716
- * }
1717
- * ]
1718
- * }
1719
- * ]
1720
- * }
1721
- * ],
1722
- * "warnings": [
1723
- * {
1724
- * "code": "string",
1725
- * "field": "string",
1726
- * "message": "string"
1727
- * }
1728
- * ]
1729
- * }
1730
- * ```
366
+ * 📤 **Returns**:
367
+ * A `Promise<UpdateProductReviewResponse>` indicating the result of the operation.
1731
368
  *
1732
- * ### Response - <strong style={{ color: 'red' }}>404</strong> - Not Found
1733
- * ```json
1734
- * {
1735
- * "content": {},
1736
- * "errors": [
1737
- * {
1738
- * "cause": {
1739
- * "localizedMessage": "string",
1740
- * "message": "string",
1741
- * "stackTrace": [
1742
- * {
1743
- * "classLoaderName": "string",
1744
- * "className": "string",
1745
- * "fileName": "string",
1746
- * "lineNumber": 0,
1747
- * "methodName": "string",
1748
- * "moduleName": "string",
1749
- * "moduleVersion": "string",
1750
- * "nativeMethod": true
1751
- * }
1752
- * ]
1753
- * },
1754
- * "code": "string",
1755
- * "detail": "string",
1756
- * "localizedMessage": "string",
1757
- * "message": "string",
1758
- * "stackTrace": [
1759
- * {
1760
- * "classLoaderName": "string",
1761
- * "className": "string",
1762
- * "fileName": "string",
1763
- * "lineNumber": 0,
1764
- * "methodName": "string",
1765
- * "moduleName": "string",
1766
- * "moduleVersion": "string",
1767
- * "nativeMethod": true
1768
- * }
1769
- * ],
1770
- * "suppressed": [
1771
- * {
1772
- * "localizedMessage": "string",
1773
- * "message": "string",
1774
- * "stackTrace": [
1775
- * {
1776
- * "classLoaderName": "string",
1777
- * "className": "string",
1778
- * "fileName": "string",
1779
- * "lineNumber": 0,
1780
- * "methodName": "string",
1781
- * "moduleName": "string",
1782
- * "moduleVersion": "string",
1783
- * "nativeMethod": true
1784
- * }
1785
- * ]
1786
- * }
1787
- * ]
1788
- * }
1789
- * ],
1790
- * "warnings": [
1791
- * {
1792
- * "code": "string",
1793
- * "field": "string",
1794
- * "message": "string"
1795
- * }
1796
- * ]
1797
- * }
369
+ * 🛠 **Example usage**:
370
+ * ```ts
371
+ * const updatedReview = await updateProductReview({
372
+ * productReviewId: 'review123',
373
+ * message: 'Updated my thoughts, still a great product!',
374
+ * rating: 4,
375
+ * });
376
+ *
377
+ * console.log(updatedReview);
1798
378
  * ```
1799
379
  */
1800
380
  export declare function updateProductReview({ productReviewId, message, rating, }: UpdateProductReviewParameters): Promise<UpdateProductReviewResponse>;
381
+ /**
382
+ * 📄 Fetches paginated offers for a product.
383
+ *
384
+ * Retrieves offers for a product identified by SKU, ID, or external ID, with pagination support.
385
+ *
386
+ * 🛠 **Endpoint**: `GET /v1/shop/products/{productIdentifier}/paginated-offers`
387
+ *
388
+ * | Parameter | Type | Required | Description |
389
+ * |-----------------------|-------------|------------|---------------------------------------------------------------|
390
+ * | `productIdentifier` | `string` | ✅ | Unique identifier for the product (e.g., SKU, ID). |
391
+ * | `productIdType` | `string` | ✅ | The type of identifier: `"sku"`, `"id"`, or `"externalId"`. |
392
+ * | `currency` | `string` | ✅ | Currency for the offers (e.g., `"USD"`). |
393
+ * | `locale` | `string` | ✅ | Locale for the offers (e.g., `"en_US"`). |
394
+ * | `withoutPrices` | `boolean` | ❌ | Whether to exclude prices from the response. |
395
+ * | `pageable` | `object` | ❌ | Pagination details: `page`, `size`, `sort`. |
396
+ *
397
+ * 📤 **Returns**:
398
+ * A `Promise<GetProductPaginatedOffersResponse>` containing paginated offers.
399
+ *
400
+ * 🛠 **Example usage**:
401
+ * ```ts
402
+ * const offers = await getProductPaginatedOffers({
403
+ * productIdentifier: 'sku123',
404
+ * productIdType: 'sku',
405
+ * currency: 'USD',
406
+ * locale: 'en_US',
407
+ * pageable: { page: 1, size
408
+ */
409
+ export declare function getProductPaginatedOffers({ productIdentifier, productIdType, currency, locale, withoutPrices, pageable, }: GetProductPaginatedOffersParameters): Promise<GetProductPaginatedOffersResponse>;