commerce-kit 0.6.1-experimental.3 → 0.6.1-experimental.5

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.
@@ -0,0 +1,3709 @@
1
+ type JSONContent = Record<string, unknown>;
2
+ type APIProductsBrowseResult = {
3
+ data: (({
4
+ id: string;
5
+ name: string;
6
+ createdAt: string;
7
+ updatedAt: string;
8
+ type: "product" | "bundle";
9
+ slug: string;
10
+ flags: unknown;
11
+ storeId: string;
12
+ summary: string | null;
13
+ images: string[];
14
+ active: boolean | null;
15
+ badge: unknown;
16
+ bundleDiscountPercentage: string | null;
17
+ categoryId: string | null;
18
+ category: {
19
+ id: string;
20
+ name: string;
21
+ image: string | null;
22
+ createdAt: string;
23
+ updatedAt: string;
24
+ description: JSONContent | null;
25
+ slug: string;
26
+ storeId: string | null;
27
+ position: string;
28
+ active: boolean;
29
+ parentId: string | null;
30
+ } | null;
31
+ productTaxRate: {
32
+ createdAt: string;
33
+ updatedAt: string;
34
+ taxRateId: string;
35
+ productId: string;
36
+ taxRate: {
37
+ id: string;
38
+ name: string;
39
+ createdAt: string;
40
+ updatedAt: string;
41
+ storeId: string;
42
+ rate: string;
43
+ };
44
+ } | null;
45
+ productCollections: {
46
+ position: string | null;
47
+ productId: string;
48
+ collectionId: string;
49
+ collection: {
50
+ id: string;
51
+ name: string;
52
+ image: string | null;
53
+ createdAt: string;
54
+ updatedAt: string;
55
+ description: JSONContent | null;
56
+ slug: string;
57
+ filter: unknown;
58
+ storeId: string;
59
+ active: boolean;
60
+ };
61
+ }[];
62
+ bundleProducts: {
63
+ createdAt: string;
64
+ updatedAt: string;
65
+ position: number;
66
+ bundleId: string;
67
+ quantity: number;
68
+ variantId: string;
69
+ variant: {
70
+ id: string;
71
+ createdAt: string;
72
+ updatedAt: string;
73
+ storeId: string;
74
+ price: string;
75
+ images: string[];
76
+ sku: string | null;
77
+ calculatedPrice: string | null;
78
+ stock: number | null;
79
+ depth: number | null;
80
+ width: number | null;
81
+ height: number | null;
82
+ weight: number | null;
83
+ digital: string[] | null;
84
+ shippable: boolean;
85
+ externalId: string | null;
86
+ productId: string;
87
+ attributes: unknown;
88
+ originalPrice: string;
89
+ product: {
90
+ id: string;
91
+ name: string;
92
+ slug: string;
93
+ images: string[];
94
+ productTaxRate: {
95
+ createdAt: string;
96
+ updatedAt: string;
97
+ taxRateId: string;
98
+ productId: string;
99
+ taxRate: {
100
+ id: string;
101
+ name: string;
102
+ createdAt: string;
103
+ updatedAt: string;
104
+ storeId: string;
105
+ rate: string;
106
+ };
107
+ } | null;
108
+ variants: {
109
+ id: string;
110
+ createdAt: string;
111
+ updatedAt: string;
112
+ storeId: string;
113
+ price: string;
114
+ images: string[];
115
+ sku: string | null;
116
+ calculatedPrice: string | null;
117
+ stock: number | null;
118
+ depth: number | null;
119
+ width: number | null;
120
+ height: number | null;
121
+ weight: number | null;
122
+ digital: string[] | null;
123
+ shippable: boolean;
124
+ externalId: string | null;
125
+ productId: string;
126
+ attributes: unknown;
127
+ originalPrice: string;
128
+ }[];
129
+ };
130
+ combinations: {
131
+ createdAt: string;
132
+ updatedAt: string;
133
+ productVariantId: string;
134
+ variantValueId: string;
135
+ variantValue: {
136
+ id: string;
137
+ value: string;
138
+ colorValue: string | null;
139
+ variantType: {
140
+ id: string;
141
+ type: "string" | "color";
142
+ label: string;
143
+ };
144
+ };
145
+ }[];
146
+ };
147
+ }[];
148
+ subscription: {
149
+ id: string;
150
+ createdAt: string;
151
+ updatedAt: string;
152
+ storeId: string;
153
+ productId: string;
154
+ interval: number;
155
+ cadence: "month" | "week";
156
+ } | null;
157
+ variants: {
158
+ id: string;
159
+ createdAt: string;
160
+ updatedAt: string;
161
+ storeId: string;
162
+ price: string;
163
+ images: string[];
164
+ sku: string | null;
165
+ calculatedPrice: string | null;
166
+ stock: number | null;
167
+ depth: number | null;
168
+ width: number | null;
169
+ height: number | null;
170
+ weight: number | null;
171
+ digital: string[] | null;
172
+ shippable: boolean;
173
+ externalId: string | null;
174
+ productId: string;
175
+ attributes: unknown;
176
+ originalPrice: string;
177
+ combinations: {
178
+ createdAt: string;
179
+ updatedAt: string;
180
+ productVariantId: string;
181
+ variantValueId: string;
182
+ variantValue: {
183
+ id: string;
184
+ value: string;
185
+ colorValue: string | null;
186
+ variantType: {
187
+ id: string;
188
+ type: "string" | "color";
189
+ label: string;
190
+ };
191
+ };
192
+ }[];
193
+ }[];
194
+ } & {
195
+ variants: ({
196
+ price: string;
197
+ } & {
198
+ prePromotionPrice: undefined;
199
+ })[];
200
+ }) | ({
201
+ id: string;
202
+ name: string;
203
+ createdAt: string;
204
+ updatedAt: string;
205
+ type: "product" | "bundle";
206
+ slug: string;
207
+ flags: unknown;
208
+ storeId: string;
209
+ summary: string | null;
210
+ images: string[];
211
+ active: boolean | null;
212
+ badge: unknown;
213
+ bundleDiscountPercentage: string | null;
214
+ categoryId: string | null;
215
+ category: {
216
+ id: string;
217
+ name: string;
218
+ image: string | null;
219
+ createdAt: string;
220
+ updatedAt: string;
221
+ description: JSONContent | null;
222
+ slug: string;
223
+ storeId: string | null;
224
+ position: string;
225
+ active: boolean;
226
+ parentId: string | null;
227
+ } | null;
228
+ productTaxRate: {
229
+ createdAt: string;
230
+ updatedAt: string;
231
+ taxRateId: string;
232
+ productId: string;
233
+ taxRate: {
234
+ id: string;
235
+ name: string;
236
+ createdAt: string;
237
+ updatedAt: string;
238
+ storeId: string;
239
+ rate: string;
240
+ };
241
+ } | null;
242
+ productCollections: {
243
+ position: string | null;
244
+ productId: string;
245
+ collectionId: string;
246
+ collection: {
247
+ id: string;
248
+ name: string;
249
+ image: string | null;
250
+ createdAt: string;
251
+ updatedAt: string;
252
+ description: JSONContent | null;
253
+ slug: string;
254
+ filter: unknown;
255
+ storeId: string;
256
+ active: boolean;
257
+ };
258
+ }[];
259
+ bundleProducts: {
260
+ createdAt: string;
261
+ updatedAt: string;
262
+ position: number;
263
+ bundleId: string;
264
+ quantity: number;
265
+ variantId: string;
266
+ variant: {
267
+ id: string;
268
+ createdAt: string;
269
+ updatedAt: string;
270
+ storeId: string;
271
+ price: string;
272
+ images: string[];
273
+ sku: string | null;
274
+ calculatedPrice: string | null;
275
+ stock: number | null;
276
+ depth: number | null;
277
+ width: number | null;
278
+ height: number | null;
279
+ weight: number | null;
280
+ digital: string[] | null;
281
+ shippable: boolean;
282
+ externalId: string | null;
283
+ productId: string;
284
+ attributes: unknown;
285
+ originalPrice: string;
286
+ product: {
287
+ id: string;
288
+ name: string;
289
+ slug: string;
290
+ images: string[];
291
+ productTaxRate: {
292
+ createdAt: string;
293
+ updatedAt: string;
294
+ taxRateId: string;
295
+ productId: string;
296
+ taxRate: {
297
+ id: string;
298
+ name: string;
299
+ createdAt: string;
300
+ updatedAt: string;
301
+ storeId: string;
302
+ rate: string;
303
+ };
304
+ } | null;
305
+ variants: {
306
+ id: string;
307
+ createdAt: string;
308
+ updatedAt: string;
309
+ storeId: string;
310
+ price: string;
311
+ images: string[];
312
+ sku: string | null;
313
+ calculatedPrice: string | null;
314
+ stock: number | null;
315
+ depth: number | null;
316
+ width: number | null;
317
+ height: number | null;
318
+ weight: number | null;
319
+ digital: string[] | null;
320
+ shippable: boolean;
321
+ externalId: string | null;
322
+ productId: string;
323
+ attributes: unknown;
324
+ originalPrice: string;
325
+ }[];
326
+ };
327
+ combinations: {
328
+ createdAt: string;
329
+ updatedAt: string;
330
+ productVariantId: string;
331
+ variantValueId: string;
332
+ variantValue: {
333
+ id: string;
334
+ value: string;
335
+ colorValue: string | null;
336
+ variantType: {
337
+ id: string;
338
+ type: "string" | "color";
339
+ label: string;
340
+ };
341
+ };
342
+ }[];
343
+ };
344
+ }[];
345
+ subscription: {
346
+ id: string;
347
+ createdAt: string;
348
+ updatedAt: string;
349
+ storeId: string;
350
+ productId: string;
351
+ interval: number;
352
+ cadence: "month" | "week";
353
+ } | null;
354
+ variants: {
355
+ id: string;
356
+ createdAt: string;
357
+ updatedAt: string;
358
+ storeId: string;
359
+ price: string;
360
+ images: string[];
361
+ sku: string | null;
362
+ calculatedPrice: string | null;
363
+ stock: number | null;
364
+ depth: number | null;
365
+ width: number | null;
366
+ height: number | null;
367
+ weight: number | null;
368
+ digital: string[] | null;
369
+ shippable: boolean;
370
+ externalId: string | null;
371
+ productId: string;
372
+ attributes: unknown;
373
+ originalPrice: string;
374
+ combinations: {
375
+ createdAt: string;
376
+ updatedAt: string;
377
+ productVariantId: string;
378
+ variantValueId: string;
379
+ variantValue: {
380
+ id: string;
381
+ value: string;
382
+ colorValue: string | null;
383
+ variantType: {
384
+ id: string;
385
+ type: "string" | "color";
386
+ label: string;
387
+ };
388
+ };
389
+ }[];
390
+ }[];
391
+ } & {
392
+ variants: ({
393
+ price: string;
394
+ } & {
395
+ prePromotionPrice: undefined;
396
+ })[];
397
+ }) | ({
398
+ id: string;
399
+ name: string;
400
+ createdAt: string;
401
+ updatedAt: string;
402
+ type: "product" | "bundle";
403
+ slug: string;
404
+ flags: unknown;
405
+ storeId: string;
406
+ summary: string | null;
407
+ images: string[];
408
+ active: boolean | null;
409
+ badge: unknown;
410
+ bundleDiscountPercentage: string | null;
411
+ categoryId: string | null;
412
+ category: {
413
+ id: string;
414
+ name: string;
415
+ image: string | null;
416
+ createdAt: string;
417
+ updatedAt: string;
418
+ description: JSONContent | null;
419
+ slug: string;
420
+ storeId: string | null;
421
+ position: string;
422
+ active: boolean;
423
+ parentId: string | null;
424
+ } | null;
425
+ productTaxRate: {
426
+ createdAt: string;
427
+ updatedAt: string;
428
+ taxRateId: string;
429
+ productId: string;
430
+ taxRate: {
431
+ id: string;
432
+ name: string;
433
+ createdAt: string;
434
+ updatedAt: string;
435
+ storeId: string;
436
+ rate: string;
437
+ };
438
+ } | null;
439
+ productCollections: {
440
+ position: string | null;
441
+ productId: string;
442
+ collectionId: string;
443
+ collection: {
444
+ id: string;
445
+ name: string;
446
+ image: string | null;
447
+ createdAt: string;
448
+ updatedAt: string;
449
+ description: JSONContent | null;
450
+ slug: string;
451
+ filter: unknown;
452
+ storeId: string;
453
+ active: boolean;
454
+ };
455
+ }[];
456
+ bundleProducts: {
457
+ createdAt: string;
458
+ updatedAt: string;
459
+ position: number;
460
+ bundleId: string;
461
+ quantity: number;
462
+ variantId: string;
463
+ variant: {
464
+ id: string;
465
+ createdAt: string;
466
+ updatedAt: string;
467
+ storeId: string;
468
+ price: string;
469
+ images: string[];
470
+ sku: string | null;
471
+ calculatedPrice: string | null;
472
+ stock: number | null;
473
+ depth: number | null;
474
+ width: number | null;
475
+ height: number | null;
476
+ weight: number | null;
477
+ digital: string[] | null;
478
+ shippable: boolean;
479
+ externalId: string | null;
480
+ productId: string;
481
+ attributes: unknown;
482
+ originalPrice: string;
483
+ product: {
484
+ id: string;
485
+ name: string;
486
+ slug: string;
487
+ images: string[];
488
+ productTaxRate: {
489
+ createdAt: string;
490
+ updatedAt: string;
491
+ taxRateId: string;
492
+ productId: string;
493
+ taxRate: {
494
+ id: string;
495
+ name: string;
496
+ createdAt: string;
497
+ updatedAt: string;
498
+ storeId: string;
499
+ rate: string;
500
+ };
501
+ } | null;
502
+ variants: {
503
+ id: string;
504
+ createdAt: string;
505
+ updatedAt: string;
506
+ storeId: string;
507
+ price: string;
508
+ images: string[];
509
+ sku: string | null;
510
+ calculatedPrice: string | null;
511
+ stock: number | null;
512
+ depth: number | null;
513
+ width: number | null;
514
+ height: number | null;
515
+ weight: number | null;
516
+ digital: string[] | null;
517
+ shippable: boolean;
518
+ externalId: string | null;
519
+ productId: string;
520
+ attributes: unknown;
521
+ originalPrice: string;
522
+ }[];
523
+ };
524
+ combinations: {
525
+ createdAt: string;
526
+ updatedAt: string;
527
+ productVariantId: string;
528
+ variantValueId: string;
529
+ variantValue: {
530
+ id: string;
531
+ value: string;
532
+ colorValue: string | null;
533
+ variantType: {
534
+ id: string;
535
+ type: "string" | "color";
536
+ label: string;
537
+ };
538
+ };
539
+ }[];
540
+ };
541
+ }[];
542
+ subscription: {
543
+ id: string;
544
+ createdAt: string;
545
+ updatedAt: string;
546
+ storeId: string;
547
+ productId: string;
548
+ interval: number;
549
+ cadence: "month" | "week";
550
+ } | null;
551
+ variants: {
552
+ id: string;
553
+ createdAt: string;
554
+ updatedAt: string;
555
+ storeId: string;
556
+ price: string;
557
+ images: string[];
558
+ sku: string | null;
559
+ calculatedPrice: string | null;
560
+ stock: number | null;
561
+ depth: number | null;
562
+ width: number | null;
563
+ height: number | null;
564
+ weight: number | null;
565
+ digital: string[] | null;
566
+ shippable: boolean;
567
+ externalId: string | null;
568
+ productId: string;
569
+ attributes: unknown;
570
+ originalPrice: string;
571
+ combinations: {
572
+ createdAt: string;
573
+ updatedAt: string;
574
+ productVariantId: string;
575
+ variantValueId: string;
576
+ variantValue: {
577
+ id: string;
578
+ value: string;
579
+ colorValue: string | null;
580
+ variantType: {
581
+ id: string;
582
+ type: "string" | "color";
583
+ label: string;
584
+ };
585
+ };
586
+ }[];
587
+ }[];
588
+ } & {
589
+ variants: ({
590
+ price: string;
591
+ } & {
592
+ prePromotionPrice: undefined;
593
+ })[];
594
+ }) | ({
595
+ id: string;
596
+ name: string;
597
+ createdAt: string;
598
+ updatedAt: string;
599
+ type: "product" | "bundle";
600
+ slug: string;
601
+ flags: unknown;
602
+ storeId: string;
603
+ summary: string | null;
604
+ images: string[];
605
+ active: boolean | null;
606
+ badge: unknown;
607
+ bundleDiscountPercentage: string | null;
608
+ categoryId: string | null;
609
+ category: {
610
+ id: string;
611
+ name: string;
612
+ image: string | null;
613
+ createdAt: string;
614
+ updatedAt: string;
615
+ description: JSONContent | null;
616
+ slug: string;
617
+ storeId: string | null;
618
+ position: string;
619
+ active: boolean;
620
+ parentId: string | null;
621
+ } | null;
622
+ productTaxRate: {
623
+ createdAt: string;
624
+ updatedAt: string;
625
+ taxRateId: string;
626
+ productId: string;
627
+ taxRate: {
628
+ id: string;
629
+ name: string;
630
+ createdAt: string;
631
+ updatedAt: string;
632
+ storeId: string;
633
+ rate: string;
634
+ };
635
+ } | null;
636
+ productCollections: {
637
+ position: string | null;
638
+ productId: string;
639
+ collectionId: string;
640
+ collection: {
641
+ id: string;
642
+ name: string;
643
+ image: string | null;
644
+ createdAt: string;
645
+ updatedAt: string;
646
+ description: JSONContent | null;
647
+ slug: string;
648
+ filter: unknown;
649
+ storeId: string;
650
+ active: boolean;
651
+ };
652
+ }[];
653
+ bundleProducts: {
654
+ createdAt: string;
655
+ updatedAt: string;
656
+ position: number;
657
+ bundleId: string;
658
+ quantity: number;
659
+ variantId: string;
660
+ variant: {
661
+ id: string;
662
+ createdAt: string;
663
+ updatedAt: string;
664
+ storeId: string;
665
+ price: string;
666
+ images: string[];
667
+ sku: string | null;
668
+ calculatedPrice: string | null;
669
+ stock: number | null;
670
+ depth: number | null;
671
+ width: number | null;
672
+ height: number | null;
673
+ weight: number | null;
674
+ digital: string[] | null;
675
+ shippable: boolean;
676
+ externalId: string | null;
677
+ productId: string;
678
+ attributes: unknown;
679
+ originalPrice: string;
680
+ product: {
681
+ id: string;
682
+ name: string;
683
+ slug: string;
684
+ images: string[];
685
+ productTaxRate: {
686
+ createdAt: string;
687
+ updatedAt: string;
688
+ taxRateId: string;
689
+ productId: string;
690
+ taxRate: {
691
+ id: string;
692
+ name: string;
693
+ createdAt: string;
694
+ updatedAt: string;
695
+ storeId: string;
696
+ rate: string;
697
+ };
698
+ } | null;
699
+ variants: {
700
+ id: string;
701
+ createdAt: string;
702
+ updatedAt: string;
703
+ storeId: string;
704
+ price: string;
705
+ images: string[];
706
+ sku: string | null;
707
+ calculatedPrice: string | null;
708
+ stock: number | null;
709
+ depth: number | null;
710
+ width: number | null;
711
+ height: number | null;
712
+ weight: number | null;
713
+ digital: string[] | null;
714
+ shippable: boolean;
715
+ externalId: string | null;
716
+ productId: string;
717
+ attributes: unknown;
718
+ originalPrice: string;
719
+ }[];
720
+ };
721
+ combinations: {
722
+ createdAt: string;
723
+ updatedAt: string;
724
+ productVariantId: string;
725
+ variantValueId: string;
726
+ variantValue: {
727
+ id: string;
728
+ value: string;
729
+ colorValue: string | null;
730
+ variantType: {
731
+ id: string;
732
+ type: "string" | "color";
733
+ label: string;
734
+ };
735
+ };
736
+ }[];
737
+ };
738
+ }[];
739
+ subscription: {
740
+ id: string;
741
+ createdAt: string;
742
+ updatedAt: string;
743
+ storeId: string;
744
+ productId: string;
745
+ interval: number;
746
+ cadence: "month" | "week";
747
+ } | null;
748
+ variants: {
749
+ id: string;
750
+ createdAt: string;
751
+ updatedAt: string;
752
+ storeId: string;
753
+ price: string;
754
+ images: string[];
755
+ sku: string | null;
756
+ calculatedPrice: string | null;
757
+ stock: number | null;
758
+ depth: number | null;
759
+ width: number | null;
760
+ height: number | null;
761
+ weight: number | null;
762
+ digital: string[] | null;
763
+ shippable: boolean;
764
+ externalId: string | null;
765
+ productId: string;
766
+ attributes: unknown;
767
+ originalPrice: string;
768
+ combinations: {
769
+ createdAt: string;
770
+ updatedAt: string;
771
+ productVariantId: string;
772
+ variantValueId: string;
773
+ variantValue: {
774
+ id: string;
775
+ value: string;
776
+ colorValue: string | null;
777
+ variantType: {
778
+ id: string;
779
+ type: "string" | "color";
780
+ label: string;
781
+ };
782
+ };
783
+ }[];
784
+ }[];
785
+ } & {
786
+ variants: ({
787
+ price: string;
788
+ } & {
789
+ prePromotionPrice: undefined;
790
+ price: string;
791
+ })[];
792
+ }) | ({
793
+ id: string;
794
+ name: string;
795
+ createdAt: string;
796
+ updatedAt: string;
797
+ type: "product" | "bundle";
798
+ slug: string;
799
+ flags: unknown;
800
+ storeId: string;
801
+ summary: string | null;
802
+ images: string[];
803
+ active: boolean | null;
804
+ badge: unknown;
805
+ bundleDiscountPercentage: string | null;
806
+ categoryId: string | null;
807
+ category: {
808
+ id: string;
809
+ name: string;
810
+ image: string | null;
811
+ createdAt: string;
812
+ updatedAt: string;
813
+ description: JSONContent | null;
814
+ slug: string;
815
+ storeId: string | null;
816
+ position: string;
817
+ active: boolean;
818
+ parentId: string | null;
819
+ } | null;
820
+ productTaxRate: {
821
+ createdAt: string;
822
+ updatedAt: string;
823
+ taxRateId: string;
824
+ productId: string;
825
+ taxRate: {
826
+ id: string;
827
+ name: string;
828
+ createdAt: string;
829
+ updatedAt: string;
830
+ storeId: string;
831
+ rate: string;
832
+ };
833
+ } | null;
834
+ productCollections: {
835
+ position: string | null;
836
+ productId: string;
837
+ collectionId: string;
838
+ collection: {
839
+ id: string;
840
+ name: string;
841
+ image: string | null;
842
+ createdAt: string;
843
+ updatedAt: string;
844
+ description: JSONContent | null;
845
+ slug: string;
846
+ filter: unknown;
847
+ storeId: string;
848
+ active: boolean;
849
+ };
850
+ }[];
851
+ bundleProducts: {
852
+ createdAt: string;
853
+ updatedAt: string;
854
+ position: number;
855
+ bundleId: string;
856
+ quantity: number;
857
+ variantId: string;
858
+ variant: {
859
+ id: string;
860
+ createdAt: string;
861
+ updatedAt: string;
862
+ storeId: string;
863
+ price: string;
864
+ images: string[];
865
+ sku: string | null;
866
+ calculatedPrice: string | null;
867
+ stock: number | null;
868
+ depth: number | null;
869
+ width: number | null;
870
+ height: number | null;
871
+ weight: number | null;
872
+ digital: string[] | null;
873
+ shippable: boolean;
874
+ externalId: string | null;
875
+ productId: string;
876
+ attributes: unknown;
877
+ originalPrice: string;
878
+ product: {
879
+ id: string;
880
+ name: string;
881
+ slug: string;
882
+ images: string[];
883
+ productTaxRate: {
884
+ createdAt: string;
885
+ updatedAt: string;
886
+ taxRateId: string;
887
+ productId: string;
888
+ taxRate: {
889
+ id: string;
890
+ name: string;
891
+ createdAt: string;
892
+ updatedAt: string;
893
+ storeId: string;
894
+ rate: string;
895
+ };
896
+ } | null;
897
+ variants: {
898
+ id: string;
899
+ createdAt: string;
900
+ updatedAt: string;
901
+ storeId: string;
902
+ price: string;
903
+ images: string[];
904
+ sku: string | null;
905
+ calculatedPrice: string | null;
906
+ stock: number | null;
907
+ depth: number | null;
908
+ width: number | null;
909
+ height: number | null;
910
+ weight: number | null;
911
+ digital: string[] | null;
912
+ shippable: boolean;
913
+ externalId: string | null;
914
+ productId: string;
915
+ attributes: unknown;
916
+ originalPrice: string;
917
+ }[];
918
+ };
919
+ combinations: {
920
+ createdAt: string;
921
+ updatedAt: string;
922
+ productVariantId: string;
923
+ variantValueId: string;
924
+ variantValue: {
925
+ id: string;
926
+ value: string;
927
+ colorValue: string | null;
928
+ variantType: {
929
+ id: string;
930
+ type: "string" | "color";
931
+ label: string;
932
+ };
933
+ };
934
+ }[];
935
+ };
936
+ }[];
937
+ subscription: {
938
+ id: string;
939
+ createdAt: string;
940
+ updatedAt: string;
941
+ storeId: string;
942
+ productId: string;
943
+ interval: number;
944
+ cadence: "month" | "week";
945
+ } | null;
946
+ variants: {
947
+ id: string;
948
+ createdAt: string;
949
+ updatedAt: string;
950
+ storeId: string;
951
+ price: string;
952
+ images: string[];
953
+ sku: string | null;
954
+ calculatedPrice: string | null;
955
+ stock: number | null;
956
+ depth: number | null;
957
+ width: number | null;
958
+ height: number | null;
959
+ weight: number | null;
960
+ digital: string[] | null;
961
+ shippable: boolean;
962
+ externalId: string | null;
963
+ productId: string;
964
+ attributes: unknown;
965
+ originalPrice: string;
966
+ combinations: {
967
+ createdAt: string;
968
+ updatedAt: string;
969
+ productVariantId: string;
970
+ variantValueId: string;
971
+ variantValue: {
972
+ id: string;
973
+ value: string;
974
+ colorValue: string | null;
975
+ variantType: {
976
+ id: string;
977
+ type: "string" | "color";
978
+ label: string;
979
+ };
980
+ };
981
+ }[];
982
+ }[];
983
+ } & {
984
+ variants: ({
985
+ price: string;
986
+ } & {
987
+ prePromotionPrice: string | null;
988
+ })[];
989
+ }))[];
990
+ meta: {
991
+ count: number;
992
+ };
993
+ };
994
+ type APIProductsBrowseParams = {
995
+ limit: number;
996
+ offset?: number | undefined;
997
+ category?: string | undefined;
998
+ query?: string | undefined;
999
+ active?: boolean | undefined;
1000
+ excludeBundles?: boolean | undefined;
1001
+ orderBy?: "name" | "createdAt" | "price" | undefined;
1002
+ orderDirection?: "asc" | "desc" | undefined;
1003
+ };
1004
+ type APIProductGetByIdResult = ({
1005
+ id: string;
1006
+ name: string;
1007
+ createdAt: string;
1008
+ updatedAt: string;
1009
+ type: "product" | "bundle";
1010
+ slug: string;
1011
+ flags: unknown;
1012
+ storeId: string;
1013
+ summary: string | null;
1014
+ images: string[];
1015
+ active: boolean | null;
1016
+ badge: unknown;
1017
+ bundleDiscountPercentage: string | null;
1018
+ categoryId: string | null;
1019
+ category: {
1020
+ id: string;
1021
+ name: string;
1022
+ image: string | null;
1023
+ createdAt: string;
1024
+ updatedAt: string;
1025
+ description: JSONContent | null;
1026
+ slug: string;
1027
+ storeId: string | null;
1028
+ position: string;
1029
+ active: boolean;
1030
+ parentId: string | null;
1031
+ } | null;
1032
+ productTaxRate: {
1033
+ createdAt: string;
1034
+ updatedAt: string;
1035
+ taxRateId: string;
1036
+ productId: string;
1037
+ taxRate: {
1038
+ id: string;
1039
+ name: string;
1040
+ createdAt: string;
1041
+ updatedAt: string;
1042
+ storeId: string;
1043
+ rate: string;
1044
+ };
1045
+ } | null;
1046
+ productCollections: {
1047
+ position: string | null;
1048
+ productId: string;
1049
+ collectionId: string;
1050
+ collection: {
1051
+ id: string;
1052
+ name: string;
1053
+ image: string | null;
1054
+ createdAt: string;
1055
+ updatedAt: string;
1056
+ description: JSONContent | null;
1057
+ slug: string;
1058
+ filter: unknown;
1059
+ storeId: string;
1060
+ active: boolean;
1061
+ };
1062
+ }[];
1063
+ bundleProducts: {
1064
+ createdAt: string;
1065
+ updatedAt: string;
1066
+ position: number;
1067
+ bundleId: string;
1068
+ quantity: number;
1069
+ variantId: string;
1070
+ variant: {
1071
+ id: string;
1072
+ createdAt: string;
1073
+ updatedAt: string;
1074
+ storeId: string;
1075
+ price: string;
1076
+ images: string[];
1077
+ sku: string | null;
1078
+ calculatedPrice: string | null;
1079
+ stock: number | null;
1080
+ depth: number | null;
1081
+ width: number | null;
1082
+ height: number | null;
1083
+ weight: number | null;
1084
+ digital: string[] | null;
1085
+ shippable: boolean;
1086
+ externalId: string | null;
1087
+ productId: string;
1088
+ attributes: unknown;
1089
+ originalPrice: string;
1090
+ product: {
1091
+ id: string;
1092
+ name: string;
1093
+ slug: string;
1094
+ images: string[];
1095
+ productTaxRate: {
1096
+ createdAt: string;
1097
+ updatedAt: string;
1098
+ taxRateId: string;
1099
+ productId: string;
1100
+ taxRate: {
1101
+ id: string;
1102
+ name: string;
1103
+ createdAt: string;
1104
+ updatedAt: string;
1105
+ storeId: string;
1106
+ rate: string;
1107
+ };
1108
+ } | null;
1109
+ variants: {
1110
+ id: string;
1111
+ createdAt: string;
1112
+ updatedAt: string;
1113
+ storeId: string;
1114
+ price: string;
1115
+ images: string[];
1116
+ sku: string | null;
1117
+ calculatedPrice: string | null;
1118
+ stock: number | null;
1119
+ depth: number | null;
1120
+ width: number | null;
1121
+ height: number | null;
1122
+ weight: number | null;
1123
+ digital: string[] | null;
1124
+ shippable: boolean;
1125
+ externalId: string | null;
1126
+ productId: string;
1127
+ attributes: unknown;
1128
+ originalPrice: string;
1129
+ }[];
1130
+ };
1131
+ combinations: {
1132
+ createdAt: string;
1133
+ updatedAt: string;
1134
+ productVariantId: string;
1135
+ variantValueId: string;
1136
+ variantValue: {
1137
+ id: string;
1138
+ value: string;
1139
+ colorValue: string | null;
1140
+ variantType: {
1141
+ id: string;
1142
+ type: "string" | "color";
1143
+ label: string;
1144
+ };
1145
+ };
1146
+ }[];
1147
+ };
1148
+ }[];
1149
+ subscription: {
1150
+ id: string;
1151
+ createdAt: string;
1152
+ updatedAt: string;
1153
+ storeId: string;
1154
+ productId: string;
1155
+ interval: number;
1156
+ cadence: "month" | "week";
1157
+ } | null;
1158
+ variantsTypes: {
1159
+ id: string;
1160
+ type: "string" | "color";
1161
+ label: string;
1162
+ variantValues: {
1163
+ id: string;
1164
+ value: string;
1165
+ position: number | null;
1166
+ colorValue: string | null;
1167
+ }[];
1168
+ }[];
1169
+ variants: {
1170
+ id: string;
1171
+ createdAt: string;
1172
+ updatedAt: string;
1173
+ storeId: string;
1174
+ price: string;
1175
+ images: string[];
1176
+ sku: string | null;
1177
+ calculatedPrice: string | null;
1178
+ stock: number | null;
1179
+ depth: number | null;
1180
+ width: number | null;
1181
+ height: number | null;
1182
+ weight: number | null;
1183
+ digital: string[] | null;
1184
+ shippable: boolean;
1185
+ externalId: string | null;
1186
+ productId: string;
1187
+ attributes: unknown;
1188
+ originalPrice: string;
1189
+ combinations: {
1190
+ createdAt: string;
1191
+ updatedAt: string;
1192
+ productVariantId: string;
1193
+ variantValueId: string;
1194
+ variantValue: {
1195
+ id: string;
1196
+ value: string;
1197
+ position: number | null;
1198
+ colorValue: string | null;
1199
+ variantType: {
1200
+ id: string;
1201
+ type: "string" | "color";
1202
+ label: string;
1203
+ };
1204
+ };
1205
+ }[];
1206
+ }[];
1207
+ } & {
1208
+ variants: ({
1209
+ price: string;
1210
+ } & {
1211
+ prePromotionPrice: undefined;
1212
+ })[];
1213
+ }) | ({
1214
+ id: string;
1215
+ name: string;
1216
+ createdAt: string;
1217
+ updatedAt: string;
1218
+ type: "product" | "bundle";
1219
+ slug: string;
1220
+ flags: unknown;
1221
+ storeId: string;
1222
+ summary: string | null;
1223
+ images: string[];
1224
+ active: boolean | null;
1225
+ badge: unknown;
1226
+ bundleDiscountPercentage: string | null;
1227
+ categoryId: string | null;
1228
+ category: {
1229
+ id: string;
1230
+ name: string;
1231
+ image: string | null;
1232
+ createdAt: string;
1233
+ updatedAt: string;
1234
+ description: JSONContent | null;
1235
+ slug: string;
1236
+ storeId: string | null;
1237
+ position: string;
1238
+ active: boolean;
1239
+ parentId: string | null;
1240
+ } | null;
1241
+ productTaxRate: {
1242
+ createdAt: string;
1243
+ updatedAt: string;
1244
+ taxRateId: string;
1245
+ productId: string;
1246
+ taxRate: {
1247
+ id: string;
1248
+ name: string;
1249
+ createdAt: string;
1250
+ updatedAt: string;
1251
+ storeId: string;
1252
+ rate: string;
1253
+ };
1254
+ } | null;
1255
+ productCollections: {
1256
+ position: string | null;
1257
+ productId: string;
1258
+ collectionId: string;
1259
+ collection: {
1260
+ id: string;
1261
+ name: string;
1262
+ image: string | null;
1263
+ createdAt: string;
1264
+ updatedAt: string;
1265
+ description: JSONContent | null;
1266
+ slug: string;
1267
+ filter: unknown;
1268
+ storeId: string;
1269
+ active: boolean;
1270
+ };
1271
+ }[];
1272
+ bundleProducts: {
1273
+ createdAt: string;
1274
+ updatedAt: string;
1275
+ position: number;
1276
+ bundleId: string;
1277
+ quantity: number;
1278
+ variantId: string;
1279
+ variant: {
1280
+ id: string;
1281
+ createdAt: string;
1282
+ updatedAt: string;
1283
+ storeId: string;
1284
+ price: string;
1285
+ images: string[];
1286
+ sku: string | null;
1287
+ calculatedPrice: string | null;
1288
+ stock: number | null;
1289
+ depth: number | null;
1290
+ width: number | null;
1291
+ height: number | null;
1292
+ weight: number | null;
1293
+ digital: string[] | null;
1294
+ shippable: boolean;
1295
+ externalId: string | null;
1296
+ productId: string;
1297
+ attributes: unknown;
1298
+ originalPrice: string;
1299
+ product: {
1300
+ id: string;
1301
+ name: string;
1302
+ slug: string;
1303
+ images: string[];
1304
+ productTaxRate: {
1305
+ createdAt: string;
1306
+ updatedAt: string;
1307
+ taxRateId: string;
1308
+ productId: string;
1309
+ taxRate: {
1310
+ id: string;
1311
+ name: string;
1312
+ createdAt: string;
1313
+ updatedAt: string;
1314
+ storeId: string;
1315
+ rate: string;
1316
+ };
1317
+ } | null;
1318
+ variants: {
1319
+ id: string;
1320
+ createdAt: string;
1321
+ updatedAt: string;
1322
+ storeId: string;
1323
+ price: string;
1324
+ images: string[];
1325
+ sku: string | null;
1326
+ calculatedPrice: string | null;
1327
+ stock: number | null;
1328
+ depth: number | null;
1329
+ width: number | null;
1330
+ height: number | null;
1331
+ weight: number | null;
1332
+ digital: string[] | null;
1333
+ shippable: boolean;
1334
+ externalId: string | null;
1335
+ productId: string;
1336
+ attributes: unknown;
1337
+ originalPrice: string;
1338
+ }[];
1339
+ };
1340
+ combinations: {
1341
+ createdAt: string;
1342
+ updatedAt: string;
1343
+ productVariantId: string;
1344
+ variantValueId: string;
1345
+ variantValue: {
1346
+ id: string;
1347
+ value: string;
1348
+ colorValue: string | null;
1349
+ variantType: {
1350
+ id: string;
1351
+ type: "string" | "color";
1352
+ label: string;
1353
+ };
1354
+ };
1355
+ }[];
1356
+ };
1357
+ }[];
1358
+ subscription: {
1359
+ id: string;
1360
+ createdAt: string;
1361
+ updatedAt: string;
1362
+ storeId: string;
1363
+ productId: string;
1364
+ interval: number;
1365
+ cadence: "month" | "week";
1366
+ } | null;
1367
+ variantsTypes: {
1368
+ id: string;
1369
+ type: "string" | "color";
1370
+ label: string;
1371
+ variantValues: {
1372
+ id: string;
1373
+ value: string;
1374
+ position: number | null;
1375
+ colorValue: string | null;
1376
+ }[];
1377
+ }[];
1378
+ variants: {
1379
+ id: string;
1380
+ createdAt: string;
1381
+ updatedAt: string;
1382
+ storeId: string;
1383
+ price: string;
1384
+ images: string[];
1385
+ sku: string | null;
1386
+ calculatedPrice: string | null;
1387
+ stock: number | null;
1388
+ depth: number | null;
1389
+ width: number | null;
1390
+ height: number | null;
1391
+ weight: number | null;
1392
+ digital: string[] | null;
1393
+ shippable: boolean;
1394
+ externalId: string | null;
1395
+ productId: string;
1396
+ attributes: unknown;
1397
+ originalPrice: string;
1398
+ combinations: {
1399
+ createdAt: string;
1400
+ updatedAt: string;
1401
+ productVariantId: string;
1402
+ variantValueId: string;
1403
+ variantValue: {
1404
+ id: string;
1405
+ value: string;
1406
+ position: number | null;
1407
+ colorValue: string | null;
1408
+ variantType: {
1409
+ id: string;
1410
+ type: "string" | "color";
1411
+ label: string;
1412
+ };
1413
+ };
1414
+ }[];
1415
+ }[];
1416
+ } & {
1417
+ variants: ({
1418
+ price: string;
1419
+ } & {
1420
+ prePromotionPrice: string | null;
1421
+ })[];
1422
+ });
1423
+ type APIProductGetByIdParams = {
1424
+ idOrSlug: string;
1425
+ };
1426
+ type APICartGetResult = {
1427
+ lineItems: {
1428
+ productVariant: ({
1429
+ storeId: string | null;
1430
+ product: {
1431
+ bundleProducts: {
1432
+ variant: {
1433
+ storeId: string | null;
1434
+ product: {
1435
+ productTaxRate: {
1436
+ taxRate: {
1437
+ rate: string;
1438
+ };
1439
+ } | null;
1440
+ id: string;
1441
+ name: string;
1442
+ slug: string;
1443
+ images: string[];
1444
+ };
1445
+ id: string;
1446
+ createdAt: string;
1447
+ updatedAt: string;
1448
+ price: string;
1449
+ images: string[];
1450
+ sku: string | null;
1451
+ calculatedPrice: string | null;
1452
+ stock: number | null;
1453
+ depth: number | null;
1454
+ width: number | null;
1455
+ height: number | null;
1456
+ weight: number | null;
1457
+ digital: string[] | null;
1458
+ shippable: boolean;
1459
+ externalId: string | null;
1460
+ productId: string;
1461
+ attributes: unknown;
1462
+ originalPrice: string;
1463
+ };
1464
+ createdAt: string;
1465
+ updatedAt: string;
1466
+ position: number;
1467
+ bundleId: string;
1468
+ quantity: number;
1469
+ variantId: string;
1470
+ }[];
1471
+ id: string;
1472
+ name: string;
1473
+ createdAt: string;
1474
+ updatedAt: string;
1475
+ type: "product" | "bundle";
1476
+ slug: string;
1477
+ flags: unknown;
1478
+ storeId: string;
1479
+ summary: string | null;
1480
+ images: string[];
1481
+ active: boolean | null;
1482
+ badge: unknown;
1483
+ bundleDiscountPercentage: string | null;
1484
+ categoryId: string | null;
1485
+ productTaxRate: {
1486
+ createdAt: string;
1487
+ updatedAt: string;
1488
+ taxRateId: string;
1489
+ productId: string;
1490
+ taxRate: {
1491
+ id: string;
1492
+ name: string;
1493
+ createdAt: string;
1494
+ updatedAt: string;
1495
+ storeId: string;
1496
+ rate: string;
1497
+ };
1498
+ } | null;
1499
+ productCollections: {
1500
+ position: string | null;
1501
+ productId: string;
1502
+ collectionId: string;
1503
+ collection: {
1504
+ id: string;
1505
+ name: string;
1506
+ image: string | null;
1507
+ createdAt: string;
1508
+ updatedAt: string;
1509
+ description: JSONContent | null;
1510
+ slug: string;
1511
+ filter: unknown;
1512
+ storeId: string;
1513
+ active: boolean;
1514
+ };
1515
+ }[];
1516
+ };
1517
+ id: string;
1518
+ createdAt: string;
1519
+ updatedAt: string;
1520
+ price: string;
1521
+ images: string[];
1522
+ sku: string | null;
1523
+ calculatedPrice: string | null;
1524
+ stock: number | null;
1525
+ depth: number | null;
1526
+ width: number | null;
1527
+ height: number | null;
1528
+ weight: number | null;
1529
+ digital: string[] | null;
1530
+ shippable: boolean;
1531
+ externalId: string | null;
1532
+ productId: string;
1533
+ attributes: unknown;
1534
+ originalPrice: string;
1535
+ combinations: {
1536
+ createdAt: string;
1537
+ updatedAt: string;
1538
+ productVariantId: string;
1539
+ variantValueId: string;
1540
+ variantValue: {
1541
+ id: string;
1542
+ value: string;
1543
+ variantType: {
1544
+ id: string;
1545
+ label: string;
1546
+ };
1547
+ };
1548
+ }[];
1549
+ } & {
1550
+ price: string;
1551
+ } & {
1552
+ prePromotionPrice: undefined;
1553
+ }) | ({
1554
+ storeId: string | null;
1555
+ product: {
1556
+ bundleProducts: {
1557
+ variant: {
1558
+ storeId: string | null;
1559
+ product: {
1560
+ productTaxRate: {
1561
+ taxRate: {
1562
+ rate: string;
1563
+ };
1564
+ } | null;
1565
+ id: string;
1566
+ name: string;
1567
+ slug: string;
1568
+ images: string[];
1569
+ };
1570
+ id: string;
1571
+ createdAt: string;
1572
+ updatedAt: string;
1573
+ price: string;
1574
+ images: string[];
1575
+ sku: string | null;
1576
+ calculatedPrice: string | null;
1577
+ stock: number | null;
1578
+ depth: number | null;
1579
+ width: number | null;
1580
+ height: number | null;
1581
+ weight: number | null;
1582
+ digital: string[] | null;
1583
+ shippable: boolean;
1584
+ externalId: string | null;
1585
+ productId: string;
1586
+ attributes: unknown;
1587
+ originalPrice: string;
1588
+ };
1589
+ createdAt: string;
1590
+ updatedAt: string;
1591
+ position: number;
1592
+ bundleId: string;
1593
+ quantity: number;
1594
+ variantId: string;
1595
+ }[];
1596
+ id: string;
1597
+ name: string;
1598
+ createdAt: string;
1599
+ updatedAt: string;
1600
+ type: "product" | "bundle";
1601
+ slug: string;
1602
+ flags: unknown;
1603
+ storeId: string;
1604
+ summary: string | null;
1605
+ images: string[];
1606
+ active: boolean | null;
1607
+ badge: unknown;
1608
+ bundleDiscountPercentage: string | null;
1609
+ categoryId: string | null;
1610
+ productTaxRate: {
1611
+ createdAt: string;
1612
+ updatedAt: string;
1613
+ taxRateId: string;
1614
+ productId: string;
1615
+ taxRate: {
1616
+ id: string;
1617
+ name: string;
1618
+ createdAt: string;
1619
+ updatedAt: string;
1620
+ storeId: string;
1621
+ rate: string;
1622
+ };
1623
+ } | null;
1624
+ productCollections: {
1625
+ position: string | null;
1626
+ productId: string;
1627
+ collectionId: string;
1628
+ collection: {
1629
+ id: string;
1630
+ name: string;
1631
+ image: string | null;
1632
+ createdAt: string;
1633
+ updatedAt: string;
1634
+ description: JSONContent | null;
1635
+ slug: string;
1636
+ filter: unknown;
1637
+ storeId: string;
1638
+ active: boolean;
1639
+ };
1640
+ }[];
1641
+ };
1642
+ id: string;
1643
+ createdAt: string;
1644
+ updatedAt: string;
1645
+ price: string;
1646
+ images: string[];
1647
+ sku: string | null;
1648
+ calculatedPrice: string | null;
1649
+ stock: number | null;
1650
+ depth: number | null;
1651
+ width: number | null;
1652
+ height: number | null;
1653
+ weight: number | null;
1654
+ digital: string[] | null;
1655
+ shippable: boolean;
1656
+ externalId: string | null;
1657
+ productId: string;
1658
+ attributes: unknown;
1659
+ originalPrice: string;
1660
+ combinations: {
1661
+ createdAt: string;
1662
+ updatedAt: string;
1663
+ productVariantId: string;
1664
+ variantValueId: string;
1665
+ variantValue: {
1666
+ id: string;
1667
+ value: string;
1668
+ variantType: {
1669
+ id: string;
1670
+ label: string;
1671
+ };
1672
+ };
1673
+ }[];
1674
+ } & {
1675
+ price: string;
1676
+ } & {
1677
+ prePromotionPrice: undefined;
1678
+ }) | ({
1679
+ storeId: string | null;
1680
+ product: {
1681
+ bundleProducts: {
1682
+ variant: {
1683
+ storeId: string | null;
1684
+ product: {
1685
+ productTaxRate: {
1686
+ taxRate: {
1687
+ rate: string;
1688
+ };
1689
+ } | null;
1690
+ id: string;
1691
+ name: string;
1692
+ slug: string;
1693
+ images: string[];
1694
+ };
1695
+ id: string;
1696
+ createdAt: string;
1697
+ updatedAt: string;
1698
+ price: string;
1699
+ images: string[];
1700
+ sku: string | null;
1701
+ calculatedPrice: string | null;
1702
+ stock: number | null;
1703
+ depth: number | null;
1704
+ width: number | null;
1705
+ height: number | null;
1706
+ weight: number | null;
1707
+ digital: string[] | null;
1708
+ shippable: boolean;
1709
+ externalId: string | null;
1710
+ productId: string;
1711
+ attributes: unknown;
1712
+ originalPrice: string;
1713
+ };
1714
+ createdAt: string;
1715
+ updatedAt: string;
1716
+ position: number;
1717
+ bundleId: string;
1718
+ quantity: number;
1719
+ variantId: string;
1720
+ }[];
1721
+ id: string;
1722
+ name: string;
1723
+ createdAt: string;
1724
+ updatedAt: string;
1725
+ type: "product" | "bundle";
1726
+ slug: string;
1727
+ flags: unknown;
1728
+ storeId: string;
1729
+ summary: string | null;
1730
+ images: string[];
1731
+ active: boolean | null;
1732
+ badge: unknown;
1733
+ bundleDiscountPercentage: string | null;
1734
+ categoryId: string | null;
1735
+ productTaxRate: {
1736
+ createdAt: string;
1737
+ updatedAt: string;
1738
+ taxRateId: string;
1739
+ productId: string;
1740
+ taxRate: {
1741
+ id: string;
1742
+ name: string;
1743
+ createdAt: string;
1744
+ updatedAt: string;
1745
+ storeId: string;
1746
+ rate: string;
1747
+ };
1748
+ } | null;
1749
+ productCollections: {
1750
+ position: string | null;
1751
+ productId: string;
1752
+ collectionId: string;
1753
+ collection: {
1754
+ id: string;
1755
+ name: string;
1756
+ image: string | null;
1757
+ createdAt: string;
1758
+ updatedAt: string;
1759
+ description: JSONContent | null;
1760
+ slug: string;
1761
+ filter: unknown;
1762
+ storeId: string;
1763
+ active: boolean;
1764
+ };
1765
+ }[];
1766
+ };
1767
+ id: string;
1768
+ createdAt: string;
1769
+ updatedAt: string;
1770
+ price: string;
1771
+ images: string[];
1772
+ sku: string | null;
1773
+ calculatedPrice: string | null;
1774
+ stock: number | null;
1775
+ depth: number | null;
1776
+ width: number | null;
1777
+ height: number | null;
1778
+ weight: number | null;
1779
+ digital: string[] | null;
1780
+ shippable: boolean;
1781
+ externalId: string | null;
1782
+ productId: string;
1783
+ attributes: unknown;
1784
+ originalPrice: string;
1785
+ combinations: {
1786
+ createdAt: string;
1787
+ updatedAt: string;
1788
+ productVariantId: string;
1789
+ variantValueId: string;
1790
+ variantValue: {
1791
+ id: string;
1792
+ value: string;
1793
+ variantType: {
1794
+ id: string;
1795
+ label: string;
1796
+ };
1797
+ };
1798
+ }[];
1799
+ } & {
1800
+ price: string;
1801
+ } & {
1802
+ prePromotionPrice: undefined;
1803
+ }) | ({
1804
+ storeId: string | null;
1805
+ product: {
1806
+ bundleProducts: {
1807
+ variant: {
1808
+ storeId: string | null;
1809
+ product: {
1810
+ productTaxRate: {
1811
+ taxRate: {
1812
+ rate: string;
1813
+ };
1814
+ } | null;
1815
+ id: string;
1816
+ name: string;
1817
+ slug: string;
1818
+ images: string[];
1819
+ };
1820
+ id: string;
1821
+ createdAt: string;
1822
+ updatedAt: string;
1823
+ price: string;
1824
+ images: string[];
1825
+ sku: string | null;
1826
+ calculatedPrice: string | null;
1827
+ stock: number | null;
1828
+ depth: number | null;
1829
+ width: number | null;
1830
+ height: number | null;
1831
+ weight: number | null;
1832
+ digital: string[] | null;
1833
+ shippable: boolean;
1834
+ externalId: string | null;
1835
+ productId: string;
1836
+ attributes: unknown;
1837
+ originalPrice: string;
1838
+ };
1839
+ createdAt: string;
1840
+ updatedAt: string;
1841
+ position: number;
1842
+ bundleId: string;
1843
+ quantity: number;
1844
+ variantId: string;
1845
+ }[];
1846
+ id: string;
1847
+ name: string;
1848
+ createdAt: string;
1849
+ updatedAt: string;
1850
+ type: "product" | "bundle";
1851
+ slug: string;
1852
+ flags: unknown;
1853
+ storeId: string;
1854
+ summary: string | null;
1855
+ images: string[];
1856
+ active: boolean | null;
1857
+ badge: unknown;
1858
+ bundleDiscountPercentage: string | null;
1859
+ categoryId: string | null;
1860
+ productTaxRate: {
1861
+ createdAt: string;
1862
+ updatedAt: string;
1863
+ taxRateId: string;
1864
+ productId: string;
1865
+ taxRate: {
1866
+ id: string;
1867
+ name: string;
1868
+ createdAt: string;
1869
+ updatedAt: string;
1870
+ storeId: string;
1871
+ rate: string;
1872
+ };
1873
+ } | null;
1874
+ productCollections: {
1875
+ position: string | null;
1876
+ productId: string;
1877
+ collectionId: string;
1878
+ collection: {
1879
+ id: string;
1880
+ name: string;
1881
+ image: string | null;
1882
+ createdAt: string;
1883
+ updatedAt: string;
1884
+ description: JSONContent | null;
1885
+ slug: string;
1886
+ filter: unknown;
1887
+ storeId: string;
1888
+ active: boolean;
1889
+ };
1890
+ }[];
1891
+ };
1892
+ id: string;
1893
+ createdAt: string;
1894
+ updatedAt: string;
1895
+ price: string;
1896
+ images: string[];
1897
+ sku: string | null;
1898
+ calculatedPrice: string | null;
1899
+ stock: number | null;
1900
+ depth: number | null;
1901
+ width: number | null;
1902
+ height: number | null;
1903
+ weight: number | null;
1904
+ digital: string[] | null;
1905
+ shippable: boolean;
1906
+ externalId: string | null;
1907
+ productId: string;
1908
+ attributes: unknown;
1909
+ originalPrice: string;
1910
+ combinations: {
1911
+ createdAt: string;
1912
+ updatedAt: string;
1913
+ productVariantId: string;
1914
+ variantValueId: string;
1915
+ variantValue: {
1916
+ id: string;
1917
+ value: string;
1918
+ variantType: {
1919
+ id: string;
1920
+ label: string;
1921
+ };
1922
+ };
1923
+ }[];
1924
+ } & {
1925
+ price: string;
1926
+ } & {
1927
+ prePromotionPrice: undefined;
1928
+ price: string;
1929
+ }) | ({
1930
+ storeId: string | null;
1931
+ product: {
1932
+ bundleProducts: {
1933
+ variant: {
1934
+ storeId: string | null;
1935
+ product: {
1936
+ productTaxRate: {
1937
+ taxRate: {
1938
+ rate: string;
1939
+ };
1940
+ } | null;
1941
+ id: string;
1942
+ name: string;
1943
+ slug: string;
1944
+ images: string[];
1945
+ };
1946
+ id: string;
1947
+ createdAt: string;
1948
+ updatedAt: string;
1949
+ price: string;
1950
+ images: string[];
1951
+ sku: string | null;
1952
+ calculatedPrice: string | null;
1953
+ stock: number | null;
1954
+ depth: number | null;
1955
+ width: number | null;
1956
+ height: number | null;
1957
+ weight: number | null;
1958
+ digital: string[] | null;
1959
+ shippable: boolean;
1960
+ externalId: string | null;
1961
+ productId: string;
1962
+ attributes: unknown;
1963
+ originalPrice: string;
1964
+ };
1965
+ createdAt: string;
1966
+ updatedAt: string;
1967
+ position: number;
1968
+ bundleId: string;
1969
+ quantity: number;
1970
+ variantId: string;
1971
+ }[];
1972
+ id: string;
1973
+ name: string;
1974
+ createdAt: string;
1975
+ updatedAt: string;
1976
+ type: "product" | "bundle";
1977
+ slug: string;
1978
+ flags: unknown;
1979
+ storeId: string;
1980
+ summary: string | null;
1981
+ images: string[];
1982
+ active: boolean | null;
1983
+ badge: unknown;
1984
+ bundleDiscountPercentage: string | null;
1985
+ categoryId: string | null;
1986
+ productTaxRate: {
1987
+ createdAt: string;
1988
+ updatedAt: string;
1989
+ taxRateId: string;
1990
+ productId: string;
1991
+ taxRate: {
1992
+ id: string;
1993
+ name: string;
1994
+ createdAt: string;
1995
+ updatedAt: string;
1996
+ storeId: string;
1997
+ rate: string;
1998
+ };
1999
+ } | null;
2000
+ productCollections: {
2001
+ position: string | null;
2002
+ productId: string;
2003
+ collectionId: string;
2004
+ collection: {
2005
+ id: string;
2006
+ name: string;
2007
+ image: string | null;
2008
+ createdAt: string;
2009
+ updatedAt: string;
2010
+ description: JSONContent | null;
2011
+ slug: string;
2012
+ filter: unknown;
2013
+ storeId: string;
2014
+ active: boolean;
2015
+ };
2016
+ }[];
2017
+ };
2018
+ id: string;
2019
+ createdAt: string;
2020
+ updatedAt: string;
2021
+ price: string;
2022
+ images: string[];
2023
+ sku: string | null;
2024
+ calculatedPrice: string | null;
2025
+ stock: number | null;
2026
+ depth: number | null;
2027
+ width: number | null;
2028
+ height: number | null;
2029
+ weight: number | null;
2030
+ digital: string[] | null;
2031
+ shippable: boolean;
2032
+ externalId: string | null;
2033
+ productId: string;
2034
+ attributes: unknown;
2035
+ originalPrice: string;
2036
+ combinations: {
2037
+ createdAt: string;
2038
+ updatedAt: string;
2039
+ productVariantId: string;
2040
+ variantValueId: string;
2041
+ variantValue: {
2042
+ id: string;
2043
+ value: string;
2044
+ variantType: {
2045
+ id: string;
2046
+ label: string;
2047
+ };
2048
+ };
2049
+ }[];
2050
+ } & {
2051
+ price: string;
2052
+ } & {
2053
+ prePromotionPrice: string | null;
2054
+ });
2055
+ id: string;
2056
+ createdAt: string;
2057
+ updatedAt: string;
2058
+ cartId: string;
2059
+ quantity: number;
2060
+ productVariantId: string;
2061
+ subscriptionId: string | null;
2062
+ subscription: {
2063
+ id: string;
2064
+ createdAt: string;
2065
+ updatedAt: string;
2066
+ storeId: string;
2067
+ productId: string;
2068
+ interval: number;
2069
+ cadence: "month" | "week";
2070
+ } | null;
2071
+ }[];
2072
+ id: string;
2073
+ createdAt: string;
2074
+ updatedAt: string;
2075
+ storeId: string;
2076
+ addonData: Record<string, unknown> | null | undefined;
2077
+ couponId: string | null;
2078
+ customerId: string | null;
2079
+ stripePaymentIntentId: string | null;
2080
+ checkoutSessionId: string | null;
2081
+ shippingId: string | null;
2082
+ shippingAddressId: string | null;
2083
+ billingAddressId: string | null;
2084
+ shipping: {
2085
+ id: string;
2086
+ name: string;
2087
+ createdAt: string;
2088
+ updatedAt: string;
2089
+ type: "courier" | "parcel" | "pickup_point" | "in_store";
2090
+ description: string | null;
2091
+ storeId: string;
2092
+ price: string;
2093
+ minShippingTime: number | null;
2094
+ maxShippingTime: number | null;
2095
+ position: number | null;
2096
+ addonId: string | null;
2097
+ addonData: unknown;
2098
+ countries: string[] | null;
2099
+ shippingAddon: {
2100
+ id: string;
2101
+ name: string;
2102
+ createdAt: string;
2103
+ updatedAt: string;
2104
+ type: "shipping" | "analytics" | "products" | "invoicing";
2105
+ storeId: string;
2106
+ } | null;
2107
+ shippingTaxRate: {
2108
+ createdAt: string;
2109
+ updatedAt: string;
2110
+ shippingId: string;
2111
+ taxRateId: string;
2112
+ taxRate: {
2113
+ id: string;
2114
+ name: string;
2115
+ createdAt: string;
2116
+ updatedAt: string;
2117
+ storeId: string;
2118
+ rate: string;
2119
+ };
2120
+ } | null;
2121
+ } | null;
2122
+ coupon: {
2123
+ type: "fixed" | "percentage";
2124
+ value: string;
2125
+ code: string;
2126
+ startDate: string | null;
2127
+ endDate: string | null;
2128
+ } | null;
2129
+ billingAddress: {
2130
+ id: string;
2131
+ name: string | null;
2132
+ createdAt: string;
2133
+ updatedAt: string;
2134
+ type: "shipping" | "billing" | "merchant";
2135
+ company: string | null;
2136
+ city: string | null;
2137
+ country: string | null;
2138
+ line1: string | null;
2139
+ line2: string | null;
2140
+ postalCode: string | null;
2141
+ state: string | null;
2142
+ phone: string | null;
2143
+ taxId: string | null;
2144
+ } | null;
2145
+ shippingAddress: {
2146
+ id: string;
2147
+ name: string | null;
2148
+ createdAt: string;
2149
+ updatedAt: string;
2150
+ type: "shipping" | "billing" | "merchant";
2151
+ company: string | null;
2152
+ city: string | null;
2153
+ country: string | null;
2154
+ line1: string | null;
2155
+ line2: string | null;
2156
+ postalCode: string | null;
2157
+ state: string | null;
2158
+ phone: string | null;
2159
+ taxId: string | null;
2160
+ } | null;
2161
+ customer: {
2162
+ id: string;
2163
+ email: string | null;
2164
+ createdAt: string;
2165
+ updatedAt: string;
2166
+ userId: string | null;
2167
+ storeId: string;
2168
+ couponId: string | null;
2169
+ user: {
2170
+ id: string;
2171
+ name: string;
2172
+ email: string;
2173
+ } | null;
2174
+ coupon: {
2175
+ type: "fixed" | "percentage";
2176
+ value: string;
2177
+ code: string;
2178
+ startDate: string | null;
2179
+ endDate: string | null;
2180
+ } | null;
2181
+ } | null;
2182
+ } | null | undefined;
2183
+ type APICartAddBody = unknown;
2184
+ type APICartAddResult = unknown;
2185
+ type APICartCreateBody = {
2186
+ variantId: string;
2187
+ quantity: number;
2188
+ cartId?: string | undefined;
2189
+ subscriptionId?: string | null | undefined;
2190
+ };
2191
+ type APICartCreateResult = {
2192
+ lineItems: {
2193
+ productVariant: ({
2194
+ storeId: string | null;
2195
+ product: {
2196
+ bundleProducts: {
2197
+ variant: {
2198
+ storeId: string | null;
2199
+ product: {
2200
+ productTaxRate: {
2201
+ taxRate: {
2202
+ rate: string;
2203
+ };
2204
+ } | null;
2205
+ id: string;
2206
+ name: string;
2207
+ slug: string;
2208
+ images: string[];
2209
+ };
2210
+ id: string;
2211
+ createdAt: string;
2212
+ updatedAt: string;
2213
+ price: string;
2214
+ images: string[];
2215
+ sku: string | null;
2216
+ calculatedPrice: string | null;
2217
+ stock: number | null;
2218
+ depth: number | null;
2219
+ width: number | null;
2220
+ height: number | null;
2221
+ weight: number | null;
2222
+ digital: string[] | null;
2223
+ shippable: boolean;
2224
+ externalId: string | null;
2225
+ productId: string;
2226
+ attributes: unknown;
2227
+ originalPrice: string;
2228
+ };
2229
+ createdAt: string;
2230
+ updatedAt: string;
2231
+ position: number;
2232
+ bundleId: string;
2233
+ quantity: number;
2234
+ variantId: string;
2235
+ }[];
2236
+ id: string;
2237
+ name: string;
2238
+ createdAt: string;
2239
+ updatedAt: string;
2240
+ type: "product" | "bundle";
2241
+ slug: string;
2242
+ flags: unknown;
2243
+ storeId: string;
2244
+ summary: string | null;
2245
+ images: string[];
2246
+ active: boolean | null;
2247
+ badge: unknown;
2248
+ bundleDiscountPercentage: string | null;
2249
+ categoryId: string | null;
2250
+ productTaxRate: {
2251
+ createdAt: string;
2252
+ updatedAt: string;
2253
+ taxRateId: string;
2254
+ productId: string;
2255
+ taxRate: {
2256
+ id: string;
2257
+ name: string;
2258
+ createdAt: string;
2259
+ updatedAt: string;
2260
+ storeId: string;
2261
+ rate: string;
2262
+ };
2263
+ } | null;
2264
+ productCollections: {
2265
+ position: string | null;
2266
+ productId: string;
2267
+ collectionId: string;
2268
+ collection: {
2269
+ id: string;
2270
+ name: string;
2271
+ image: string | null;
2272
+ createdAt: string;
2273
+ updatedAt: string;
2274
+ description: JSONContent | null;
2275
+ slug: string;
2276
+ filter: unknown;
2277
+ storeId: string;
2278
+ active: boolean;
2279
+ };
2280
+ }[];
2281
+ };
2282
+ id: string;
2283
+ createdAt: string;
2284
+ updatedAt: string;
2285
+ price: string;
2286
+ images: string[];
2287
+ sku: string | null;
2288
+ calculatedPrice: string | null;
2289
+ stock: number | null;
2290
+ depth: number | null;
2291
+ width: number | null;
2292
+ height: number | null;
2293
+ weight: number | null;
2294
+ digital: string[] | null;
2295
+ shippable: boolean;
2296
+ externalId: string | null;
2297
+ productId: string;
2298
+ attributes: unknown;
2299
+ originalPrice: string;
2300
+ combinations: {
2301
+ createdAt: string;
2302
+ updatedAt: string;
2303
+ productVariantId: string;
2304
+ variantValueId: string;
2305
+ variantValue: {
2306
+ id: string;
2307
+ value: string;
2308
+ variantType: {
2309
+ id: string;
2310
+ label: string;
2311
+ };
2312
+ };
2313
+ }[];
2314
+ } & {
2315
+ price: string;
2316
+ } & {
2317
+ prePromotionPrice: undefined;
2318
+ }) | ({
2319
+ storeId: string | null;
2320
+ product: {
2321
+ bundleProducts: {
2322
+ variant: {
2323
+ storeId: string | null;
2324
+ product: {
2325
+ productTaxRate: {
2326
+ taxRate: {
2327
+ rate: string;
2328
+ };
2329
+ } | null;
2330
+ id: string;
2331
+ name: string;
2332
+ slug: string;
2333
+ images: string[];
2334
+ };
2335
+ id: string;
2336
+ createdAt: string;
2337
+ updatedAt: string;
2338
+ price: string;
2339
+ images: string[];
2340
+ sku: string | null;
2341
+ calculatedPrice: string | null;
2342
+ stock: number | null;
2343
+ depth: number | null;
2344
+ width: number | null;
2345
+ height: number | null;
2346
+ weight: number | null;
2347
+ digital: string[] | null;
2348
+ shippable: boolean;
2349
+ externalId: string | null;
2350
+ productId: string;
2351
+ attributes: unknown;
2352
+ originalPrice: string;
2353
+ };
2354
+ createdAt: string;
2355
+ updatedAt: string;
2356
+ position: number;
2357
+ bundleId: string;
2358
+ quantity: number;
2359
+ variantId: string;
2360
+ }[];
2361
+ id: string;
2362
+ name: string;
2363
+ createdAt: string;
2364
+ updatedAt: string;
2365
+ type: "product" | "bundle";
2366
+ slug: string;
2367
+ flags: unknown;
2368
+ storeId: string;
2369
+ summary: string | null;
2370
+ images: string[];
2371
+ active: boolean | null;
2372
+ badge: unknown;
2373
+ bundleDiscountPercentage: string | null;
2374
+ categoryId: string | null;
2375
+ productTaxRate: {
2376
+ createdAt: string;
2377
+ updatedAt: string;
2378
+ taxRateId: string;
2379
+ productId: string;
2380
+ taxRate: {
2381
+ id: string;
2382
+ name: string;
2383
+ createdAt: string;
2384
+ updatedAt: string;
2385
+ storeId: string;
2386
+ rate: string;
2387
+ };
2388
+ } | null;
2389
+ productCollections: {
2390
+ position: string | null;
2391
+ productId: string;
2392
+ collectionId: string;
2393
+ collection: {
2394
+ id: string;
2395
+ name: string;
2396
+ image: string | null;
2397
+ createdAt: string;
2398
+ updatedAt: string;
2399
+ description: JSONContent | null;
2400
+ slug: string;
2401
+ filter: unknown;
2402
+ storeId: string;
2403
+ active: boolean;
2404
+ };
2405
+ }[];
2406
+ };
2407
+ id: string;
2408
+ createdAt: string;
2409
+ updatedAt: string;
2410
+ price: string;
2411
+ images: string[];
2412
+ sku: string | null;
2413
+ calculatedPrice: string | null;
2414
+ stock: number | null;
2415
+ depth: number | null;
2416
+ width: number | null;
2417
+ height: number | null;
2418
+ weight: number | null;
2419
+ digital: string[] | null;
2420
+ shippable: boolean;
2421
+ externalId: string | null;
2422
+ productId: string;
2423
+ attributes: unknown;
2424
+ originalPrice: string;
2425
+ combinations: {
2426
+ createdAt: string;
2427
+ updatedAt: string;
2428
+ productVariantId: string;
2429
+ variantValueId: string;
2430
+ variantValue: {
2431
+ id: string;
2432
+ value: string;
2433
+ variantType: {
2434
+ id: string;
2435
+ label: string;
2436
+ };
2437
+ };
2438
+ }[];
2439
+ } & {
2440
+ price: string;
2441
+ } & {
2442
+ prePromotionPrice: undefined;
2443
+ }) | ({
2444
+ storeId: string | null;
2445
+ product: {
2446
+ bundleProducts: {
2447
+ variant: {
2448
+ storeId: string | null;
2449
+ product: {
2450
+ productTaxRate: {
2451
+ taxRate: {
2452
+ rate: string;
2453
+ };
2454
+ } | null;
2455
+ id: string;
2456
+ name: string;
2457
+ slug: string;
2458
+ images: string[];
2459
+ };
2460
+ id: string;
2461
+ createdAt: string;
2462
+ updatedAt: string;
2463
+ price: string;
2464
+ images: string[];
2465
+ sku: string | null;
2466
+ calculatedPrice: string | null;
2467
+ stock: number | null;
2468
+ depth: number | null;
2469
+ width: number | null;
2470
+ height: number | null;
2471
+ weight: number | null;
2472
+ digital: string[] | null;
2473
+ shippable: boolean;
2474
+ externalId: string | null;
2475
+ productId: string;
2476
+ attributes: unknown;
2477
+ originalPrice: string;
2478
+ };
2479
+ createdAt: string;
2480
+ updatedAt: string;
2481
+ position: number;
2482
+ bundleId: string;
2483
+ quantity: number;
2484
+ variantId: string;
2485
+ }[];
2486
+ id: string;
2487
+ name: string;
2488
+ createdAt: string;
2489
+ updatedAt: string;
2490
+ type: "product" | "bundle";
2491
+ slug: string;
2492
+ flags: unknown;
2493
+ storeId: string;
2494
+ summary: string | null;
2495
+ images: string[];
2496
+ active: boolean | null;
2497
+ badge: unknown;
2498
+ bundleDiscountPercentage: string | null;
2499
+ categoryId: string | null;
2500
+ productTaxRate: {
2501
+ createdAt: string;
2502
+ updatedAt: string;
2503
+ taxRateId: string;
2504
+ productId: string;
2505
+ taxRate: {
2506
+ id: string;
2507
+ name: string;
2508
+ createdAt: string;
2509
+ updatedAt: string;
2510
+ storeId: string;
2511
+ rate: string;
2512
+ };
2513
+ } | null;
2514
+ productCollections: {
2515
+ position: string | null;
2516
+ productId: string;
2517
+ collectionId: string;
2518
+ collection: {
2519
+ id: string;
2520
+ name: string;
2521
+ image: string | null;
2522
+ createdAt: string;
2523
+ updatedAt: string;
2524
+ description: JSONContent | null;
2525
+ slug: string;
2526
+ filter: unknown;
2527
+ storeId: string;
2528
+ active: boolean;
2529
+ };
2530
+ }[];
2531
+ };
2532
+ id: string;
2533
+ createdAt: string;
2534
+ updatedAt: string;
2535
+ price: string;
2536
+ images: string[];
2537
+ sku: string | null;
2538
+ calculatedPrice: string | null;
2539
+ stock: number | null;
2540
+ depth: number | null;
2541
+ width: number | null;
2542
+ height: number | null;
2543
+ weight: number | null;
2544
+ digital: string[] | null;
2545
+ shippable: boolean;
2546
+ externalId: string | null;
2547
+ productId: string;
2548
+ attributes: unknown;
2549
+ originalPrice: string;
2550
+ combinations: {
2551
+ createdAt: string;
2552
+ updatedAt: string;
2553
+ productVariantId: string;
2554
+ variantValueId: string;
2555
+ variantValue: {
2556
+ id: string;
2557
+ value: string;
2558
+ variantType: {
2559
+ id: string;
2560
+ label: string;
2561
+ };
2562
+ };
2563
+ }[];
2564
+ } & {
2565
+ price: string;
2566
+ } & {
2567
+ prePromotionPrice: undefined;
2568
+ }) | ({
2569
+ storeId: string | null;
2570
+ product: {
2571
+ bundleProducts: {
2572
+ variant: {
2573
+ storeId: string | null;
2574
+ product: {
2575
+ productTaxRate: {
2576
+ taxRate: {
2577
+ rate: string;
2578
+ };
2579
+ } | null;
2580
+ id: string;
2581
+ name: string;
2582
+ slug: string;
2583
+ images: string[];
2584
+ };
2585
+ id: string;
2586
+ createdAt: string;
2587
+ updatedAt: string;
2588
+ price: string;
2589
+ images: string[];
2590
+ sku: string | null;
2591
+ calculatedPrice: string | null;
2592
+ stock: number | null;
2593
+ depth: number | null;
2594
+ width: number | null;
2595
+ height: number | null;
2596
+ weight: number | null;
2597
+ digital: string[] | null;
2598
+ shippable: boolean;
2599
+ externalId: string | null;
2600
+ productId: string;
2601
+ attributes: unknown;
2602
+ originalPrice: string;
2603
+ };
2604
+ createdAt: string;
2605
+ updatedAt: string;
2606
+ position: number;
2607
+ bundleId: string;
2608
+ quantity: number;
2609
+ variantId: string;
2610
+ }[];
2611
+ id: string;
2612
+ name: string;
2613
+ createdAt: string;
2614
+ updatedAt: string;
2615
+ type: "product" | "bundle";
2616
+ slug: string;
2617
+ flags: unknown;
2618
+ storeId: string;
2619
+ summary: string | null;
2620
+ images: string[];
2621
+ active: boolean | null;
2622
+ badge: unknown;
2623
+ bundleDiscountPercentage: string | null;
2624
+ categoryId: string | null;
2625
+ productTaxRate: {
2626
+ createdAt: string;
2627
+ updatedAt: string;
2628
+ taxRateId: string;
2629
+ productId: string;
2630
+ taxRate: {
2631
+ id: string;
2632
+ name: string;
2633
+ createdAt: string;
2634
+ updatedAt: string;
2635
+ storeId: string;
2636
+ rate: string;
2637
+ };
2638
+ } | null;
2639
+ productCollections: {
2640
+ position: string | null;
2641
+ productId: string;
2642
+ collectionId: string;
2643
+ collection: {
2644
+ id: string;
2645
+ name: string;
2646
+ image: string | null;
2647
+ createdAt: string;
2648
+ updatedAt: string;
2649
+ description: JSONContent | null;
2650
+ slug: string;
2651
+ filter: unknown;
2652
+ storeId: string;
2653
+ active: boolean;
2654
+ };
2655
+ }[];
2656
+ };
2657
+ id: string;
2658
+ createdAt: string;
2659
+ updatedAt: string;
2660
+ price: string;
2661
+ images: string[];
2662
+ sku: string | null;
2663
+ calculatedPrice: string | null;
2664
+ stock: number | null;
2665
+ depth: number | null;
2666
+ width: number | null;
2667
+ height: number | null;
2668
+ weight: number | null;
2669
+ digital: string[] | null;
2670
+ shippable: boolean;
2671
+ externalId: string | null;
2672
+ productId: string;
2673
+ attributes: unknown;
2674
+ originalPrice: string;
2675
+ combinations: {
2676
+ createdAt: string;
2677
+ updatedAt: string;
2678
+ productVariantId: string;
2679
+ variantValueId: string;
2680
+ variantValue: {
2681
+ id: string;
2682
+ value: string;
2683
+ variantType: {
2684
+ id: string;
2685
+ label: string;
2686
+ };
2687
+ };
2688
+ }[];
2689
+ } & {
2690
+ price: string;
2691
+ } & {
2692
+ prePromotionPrice: undefined;
2693
+ price: string;
2694
+ }) | ({
2695
+ storeId: string | null;
2696
+ product: {
2697
+ bundleProducts: {
2698
+ variant: {
2699
+ storeId: string | null;
2700
+ product: {
2701
+ productTaxRate: {
2702
+ taxRate: {
2703
+ rate: string;
2704
+ };
2705
+ } | null;
2706
+ id: string;
2707
+ name: string;
2708
+ slug: string;
2709
+ images: string[];
2710
+ };
2711
+ id: string;
2712
+ createdAt: string;
2713
+ updatedAt: string;
2714
+ price: string;
2715
+ images: string[];
2716
+ sku: string | null;
2717
+ calculatedPrice: string | null;
2718
+ stock: number | null;
2719
+ depth: number | null;
2720
+ width: number | null;
2721
+ height: number | null;
2722
+ weight: number | null;
2723
+ digital: string[] | null;
2724
+ shippable: boolean;
2725
+ externalId: string | null;
2726
+ productId: string;
2727
+ attributes: unknown;
2728
+ originalPrice: string;
2729
+ };
2730
+ createdAt: string;
2731
+ updatedAt: string;
2732
+ position: number;
2733
+ bundleId: string;
2734
+ quantity: number;
2735
+ variantId: string;
2736
+ }[];
2737
+ id: string;
2738
+ name: string;
2739
+ createdAt: string;
2740
+ updatedAt: string;
2741
+ type: "product" | "bundle";
2742
+ slug: string;
2743
+ flags: unknown;
2744
+ storeId: string;
2745
+ summary: string | null;
2746
+ images: string[];
2747
+ active: boolean | null;
2748
+ badge: unknown;
2749
+ bundleDiscountPercentage: string | null;
2750
+ categoryId: string | null;
2751
+ productTaxRate: {
2752
+ createdAt: string;
2753
+ updatedAt: string;
2754
+ taxRateId: string;
2755
+ productId: string;
2756
+ taxRate: {
2757
+ id: string;
2758
+ name: string;
2759
+ createdAt: string;
2760
+ updatedAt: string;
2761
+ storeId: string;
2762
+ rate: string;
2763
+ };
2764
+ } | null;
2765
+ productCollections: {
2766
+ position: string | null;
2767
+ productId: string;
2768
+ collectionId: string;
2769
+ collection: {
2770
+ id: string;
2771
+ name: string;
2772
+ image: string | null;
2773
+ createdAt: string;
2774
+ updatedAt: string;
2775
+ description: JSONContent | null;
2776
+ slug: string;
2777
+ filter: unknown;
2778
+ storeId: string;
2779
+ active: boolean;
2780
+ };
2781
+ }[];
2782
+ };
2783
+ id: string;
2784
+ createdAt: string;
2785
+ updatedAt: string;
2786
+ price: string;
2787
+ images: string[];
2788
+ sku: string | null;
2789
+ calculatedPrice: string | null;
2790
+ stock: number | null;
2791
+ depth: number | null;
2792
+ width: number | null;
2793
+ height: number | null;
2794
+ weight: number | null;
2795
+ digital: string[] | null;
2796
+ shippable: boolean;
2797
+ externalId: string | null;
2798
+ productId: string;
2799
+ attributes: unknown;
2800
+ originalPrice: string;
2801
+ combinations: {
2802
+ createdAt: string;
2803
+ updatedAt: string;
2804
+ productVariantId: string;
2805
+ variantValueId: string;
2806
+ variantValue: {
2807
+ id: string;
2808
+ value: string;
2809
+ variantType: {
2810
+ id: string;
2811
+ label: string;
2812
+ };
2813
+ };
2814
+ }[];
2815
+ } & {
2816
+ price: string;
2817
+ } & {
2818
+ prePromotionPrice: string | null;
2819
+ });
2820
+ id: string;
2821
+ createdAt: string;
2822
+ updatedAt: string;
2823
+ cartId: string;
2824
+ quantity: number;
2825
+ productVariantId: string;
2826
+ subscriptionId: string | null;
2827
+ subscription: {
2828
+ id: string;
2829
+ createdAt: string;
2830
+ updatedAt: string;
2831
+ storeId: string;
2832
+ productId: string;
2833
+ interval: number;
2834
+ cadence: "month" | "week";
2835
+ } | null;
2836
+ }[];
2837
+ id: string;
2838
+ createdAt: string;
2839
+ updatedAt: string;
2840
+ storeId: string;
2841
+ addonData: Record<string, unknown> | null | undefined;
2842
+ couponId: string | null;
2843
+ customerId: string | null;
2844
+ stripePaymentIntentId: string | null;
2845
+ checkoutSessionId: string | null;
2846
+ shippingId: string | null;
2847
+ shippingAddressId: string | null;
2848
+ billingAddressId: string | null;
2849
+ shipping: {
2850
+ id: string;
2851
+ name: string;
2852
+ createdAt: string;
2853
+ updatedAt: string;
2854
+ type: "courier" | "parcel" | "pickup_point" | "in_store";
2855
+ description: string | null;
2856
+ storeId: string;
2857
+ price: string;
2858
+ minShippingTime: number | null;
2859
+ maxShippingTime: number | null;
2860
+ position: number | null;
2861
+ addonId: string | null;
2862
+ addonData: unknown;
2863
+ countries: string[] | null;
2864
+ shippingAddon: {
2865
+ id: string;
2866
+ name: string;
2867
+ createdAt: string;
2868
+ updatedAt: string;
2869
+ type: "shipping" | "analytics" | "products" | "invoicing";
2870
+ storeId: string;
2871
+ } | null;
2872
+ shippingTaxRate: {
2873
+ createdAt: string;
2874
+ updatedAt: string;
2875
+ shippingId: string;
2876
+ taxRateId: string;
2877
+ taxRate: {
2878
+ id: string;
2879
+ name: string;
2880
+ createdAt: string;
2881
+ updatedAt: string;
2882
+ storeId: string;
2883
+ rate: string;
2884
+ };
2885
+ } | null;
2886
+ } | null;
2887
+ coupon: {
2888
+ type: "fixed" | "percentage";
2889
+ value: string;
2890
+ code: string;
2891
+ startDate: string | null;
2892
+ endDate: string | null;
2893
+ } | null;
2894
+ billingAddress: {
2895
+ id: string;
2896
+ name: string | null;
2897
+ createdAt: string;
2898
+ updatedAt: string;
2899
+ type: "shipping" | "billing" | "merchant";
2900
+ company: string | null;
2901
+ city: string | null;
2902
+ country: string | null;
2903
+ line1: string | null;
2904
+ line2: string | null;
2905
+ postalCode: string | null;
2906
+ state: string | null;
2907
+ phone: string | null;
2908
+ taxId: string | null;
2909
+ } | null;
2910
+ shippingAddress: {
2911
+ id: string;
2912
+ name: string | null;
2913
+ createdAt: string;
2914
+ updatedAt: string;
2915
+ type: "shipping" | "billing" | "merchant";
2916
+ company: string | null;
2917
+ city: string | null;
2918
+ country: string | null;
2919
+ line1: string | null;
2920
+ line2: string | null;
2921
+ postalCode: string | null;
2922
+ state: string | null;
2923
+ phone: string | null;
2924
+ taxId: string | null;
2925
+ } | null;
2926
+ customer: {
2927
+ id: string;
2928
+ email: string | null;
2929
+ createdAt: string;
2930
+ updatedAt: string;
2931
+ userId: string | null;
2932
+ storeId: string;
2933
+ couponId: string | null;
2934
+ user: {
2935
+ id: string;
2936
+ name: string;
2937
+ email: string;
2938
+ } | null;
2939
+ coupon: {
2940
+ type: "fixed" | "percentage";
2941
+ value: string;
2942
+ code: string;
2943
+ startDate: string | null;
2944
+ endDate: string | null;
2945
+ } | null;
2946
+ } | null;
2947
+ } | null | undefined;
2948
+ type APICartRemoveItemParams = {
2949
+ subscriptionId?: string | undefined;
2950
+ };
2951
+ type APICartRemoveItemResult = {
2952
+ lineItems: {
2953
+ productVariant: ({
2954
+ storeId: string | null;
2955
+ product: {
2956
+ bundleProducts: {
2957
+ variant: {
2958
+ storeId: string | null;
2959
+ product: {
2960
+ productTaxRate: {
2961
+ taxRate: {
2962
+ rate: string;
2963
+ };
2964
+ } | null;
2965
+ id: string;
2966
+ name: string;
2967
+ slug: string;
2968
+ images: string[];
2969
+ };
2970
+ id: string;
2971
+ createdAt: string;
2972
+ updatedAt: string;
2973
+ price: string;
2974
+ images: string[];
2975
+ sku: string | null;
2976
+ calculatedPrice: string | null;
2977
+ stock: number | null;
2978
+ depth: number | null;
2979
+ width: number | null;
2980
+ height: number | null;
2981
+ weight: number | null;
2982
+ digital: string[] | null;
2983
+ shippable: boolean;
2984
+ externalId: string | null;
2985
+ productId: string;
2986
+ attributes: unknown;
2987
+ originalPrice: string;
2988
+ };
2989
+ createdAt: string;
2990
+ updatedAt: string;
2991
+ position: number;
2992
+ bundleId: string;
2993
+ quantity: number;
2994
+ variantId: string;
2995
+ }[];
2996
+ id: string;
2997
+ name: string;
2998
+ createdAt: string;
2999
+ updatedAt: string;
3000
+ type: "product" | "bundle";
3001
+ slug: string;
3002
+ flags: unknown;
3003
+ storeId: string;
3004
+ summary: string | null;
3005
+ images: string[];
3006
+ active: boolean | null;
3007
+ badge: unknown;
3008
+ bundleDiscountPercentage: string | null;
3009
+ categoryId: string | null;
3010
+ productTaxRate: {
3011
+ createdAt: string;
3012
+ updatedAt: string;
3013
+ taxRateId: string;
3014
+ productId: string;
3015
+ taxRate: {
3016
+ id: string;
3017
+ name: string;
3018
+ createdAt: string;
3019
+ updatedAt: string;
3020
+ storeId: string;
3021
+ rate: string;
3022
+ };
3023
+ } | null;
3024
+ productCollections: {
3025
+ position: string | null;
3026
+ productId: string;
3027
+ collectionId: string;
3028
+ collection: {
3029
+ id: string;
3030
+ name: string;
3031
+ image: string | null;
3032
+ createdAt: string;
3033
+ updatedAt: string;
3034
+ description: JSONContent | null;
3035
+ slug: string;
3036
+ filter: unknown;
3037
+ storeId: string;
3038
+ active: boolean;
3039
+ };
3040
+ }[];
3041
+ };
3042
+ id: string;
3043
+ createdAt: string;
3044
+ updatedAt: string;
3045
+ price: string;
3046
+ images: string[];
3047
+ sku: string | null;
3048
+ calculatedPrice: string | null;
3049
+ stock: number | null;
3050
+ depth: number | null;
3051
+ width: number | null;
3052
+ height: number | null;
3053
+ weight: number | null;
3054
+ digital: string[] | null;
3055
+ shippable: boolean;
3056
+ externalId: string | null;
3057
+ productId: string;
3058
+ attributes: unknown;
3059
+ originalPrice: string;
3060
+ combinations: {
3061
+ createdAt: string;
3062
+ updatedAt: string;
3063
+ productVariantId: string;
3064
+ variantValueId: string;
3065
+ variantValue: {
3066
+ id: string;
3067
+ value: string;
3068
+ variantType: {
3069
+ id: string;
3070
+ label: string;
3071
+ };
3072
+ };
3073
+ }[];
3074
+ } & {
3075
+ price: string;
3076
+ } & {
3077
+ prePromotionPrice: undefined;
3078
+ }) | ({
3079
+ storeId: string | null;
3080
+ product: {
3081
+ bundleProducts: {
3082
+ variant: {
3083
+ storeId: string | null;
3084
+ product: {
3085
+ productTaxRate: {
3086
+ taxRate: {
3087
+ rate: string;
3088
+ };
3089
+ } | null;
3090
+ id: string;
3091
+ name: string;
3092
+ slug: string;
3093
+ images: string[];
3094
+ };
3095
+ id: string;
3096
+ createdAt: string;
3097
+ updatedAt: string;
3098
+ price: string;
3099
+ images: string[];
3100
+ sku: string | null;
3101
+ calculatedPrice: string | null;
3102
+ stock: number | null;
3103
+ depth: number | null;
3104
+ width: number | null;
3105
+ height: number | null;
3106
+ weight: number | null;
3107
+ digital: string[] | null;
3108
+ shippable: boolean;
3109
+ externalId: string | null;
3110
+ productId: string;
3111
+ attributes: unknown;
3112
+ originalPrice: string;
3113
+ };
3114
+ createdAt: string;
3115
+ updatedAt: string;
3116
+ position: number;
3117
+ bundleId: string;
3118
+ quantity: number;
3119
+ variantId: string;
3120
+ }[];
3121
+ id: string;
3122
+ name: string;
3123
+ createdAt: string;
3124
+ updatedAt: string;
3125
+ type: "product" | "bundle";
3126
+ slug: string;
3127
+ flags: unknown;
3128
+ storeId: string;
3129
+ summary: string | null;
3130
+ images: string[];
3131
+ active: boolean | null;
3132
+ badge: unknown;
3133
+ bundleDiscountPercentage: string | null;
3134
+ categoryId: string | null;
3135
+ productTaxRate: {
3136
+ createdAt: string;
3137
+ updatedAt: string;
3138
+ taxRateId: string;
3139
+ productId: string;
3140
+ taxRate: {
3141
+ id: string;
3142
+ name: string;
3143
+ createdAt: string;
3144
+ updatedAt: string;
3145
+ storeId: string;
3146
+ rate: string;
3147
+ };
3148
+ } | null;
3149
+ productCollections: {
3150
+ position: string | null;
3151
+ productId: string;
3152
+ collectionId: string;
3153
+ collection: {
3154
+ id: string;
3155
+ name: string;
3156
+ image: string | null;
3157
+ createdAt: string;
3158
+ updatedAt: string;
3159
+ description: JSONContent | null;
3160
+ slug: string;
3161
+ filter: unknown;
3162
+ storeId: string;
3163
+ active: boolean;
3164
+ };
3165
+ }[];
3166
+ };
3167
+ id: string;
3168
+ createdAt: string;
3169
+ updatedAt: string;
3170
+ price: string;
3171
+ images: string[];
3172
+ sku: string | null;
3173
+ calculatedPrice: string | null;
3174
+ stock: number | null;
3175
+ depth: number | null;
3176
+ width: number | null;
3177
+ height: number | null;
3178
+ weight: number | null;
3179
+ digital: string[] | null;
3180
+ shippable: boolean;
3181
+ externalId: string | null;
3182
+ productId: string;
3183
+ attributes: unknown;
3184
+ originalPrice: string;
3185
+ combinations: {
3186
+ createdAt: string;
3187
+ updatedAt: string;
3188
+ productVariantId: string;
3189
+ variantValueId: string;
3190
+ variantValue: {
3191
+ id: string;
3192
+ value: string;
3193
+ variantType: {
3194
+ id: string;
3195
+ label: string;
3196
+ };
3197
+ };
3198
+ }[];
3199
+ } & {
3200
+ price: string;
3201
+ } & {
3202
+ prePromotionPrice: undefined;
3203
+ }) | ({
3204
+ storeId: string | null;
3205
+ product: {
3206
+ bundleProducts: {
3207
+ variant: {
3208
+ storeId: string | null;
3209
+ product: {
3210
+ productTaxRate: {
3211
+ taxRate: {
3212
+ rate: string;
3213
+ };
3214
+ } | null;
3215
+ id: string;
3216
+ name: string;
3217
+ slug: string;
3218
+ images: string[];
3219
+ };
3220
+ id: string;
3221
+ createdAt: string;
3222
+ updatedAt: string;
3223
+ price: string;
3224
+ images: string[];
3225
+ sku: string | null;
3226
+ calculatedPrice: string | null;
3227
+ stock: number | null;
3228
+ depth: number | null;
3229
+ width: number | null;
3230
+ height: number | null;
3231
+ weight: number | null;
3232
+ digital: string[] | null;
3233
+ shippable: boolean;
3234
+ externalId: string | null;
3235
+ productId: string;
3236
+ attributes: unknown;
3237
+ originalPrice: string;
3238
+ };
3239
+ createdAt: string;
3240
+ updatedAt: string;
3241
+ position: number;
3242
+ bundleId: string;
3243
+ quantity: number;
3244
+ variantId: string;
3245
+ }[];
3246
+ id: string;
3247
+ name: string;
3248
+ createdAt: string;
3249
+ updatedAt: string;
3250
+ type: "product" | "bundle";
3251
+ slug: string;
3252
+ flags: unknown;
3253
+ storeId: string;
3254
+ summary: string | null;
3255
+ images: string[];
3256
+ active: boolean | null;
3257
+ badge: unknown;
3258
+ bundleDiscountPercentage: string | null;
3259
+ categoryId: string | null;
3260
+ productTaxRate: {
3261
+ createdAt: string;
3262
+ updatedAt: string;
3263
+ taxRateId: string;
3264
+ productId: string;
3265
+ taxRate: {
3266
+ id: string;
3267
+ name: string;
3268
+ createdAt: string;
3269
+ updatedAt: string;
3270
+ storeId: string;
3271
+ rate: string;
3272
+ };
3273
+ } | null;
3274
+ productCollections: {
3275
+ position: string | null;
3276
+ productId: string;
3277
+ collectionId: string;
3278
+ collection: {
3279
+ id: string;
3280
+ name: string;
3281
+ image: string | null;
3282
+ createdAt: string;
3283
+ updatedAt: string;
3284
+ description: JSONContent | null;
3285
+ slug: string;
3286
+ filter: unknown;
3287
+ storeId: string;
3288
+ active: boolean;
3289
+ };
3290
+ }[];
3291
+ };
3292
+ id: string;
3293
+ createdAt: string;
3294
+ updatedAt: string;
3295
+ price: string;
3296
+ images: string[];
3297
+ sku: string | null;
3298
+ calculatedPrice: string | null;
3299
+ stock: number | null;
3300
+ depth: number | null;
3301
+ width: number | null;
3302
+ height: number | null;
3303
+ weight: number | null;
3304
+ digital: string[] | null;
3305
+ shippable: boolean;
3306
+ externalId: string | null;
3307
+ productId: string;
3308
+ attributes: unknown;
3309
+ originalPrice: string;
3310
+ combinations: {
3311
+ createdAt: string;
3312
+ updatedAt: string;
3313
+ productVariantId: string;
3314
+ variantValueId: string;
3315
+ variantValue: {
3316
+ id: string;
3317
+ value: string;
3318
+ variantType: {
3319
+ id: string;
3320
+ label: string;
3321
+ };
3322
+ };
3323
+ }[];
3324
+ } & {
3325
+ price: string;
3326
+ } & {
3327
+ prePromotionPrice: undefined;
3328
+ }) | ({
3329
+ storeId: string | null;
3330
+ product: {
3331
+ bundleProducts: {
3332
+ variant: {
3333
+ storeId: string | null;
3334
+ product: {
3335
+ productTaxRate: {
3336
+ taxRate: {
3337
+ rate: string;
3338
+ };
3339
+ } | null;
3340
+ id: string;
3341
+ name: string;
3342
+ slug: string;
3343
+ images: string[];
3344
+ };
3345
+ id: string;
3346
+ createdAt: string;
3347
+ updatedAt: string;
3348
+ price: string;
3349
+ images: string[];
3350
+ sku: string | null;
3351
+ calculatedPrice: string | null;
3352
+ stock: number | null;
3353
+ depth: number | null;
3354
+ width: number | null;
3355
+ height: number | null;
3356
+ weight: number | null;
3357
+ digital: string[] | null;
3358
+ shippable: boolean;
3359
+ externalId: string | null;
3360
+ productId: string;
3361
+ attributes: unknown;
3362
+ originalPrice: string;
3363
+ };
3364
+ createdAt: string;
3365
+ updatedAt: string;
3366
+ position: number;
3367
+ bundleId: string;
3368
+ quantity: number;
3369
+ variantId: string;
3370
+ }[];
3371
+ id: string;
3372
+ name: string;
3373
+ createdAt: string;
3374
+ updatedAt: string;
3375
+ type: "product" | "bundle";
3376
+ slug: string;
3377
+ flags: unknown;
3378
+ storeId: string;
3379
+ summary: string | null;
3380
+ images: string[];
3381
+ active: boolean | null;
3382
+ badge: unknown;
3383
+ bundleDiscountPercentage: string | null;
3384
+ categoryId: string | null;
3385
+ productTaxRate: {
3386
+ createdAt: string;
3387
+ updatedAt: string;
3388
+ taxRateId: string;
3389
+ productId: string;
3390
+ taxRate: {
3391
+ id: string;
3392
+ name: string;
3393
+ createdAt: string;
3394
+ updatedAt: string;
3395
+ storeId: string;
3396
+ rate: string;
3397
+ };
3398
+ } | null;
3399
+ productCollections: {
3400
+ position: string | null;
3401
+ productId: string;
3402
+ collectionId: string;
3403
+ collection: {
3404
+ id: string;
3405
+ name: string;
3406
+ image: string | null;
3407
+ createdAt: string;
3408
+ updatedAt: string;
3409
+ description: JSONContent | null;
3410
+ slug: string;
3411
+ filter: unknown;
3412
+ storeId: string;
3413
+ active: boolean;
3414
+ };
3415
+ }[];
3416
+ };
3417
+ id: string;
3418
+ createdAt: string;
3419
+ updatedAt: string;
3420
+ price: string;
3421
+ images: string[];
3422
+ sku: string | null;
3423
+ calculatedPrice: string | null;
3424
+ stock: number | null;
3425
+ depth: number | null;
3426
+ width: number | null;
3427
+ height: number | null;
3428
+ weight: number | null;
3429
+ digital: string[] | null;
3430
+ shippable: boolean;
3431
+ externalId: string | null;
3432
+ productId: string;
3433
+ attributes: unknown;
3434
+ originalPrice: string;
3435
+ combinations: {
3436
+ createdAt: string;
3437
+ updatedAt: string;
3438
+ productVariantId: string;
3439
+ variantValueId: string;
3440
+ variantValue: {
3441
+ id: string;
3442
+ value: string;
3443
+ variantType: {
3444
+ id: string;
3445
+ label: string;
3446
+ };
3447
+ };
3448
+ }[];
3449
+ } & {
3450
+ price: string;
3451
+ } & {
3452
+ prePromotionPrice: undefined;
3453
+ price: string;
3454
+ }) | ({
3455
+ storeId: string | null;
3456
+ product: {
3457
+ bundleProducts: {
3458
+ variant: {
3459
+ storeId: string | null;
3460
+ product: {
3461
+ productTaxRate: {
3462
+ taxRate: {
3463
+ rate: string;
3464
+ };
3465
+ } | null;
3466
+ id: string;
3467
+ name: string;
3468
+ slug: string;
3469
+ images: string[];
3470
+ };
3471
+ id: string;
3472
+ createdAt: string;
3473
+ updatedAt: string;
3474
+ price: string;
3475
+ images: string[];
3476
+ sku: string | null;
3477
+ calculatedPrice: string | null;
3478
+ stock: number | null;
3479
+ depth: number | null;
3480
+ width: number | null;
3481
+ height: number | null;
3482
+ weight: number | null;
3483
+ digital: string[] | null;
3484
+ shippable: boolean;
3485
+ externalId: string | null;
3486
+ productId: string;
3487
+ attributes: unknown;
3488
+ originalPrice: string;
3489
+ };
3490
+ createdAt: string;
3491
+ updatedAt: string;
3492
+ position: number;
3493
+ bundleId: string;
3494
+ quantity: number;
3495
+ variantId: string;
3496
+ }[];
3497
+ id: string;
3498
+ name: string;
3499
+ createdAt: string;
3500
+ updatedAt: string;
3501
+ type: "product" | "bundle";
3502
+ slug: string;
3503
+ flags: unknown;
3504
+ storeId: string;
3505
+ summary: string | null;
3506
+ images: string[];
3507
+ active: boolean | null;
3508
+ badge: unknown;
3509
+ bundleDiscountPercentage: string | null;
3510
+ categoryId: string | null;
3511
+ productTaxRate: {
3512
+ createdAt: string;
3513
+ updatedAt: string;
3514
+ taxRateId: string;
3515
+ productId: string;
3516
+ taxRate: {
3517
+ id: string;
3518
+ name: string;
3519
+ createdAt: string;
3520
+ updatedAt: string;
3521
+ storeId: string;
3522
+ rate: string;
3523
+ };
3524
+ } | null;
3525
+ productCollections: {
3526
+ position: string | null;
3527
+ productId: string;
3528
+ collectionId: string;
3529
+ collection: {
3530
+ id: string;
3531
+ name: string;
3532
+ image: string | null;
3533
+ createdAt: string;
3534
+ updatedAt: string;
3535
+ description: JSONContent | null;
3536
+ slug: string;
3537
+ filter: unknown;
3538
+ storeId: string;
3539
+ active: boolean;
3540
+ };
3541
+ }[];
3542
+ };
3543
+ id: string;
3544
+ createdAt: string;
3545
+ updatedAt: string;
3546
+ price: string;
3547
+ images: string[];
3548
+ sku: string | null;
3549
+ calculatedPrice: string | null;
3550
+ stock: number | null;
3551
+ depth: number | null;
3552
+ width: number | null;
3553
+ height: number | null;
3554
+ weight: number | null;
3555
+ digital: string[] | null;
3556
+ shippable: boolean;
3557
+ externalId: string | null;
3558
+ productId: string;
3559
+ attributes: unknown;
3560
+ originalPrice: string;
3561
+ combinations: {
3562
+ createdAt: string;
3563
+ updatedAt: string;
3564
+ productVariantId: string;
3565
+ variantValueId: string;
3566
+ variantValue: {
3567
+ id: string;
3568
+ value: string;
3569
+ variantType: {
3570
+ id: string;
3571
+ label: string;
3572
+ };
3573
+ };
3574
+ }[];
3575
+ } & {
3576
+ price: string;
3577
+ } & {
3578
+ prePromotionPrice: string | null;
3579
+ });
3580
+ id: string;
3581
+ createdAt: string;
3582
+ updatedAt: string;
3583
+ cartId: string;
3584
+ quantity: number;
3585
+ productVariantId: string;
3586
+ subscriptionId: string | null;
3587
+ subscription: {
3588
+ id: string;
3589
+ createdAt: string;
3590
+ updatedAt: string;
3591
+ storeId: string;
3592
+ productId: string;
3593
+ interval: number;
3594
+ cadence: "month" | "week";
3595
+ } | null;
3596
+ }[];
3597
+ id: string;
3598
+ createdAt: string;
3599
+ updatedAt: string;
3600
+ storeId: string;
3601
+ addonData: Record<string, unknown> | null | undefined;
3602
+ couponId: string | null;
3603
+ customerId: string | null;
3604
+ stripePaymentIntentId: string | null;
3605
+ checkoutSessionId: string | null;
3606
+ shippingId: string | null;
3607
+ shippingAddressId: string | null;
3608
+ billingAddressId: string | null;
3609
+ shipping: {
3610
+ id: string;
3611
+ name: string;
3612
+ createdAt: string;
3613
+ updatedAt: string;
3614
+ type: "courier" | "parcel" | "pickup_point" | "in_store";
3615
+ description: string | null;
3616
+ storeId: string;
3617
+ price: string;
3618
+ minShippingTime: number | null;
3619
+ maxShippingTime: number | null;
3620
+ position: number | null;
3621
+ addonId: string | null;
3622
+ addonData: unknown;
3623
+ countries: string[] | null;
3624
+ shippingAddon: {
3625
+ id: string;
3626
+ name: string;
3627
+ createdAt: string;
3628
+ updatedAt: string;
3629
+ type: "shipping" | "analytics" | "products" | "invoicing";
3630
+ storeId: string;
3631
+ } | null;
3632
+ shippingTaxRate: {
3633
+ createdAt: string;
3634
+ updatedAt: string;
3635
+ shippingId: string;
3636
+ taxRateId: string;
3637
+ taxRate: {
3638
+ id: string;
3639
+ name: string;
3640
+ createdAt: string;
3641
+ updatedAt: string;
3642
+ storeId: string;
3643
+ rate: string;
3644
+ };
3645
+ } | null;
3646
+ } | null;
3647
+ coupon: {
3648
+ type: "fixed" | "percentage";
3649
+ value: string;
3650
+ code: string;
3651
+ startDate: string | null;
3652
+ endDate: string | null;
3653
+ } | null;
3654
+ billingAddress: {
3655
+ id: string;
3656
+ name: string | null;
3657
+ createdAt: string;
3658
+ updatedAt: string;
3659
+ type: "shipping" | "billing" | "merchant";
3660
+ company: string | null;
3661
+ city: string | null;
3662
+ country: string | null;
3663
+ line1: string | null;
3664
+ line2: string | null;
3665
+ postalCode: string | null;
3666
+ state: string | null;
3667
+ phone: string | null;
3668
+ taxId: string | null;
3669
+ } | null;
3670
+ shippingAddress: {
3671
+ id: string;
3672
+ name: string | null;
3673
+ createdAt: string;
3674
+ updatedAt: string;
3675
+ type: "shipping" | "billing" | "merchant";
3676
+ company: string | null;
3677
+ city: string | null;
3678
+ country: string | null;
3679
+ line1: string | null;
3680
+ line2: string | null;
3681
+ postalCode: string | null;
3682
+ state: string | null;
3683
+ phone: string | null;
3684
+ taxId: string | null;
3685
+ } | null;
3686
+ customer: {
3687
+ id: string;
3688
+ email: string | null;
3689
+ createdAt: string;
3690
+ updatedAt: string;
3691
+ userId: string | null;
3692
+ storeId: string;
3693
+ couponId: string | null;
3694
+ user: {
3695
+ id: string;
3696
+ name: string;
3697
+ email: string;
3698
+ } | null;
3699
+ coupon: {
3700
+ type: "fixed" | "percentage";
3701
+ value: string;
3702
+ code: string;
3703
+ startDate: string | null;
3704
+ endDate: string | null;
3705
+ } | null;
3706
+ } | null;
3707
+ } | null | undefined;
3708
+
3709
+ export type { APICartAddBody, APICartAddResult, APICartCreateBody, APICartCreateResult, APICartGetResult, APICartRemoveItemParams, APICartRemoveItemResult, APIProductGetByIdParams, APIProductGetByIdResult, APIProductsBrowseParams, APIProductsBrowseResult, JSONContent };