@instockng/api-client 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/dist/backend-types.d.ts +10 -0
  2. package/dist/backend-types.js +10 -0
  3. package/dist/client.d.ts +20 -0
  4. package/dist/client.js +40 -0
  5. package/dist/fetchers/brands.d.ts +25 -0
  6. package/dist/fetchers/brands.js +26 -0
  7. package/dist/fetchers/carts.d.ts +2339 -0
  8. package/dist/fetchers/carts.js +167 -0
  9. package/dist/fetchers/delivery-zones.d.ts +28 -0
  10. package/{src/fetchers/delivery-zones.ts → dist/fetchers/delivery-zones.js} +9 -12
  11. package/{src/fetchers/index.ts → dist/fetchers/index.d.ts} +1 -1
  12. package/dist/fetchers/index.js +22 -0
  13. package/dist/fetchers/orders.d.ts +283 -0
  14. package/dist/fetchers/orders.js +44 -0
  15. package/dist/fetchers/products.d.ts +386 -0
  16. package/dist/fetchers/products.js +42 -0
  17. package/dist/hooks/admin/abandoned-carts.d.ts +535 -0
  18. package/dist/hooks/admin/abandoned-carts.js +79 -0
  19. package/dist/hooks/admin/brands.d.ts +79 -0
  20. package/dist/hooks/admin/brands.js +103 -0
  21. package/dist/hooks/admin/customers.d.ts +278 -0
  22. package/dist/hooks/admin/customers.js +25 -0
  23. package/dist/hooks/admin/delivery-zones.d.ts +270 -0
  24. package/dist/hooks/admin/delivery-zones.js +168 -0
  25. package/dist/hooks/admin/discount-codes.d.ts +299 -0
  26. package/dist/hooks/admin/discount-codes.js +157 -0
  27. package/{src/hooks/admin/index.ts → dist/hooks/admin/index.d.ts} +0 -1
  28. package/dist/hooks/admin/index.js +16 -0
  29. package/dist/hooks/admin/inventory.d.ts +224 -0
  30. package/dist/hooks/admin/inventory.js +102 -0
  31. package/dist/hooks/admin/orders.d.ts +1380 -0
  32. package/dist/hooks/admin/orders.js +169 -0
  33. package/dist/hooks/admin/products.d.ts +374 -0
  34. package/dist/hooks/admin/products.js +84 -0
  35. package/dist/hooks/admin/stats.d.ts +277 -0
  36. package/dist/hooks/admin/stats.js +24 -0
  37. package/dist/hooks/admin/variants.d.ts +115 -0
  38. package/dist/hooks/admin/variants.js +121 -0
  39. package/dist/hooks/admin/warehouses.d.ts +277 -0
  40. package/dist/hooks/admin/warehouses.js +103 -0
  41. package/dist/hooks/public/brands.d.ts +33 -0
  42. package/dist/hooks/public/brands.js +30 -0
  43. package/dist/hooks/public/carts.d.ts +2407 -0
  44. package/dist/hooks/public/carts.js +213 -0
  45. package/dist/hooks/public/delivery-zones.d.ts +34 -0
  46. package/{src/hooks/public/delivery-zones.ts → dist/hooks/public/delivery-zones.js} +6 -12
  47. package/{src/hooks/public/index.ts → dist/hooks/public/index.d.ts} +1 -1
  48. package/dist/hooks/public/index.js +10 -0
  49. package/dist/hooks/public/orders.d.ts +302 -0
  50. package/{src/hooks/public/orders.ts → dist/hooks/public/orders.js} +12 -28
  51. package/dist/hooks/public/products.d.ts +398 -0
  52. package/{src/hooks/public/products.ts → dist/hooks/public/products.js} +12 -22
  53. package/dist/hooks/use-query-unwrapped.d.ts +20 -0
  54. package/dist/hooks/use-query-unwrapped.js +22 -0
  55. package/dist/hooks/useApiConfig.d.ts +11 -0
  56. package/dist/hooks/useApiConfig.js +14 -0
  57. package/dist/index.d.ts +20 -0
  58. package/{src/index.ts → dist/index.js} +0 -17
  59. package/dist/provider.d.ts +33 -0
  60. package/dist/provider.js +52 -0
  61. package/dist/rpc-client.d.ts +9043 -0
  62. package/dist/rpc-client.js +78 -0
  63. package/{src/rpc-types.ts → dist/rpc-types.d.ts} +35 -80
  64. package/dist/rpc-types.js +7 -0
  65. package/{src/types.ts → dist/types.d.ts} +0 -6
  66. package/dist/types.js +16 -0
  67. package/dist/utils/query-keys.d.ts +106 -0
  68. package/dist/utils/query-keys.js +108 -0
  69. package/package.json +24 -13
  70. package/src/client.ts +0 -57
  71. package/src/fetchers/carts.ts +0 -202
  72. package/src/fetchers/orders.ts +0 -48
  73. package/src/fetchers/products.ts +0 -46
  74. package/src/hooks/admin/abandoned-carts.ts +0 -102
  75. package/src/hooks/admin/brands.ts +0 -134
  76. package/src/hooks/admin/customers.ts +0 -31
  77. package/src/hooks/admin/delivery-zones.ts +0 -236
  78. package/src/hooks/admin/discount-codes.ts +0 -222
  79. package/src/hooks/admin/inventory.ts +0 -137
  80. package/src/hooks/admin/orders.ts +0 -229
  81. package/src/hooks/admin/products.ts +0 -116
  82. package/src/hooks/admin/stats.ts +0 -30
  83. package/src/hooks/admin/variants.ts +0 -173
  84. package/src/hooks/admin/warehouses.ts +0 -143
  85. package/src/hooks/public/carts.ts +0 -298
  86. package/src/hooks/use-query-unwrapped.ts +0 -30
  87. package/src/hooks/useApiConfig.ts +0 -22
  88. package/src/provider.tsx +0 -89
  89. package/src/rpc-client.ts +0 -106
  90. package/src/utils/query-keys.ts +0 -121
@@ -0,0 +1,2339 @@
1
+ /**
2
+ * Cart fetcher functions
3
+ *
4
+ * These are the actual data-fetching functions used by hooks.
5
+ * They can also be imported directly in Server Components.
6
+ *
7
+ * API URL is hardcoded to https://oms-api.instock.ng
8
+ */
9
+ /**
10
+ * Fetch a cart by ID
11
+ *
12
+ * @param cartId - Cart UUID
13
+ * @returns Cart with items, brand, and delivery zone
14
+ */
15
+ export declare function fetchCart(cartId: string): Promise<{
16
+ id: string;
17
+ brand: {
18
+ createdAt: string;
19
+ updatedAt: string;
20
+ deletedAt: string;
21
+ name: string;
22
+ id: string;
23
+ slug: string;
24
+ logoUrl: string | null;
25
+ siteUrl: string;
26
+ domain: string;
27
+ metaPixelId: string | null;
28
+ };
29
+ customerPhone: string;
30
+ customerEmail: string;
31
+ customerFirstName: string;
32
+ customerLastName: string;
33
+ availablePaymentMethods: import("@prisma/client").$Enums.PaymentMethod[];
34
+ deliveryZone: {
35
+ id: string;
36
+ name: string;
37
+ };
38
+ recoveryAttempts: number;
39
+ lastRecoveryAttemptAt: string;
40
+ recoveryDiscountCode: {
41
+ id: string;
42
+ createdAt: string;
43
+ updatedAt: string;
44
+ deletedAt: string;
45
+ brandId: string | null;
46
+ isActive: boolean;
47
+ code: string;
48
+ type: string;
49
+ value: string;
50
+ minPurchase: string;
51
+ maxDiscount: string;
52
+ usageLimit: number | null;
53
+ usageCount: number;
54
+ perCustomerLimit: number | null;
55
+ validFrom: string;
56
+ validUntil: string;
57
+ isAutoApply: boolean;
58
+ description: string | null;
59
+ category: string;
60
+ createdBy: string | null;
61
+ };
62
+ items: {
63
+ id: string;
64
+ variant: {
65
+ price: number;
66
+ product: {
67
+ name: string;
68
+ id: string;
69
+ slug: string;
70
+ createdAt: string;
71
+ updatedAt: string;
72
+ deletedAt: string;
73
+ brandId: string;
74
+ isActive: boolean;
75
+ description: string | null;
76
+ thumbnailUrl: string | null;
77
+ quantityDiscounts: string | number | boolean | {
78
+ [x: string]: string | number | boolean | /*elided*/ any | {
79
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
80
+ length: number;
81
+ toString: never;
82
+ toLocaleString: never;
83
+ pop: never;
84
+ push: never;
85
+ concat: never;
86
+ join: never;
87
+ reverse: never;
88
+ shift: never;
89
+ slice: never;
90
+ sort: never;
91
+ splice: never;
92
+ unshift: never;
93
+ indexOf: never;
94
+ lastIndexOf: never;
95
+ every: never;
96
+ some: never;
97
+ forEach: never;
98
+ map: never;
99
+ filter: never;
100
+ reduce: never;
101
+ reduceRight: never;
102
+ find: never;
103
+ findIndex: never;
104
+ fill: never;
105
+ copyWithin: never;
106
+ entries: never;
107
+ keys: never;
108
+ values: never;
109
+ includes: never;
110
+ flatMap: never;
111
+ flat: never;
112
+ [Symbol.iterator]: never;
113
+ readonly [Symbol.unscopables]: {
114
+ [x: number]: boolean;
115
+ length?: boolean;
116
+ toString?: boolean;
117
+ toLocaleString?: boolean;
118
+ pop?: boolean;
119
+ push?: boolean;
120
+ concat?: boolean;
121
+ join?: boolean;
122
+ reverse?: boolean;
123
+ shift?: boolean;
124
+ slice?: boolean;
125
+ sort?: boolean;
126
+ splice?: boolean;
127
+ unshift?: boolean;
128
+ indexOf?: boolean;
129
+ lastIndexOf?: boolean;
130
+ every?: boolean;
131
+ some?: boolean;
132
+ forEach?: boolean;
133
+ map?: boolean;
134
+ filter?: boolean;
135
+ reduce?: boolean;
136
+ reduceRight?: boolean;
137
+ find?: boolean;
138
+ findIndex?: boolean;
139
+ fill?: boolean;
140
+ copyWithin?: boolean;
141
+ entries?: boolean;
142
+ keys?: boolean;
143
+ values?: boolean;
144
+ includes?: boolean;
145
+ flatMap?: boolean;
146
+ flat?: boolean;
147
+ };
148
+ };
149
+ } | {
150
+ [x: number]: string | number | boolean | {
151
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
152
+ } | /*elided*/ any;
153
+ length: number;
154
+ toString: never;
155
+ toLocaleString: never;
156
+ pop: never;
157
+ push: never;
158
+ concat: never;
159
+ join: never;
160
+ reverse: never;
161
+ shift: never;
162
+ slice: never;
163
+ sort: never;
164
+ splice: never;
165
+ unshift: never;
166
+ indexOf: never;
167
+ lastIndexOf: never;
168
+ every: never;
169
+ some: never;
170
+ forEach: never;
171
+ map: never;
172
+ filter: never;
173
+ reduce: never;
174
+ reduceRight: never;
175
+ find: never;
176
+ findIndex: never;
177
+ fill: never;
178
+ copyWithin: never;
179
+ entries: never;
180
+ keys: never;
181
+ values: never;
182
+ includes: never;
183
+ flatMap: never;
184
+ flat: never;
185
+ [Symbol.iterator]: never;
186
+ readonly [Symbol.unscopables]: {
187
+ [x: number]: boolean;
188
+ length?: boolean;
189
+ toString?: boolean;
190
+ toLocaleString?: boolean;
191
+ pop?: boolean;
192
+ push?: boolean;
193
+ concat?: boolean;
194
+ join?: boolean;
195
+ reverse?: boolean;
196
+ shift?: boolean;
197
+ slice?: boolean;
198
+ sort?: boolean;
199
+ splice?: boolean;
200
+ unshift?: boolean;
201
+ indexOf?: boolean;
202
+ lastIndexOf?: boolean;
203
+ every?: boolean;
204
+ some?: boolean;
205
+ forEach?: boolean;
206
+ map?: boolean;
207
+ filter?: boolean;
208
+ reduce?: boolean;
209
+ reduceRight?: boolean;
210
+ find?: boolean;
211
+ findIndex?: boolean;
212
+ fill?: boolean;
213
+ copyWithin?: boolean;
214
+ entries?: boolean;
215
+ keys?: boolean;
216
+ values?: boolean;
217
+ includes?: boolean;
218
+ flatMap?: boolean;
219
+ flat?: boolean;
220
+ };
221
+ };
222
+ };
223
+ name: string | null;
224
+ id: string;
225
+ createdAt: string;
226
+ updatedAt: string;
227
+ deletedAt: string;
228
+ isActive: boolean;
229
+ thumbnailUrl: string | null;
230
+ productId: string;
231
+ sku: string;
232
+ trackInventory: boolean;
233
+ lowStockThreshold: number | null;
234
+ };
235
+ quantity: number;
236
+ basePrice: number;
237
+ discountPercent: number;
238
+ finalPrice: number;
239
+ subtotal: number;
240
+ }[];
241
+ pricing: {
242
+ subtotal: number;
243
+ deliveryCharge: number;
244
+ discount: {
245
+ code: string;
246
+ type: "percentage" | "fixed";
247
+ value: number;
248
+ amount: number;
249
+ description: string | null;
250
+ };
251
+ total: number;
252
+ };
253
+ createdAt: string;
254
+ updatedAt: string;
255
+ expiresAt: string;
256
+ convertedToOrderId: string;
257
+ wasRecovered: boolean;
258
+ recoveryUrl: string;
259
+ } | {
260
+ error: {
261
+ code: string;
262
+ message: string;
263
+ };
264
+ }>;
265
+ /**
266
+ * Create a new cart
267
+ *
268
+ * @param brandSlug - Brand slug
269
+ * @returns Newly created cart
270
+ */
271
+ export declare function createCart(brandSlug: string): Promise<{
272
+ id: string;
273
+ brand: {
274
+ createdAt: string;
275
+ updatedAt: string;
276
+ deletedAt: string;
277
+ name: string;
278
+ id: string;
279
+ slug: string;
280
+ logoUrl: string | null;
281
+ siteUrl: string;
282
+ domain: string;
283
+ metaPixelId: string | null;
284
+ };
285
+ customerPhone: string;
286
+ customerEmail: string;
287
+ customerFirstName: string;
288
+ customerLastName: string;
289
+ availablePaymentMethods: import("@prisma/client").$Enums.PaymentMethod[];
290
+ deliveryZone: {
291
+ id: string;
292
+ name: string;
293
+ };
294
+ recoveryAttempts: number;
295
+ lastRecoveryAttemptAt: string;
296
+ recoveryDiscountCode: {
297
+ id: string;
298
+ createdAt: string;
299
+ updatedAt: string;
300
+ deletedAt: string;
301
+ brandId: string | null;
302
+ isActive: boolean;
303
+ code: string;
304
+ type: string;
305
+ value: string;
306
+ minPurchase: string;
307
+ maxDiscount: string;
308
+ usageLimit: number | null;
309
+ usageCount: number;
310
+ perCustomerLimit: number | null;
311
+ validFrom: string;
312
+ validUntil: string;
313
+ isAutoApply: boolean;
314
+ description: string | null;
315
+ category: string;
316
+ createdBy: string | null;
317
+ };
318
+ items: {
319
+ id: string;
320
+ variant: {
321
+ price: number;
322
+ product: {
323
+ name: string;
324
+ id: string;
325
+ slug: string;
326
+ createdAt: string;
327
+ updatedAt: string;
328
+ deletedAt: string;
329
+ brandId: string;
330
+ isActive: boolean;
331
+ description: string | null;
332
+ thumbnailUrl: string | null;
333
+ quantityDiscounts: string | number | boolean | {
334
+ [x: string]: string | number | boolean | /*elided*/ any | {
335
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
336
+ length: number;
337
+ toString: never;
338
+ toLocaleString: never;
339
+ pop: never;
340
+ push: never;
341
+ concat: never;
342
+ join: never;
343
+ reverse: never;
344
+ shift: never;
345
+ slice: never;
346
+ sort: never;
347
+ splice: never;
348
+ unshift: never;
349
+ indexOf: never;
350
+ lastIndexOf: never;
351
+ every: never;
352
+ some: never;
353
+ forEach: never;
354
+ map: never;
355
+ filter: never;
356
+ reduce: never;
357
+ reduceRight: never;
358
+ find: never;
359
+ findIndex: never;
360
+ fill: never;
361
+ copyWithin: never;
362
+ entries: never;
363
+ keys: never;
364
+ values: never;
365
+ includes: never;
366
+ flatMap: never;
367
+ flat: never;
368
+ [Symbol.iterator]: never;
369
+ readonly [Symbol.unscopables]: {
370
+ [x: number]: boolean;
371
+ length?: boolean;
372
+ toString?: boolean;
373
+ toLocaleString?: boolean;
374
+ pop?: boolean;
375
+ push?: boolean;
376
+ concat?: boolean;
377
+ join?: boolean;
378
+ reverse?: boolean;
379
+ shift?: boolean;
380
+ slice?: boolean;
381
+ sort?: boolean;
382
+ splice?: boolean;
383
+ unshift?: boolean;
384
+ indexOf?: boolean;
385
+ lastIndexOf?: boolean;
386
+ every?: boolean;
387
+ some?: boolean;
388
+ forEach?: boolean;
389
+ map?: boolean;
390
+ filter?: boolean;
391
+ reduce?: boolean;
392
+ reduceRight?: boolean;
393
+ find?: boolean;
394
+ findIndex?: boolean;
395
+ fill?: boolean;
396
+ copyWithin?: boolean;
397
+ entries?: boolean;
398
+ keys?: boolean;
399
+ values?: boolean;
400
+ includes?: boolean;
401
+ flatMap?: boolean;
402
+ flat?: boolean;
403
+ };
404
+ };
405
+ } | {
406
+ [x: number]: string | number | boolean | {
407
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
408
+ } | /*elided*/ any;
409
+ length: number;
410
+ toString: never;
411
+ toLocaleString: never;
412
+ pop: never;
413
+ push: never;
414
+ concat: never;
415
+ join: never;
416
+ reverse: never;
417
+ shift: never;
418
+ slice: never;
419
+ sort: never;
420
+ splice: never;
421
+ unshift: never;
422
+ indexOf: never;
423
+ lastIndexOf: never;
424
+ every: never;
425
+ some: never;
426
+ forEach: never;
427
+ map: never;
428
+ filter: never;
429
+ reduce: never;
430
+ reduceRight: never;
431
+ find: never;
432
+ findIndex: never;
433
+ fill: never;
434
+ copyWithin: never;
435
+ entries: never;
436
+ keys: never;
437
+ values: never;
438
+ includes: never;
439
+ flatMap: never;
440
+ flat: never;
441
+ [Symbol.iterator]: never;
442
+ readonly [Symbol.unscopables]: {
443
+ [x: number]: boolean;
444
+ length?: boolean;
445
+ toString?: boolean;
446
+ toLocaleString?: boolean;
447
+ pop?: boolean;
448
+ push?: boolean;
449
+ concat?: boolean;
450
+ join?: boolean;
451
+ reverse?: boolean;
452
+ shift?: boolean;
453
+ slice?: boolean;
454
+ sort?: boolean;
455
+ splice?: boolean;
456
+ unshift?: boolean;
457
+ indexOf?: boolean;
458
+ lastIndexOf?: boolean;
459
+ every?: boolean;
460
+ some?: boolean;
461
+ forEach?: boolean;
462
+ map?: boolean;
463
+ filter?: boolean;
464
+ reduce?: boolean;
465
+ reduceRight?: boolean;
466
+ find?: boolean;
467
+ findIndex?: boolean;
468
+ fill?: boolean;
469
+ copyWithin?: boolean;
470
+ entries?: boolean;
471
+ keys?: boolean;
472
+ values?: boolean;
473
+ includes?: boolean;
474
+ flatMap?: boolean;
475
+ flat?: boolean;
476
+ };
477
+ };
478
+ };
479
+ name: string | null;
480
+ id: string;
481
+ createdAt: string;
482
+ updatedAt: string;
483
+ deletedAt: string;
484
+ isActive: boolean;
485
+ thumbnailUrl: string | null;
486
+ productId: string;
487
+ sku: string;
488
+ trackInventory: boolean;
489
+ lowStockThreshold: number | null;
490
+ };
491
+ quantity: number;
492
+ basePrice: number;
493
+ discountPercent: number;
494
+ finalPrice: number;
495
+ subtotal: number;
496
+ }[];
497
+ pricing: {
498
+ subtotal: number;
499
+ deliveryCharge: number;
500
+ discount: {
501
+ code: string;
502
+ type: "percentage" | "fixed";
503
+ value: number;
504
+ amount: number;
505
+ description: string | null;
506
+ };
507
+ total: number;
508
+ };
509
+ createdAt: string;
510
+ updatedAt: string;
511
+ expiresAt: string;
512
+ convertedToOrderId: string;
513
+ wasRecovered: boolean;
514
+ recoveryUrl: string;
515
+ }>;
516
+ /**
517
+ * Update a cart
518
+ *
519
+ * @param cartId - Cart UUID
520
+ * @param data - Cart update data (customer info, deliveryZoneId, etc.)
521
+ * @returns Updated cart
522
+ */
523
+ export declare function updateCart(cartId: string, data: {
524
+ customerPhone?: string | null;
525
+ customerEmail?: string | null;
526
+ customerFirstName?: string | null;
527
+ customerLastName?: string | null;
528
+ deliveryZoneId?: string | null;
529
+ ifUnmodifiedSince?: string;
530
+ }): Promise<{
531
+ id: string;
532
+ brand: {
533
+ createdAt: string;
534
+ updatedAt: string;
535
+ deletedAt: string;
536
+ name: string;
537
+ id: string;
538
+ slug: string;
539
+ logoUrl: string | null;
540
+ siteUrl: string;
541
+ domain: string;
542
+ metaPixelId: string | null;
543
+ };
544
+ customerPhone: string;
545
+ customerEmail: string;
546
+ customerFirstName: string;
547
+ customerLastName: string;
548
+ availablePaymentMethods: import("@prisma/client").$Enums.PaymentMethod[];
549
+ deliveryZone: {
550
+ id: string;
551
+ name: string;
552
+ };
553
+ recoveryAttempts: number;
554
+ lastRecoveryAttemptAt: string;
555
+ recoveryDiscountCode: {
556
+ id: string;
557
+ createdAt: string;
558
+ updatedAt: string;
559
+ deletedAt: string;
560
+ brandId: string | null;
561
+ isActive: boolean;
562
+ code: string;
563
+ type: string;
564
+ value: string;
565
+ minPurchase: string;
566
+ maxDiscount: string;
567
+ usageLimit: number | null;
568
+ usageCount: number;
569
+ perCustomerLimit: number | null;
570
+ validFrom: string;
571
+ validUntil: string;
572
+ isAutoApply: boolean;
573
+ description: string | null;
574
+ category: string;
575
+ createdBy: string | null;
576
+ };
577
+ items: {
578
+ id: string;
579
+ variant: {
580
+ price: number;
581
+ product: {
582
+ name: string;
583
+ id: string;
584
+ slug: string;
585
+ createdAt: string;
586
+ updatedAt: string;
587
+ deletedAt: string;
588
+ brandId: string;
589
+ isActive: boolean;
590
+ description: string | null;
591
+ thumbnailUrl: string | null;
592
+ quantityDiscounts: string | number | boolean | {
593
+ [x: string]: string | number | boolean | /*elided*/ any | {
594
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
595
+ length: number;
596
+ toString: never;
597
+ toLocaleString: never;
598
+ pop: never;
599
+ push: never;
600
+ concat: never;
601
+ join: never;
602
+ reverse: never;
603
+ shift: never;
604
+ slice: never;
605
+ sort: never;
606
+ splice: never;
607
+ unshift: never;
608
+ indexOf: never;
609
+ lastIndexOf: never;
610
+ every: never;
611
+ some: never;
612
+ forEach: never;
613
+ map: never;
614
+ filter: never;
615
+ reduce: never;
616
+ reduceRight: never;
617
+ find: never;
618
+ findIndex: never;
619
+ fill: never;
620
+ copyWithin: never;
621
+ entries: never;
622
+ keys: never;
623
+ values: never;
624
+ includes: never;
625
+ flatMap: never;
626
+ flat: never;
627
+ [Symbol.iterator]: never;
628
+ readonly [Symbol.unscopables]: {
629
+ [x: number]: boolean;
630
+ length?: boolean;
631
+ toString?: boolean;
632
+ toLocaleString?: boolean;
633
+ pop?: boolean;
634
+ push?: boolean;
635
+ concat?: boolean;
636
+ join?: boolean;
637
+ reverse?: boolean;
638
+ shift?: boolean;
639
+ slice?: boolean;
640
+ sort?: boolean;
641
+ splice?: boolean;
642
+ unshift?: boolean;
643
+ indexOf?: boolean;
644
+ lastIndexOf?: boolean;
645
+ every?: boolean;
646
+ some?: boolean;
647
+ forEach?: boolean;
648
+ map?: boolean;
649
+ filter?: boolean;
650
+ reduce?: boolean;
651
+ reduceRight?: boolean;
652
+ find?: boolean;
653
+ findIndex?: boolean;
654
+ fill?: boolean;
655
+ copyWithin?: boolean;
656
+ entries?: boolean;
657
+ keys?: boolean;
658
+ values?: boolean;
659
+ includes?: boolean;
660
+ flatMap?: boolean;
661
+ flat?: boolean;
662
+ };
663
+ };
664
+ } | {
665
+ [x: number]: string | number | boolean | {
666
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
667
+ } | /*elided*/ any;
668
+ length: number;
669
+ toString: never;
670
+ toLocaleString: never;
671
+ pop: never;
672
+ push: never;
673
+ concat: never;
674
+ join: never;
675
+ reverse: never;
676
+ shift: never;
677
+ slice: never;
678
+ sort: never;
679
+ splice: never;
680
+ unshift: never;
681
+ indexOf: never;
682
+ lastIndexOf: never;
683
+ every: never;
684
+ some: never;
685
+ forEach: never;
686
+ map: never;
687
+ filter: never;
688
+ reduce: never;
689
+ reduceRight: never;
690
+ find: never;
691
+ findIndex: never;
692
+ fill: never;
693
+ copyWithin: never;
694
+ entries: never;
695
+ keys: never;
696
+ values: never;
697
+ includes: never;
698
+ flatMap: never;
699
+ flat: never;
700
+ [Symbol.iterator]: never;
701
+ readonly [Symbol.unscopables]: {
702
+ [x: number]: boolean;
703
+ length?: boolean;
704
+ toString?: boolean;
705
+ toLocaleString?: boolean;
706
+ pop?: boolean;
707
+ push?: boolean;
708
+ concat?: boolean;
709
+ join?: boolean;
710
+ reverse?: boolean;
711
+ shift?: boolean;
712
+ slice?: boolean;
713
+ sort?: boolean;
714
+ splice?: boolean;
715
+ unshift?: boolean;
716
+ indexOf?: boolean;
717
+ lastIndexOf?: boolean;
718
+ every?: boolean;
719
+ some?: boolean;
720
+ forEach?: boolean;
721
+ map?: boolean;
722
+ filter?: boolean;
723
+ reduce?: boolean;
724
+ reduceRight?: boolean;
725
+ find?: boolean;
726
+ findIndex?: boolean;
727
+ fill?: boolean;
728
+ copyWithin?: boolean;
729
+ entries?: boolean;
730
+ keys?: boolean;
731
+ values?: boolean;
732
+ includes?: boolean;
733
+ flatMap?: boolean;
734
+ flat?: boolean;
735
+ };
736
+ };
737
+ };
738
+ name: string | null;
739
+ id: string;
740
+ createdAt: string;
741
+ updatedAt: string;
742
+ deletedAt: string;
743
+ isActive: boolean;
744
+ thumbnailUrl: string | null;
745
+ productId: string;
746
+ sku: string;
747
+ trackInventory: boolean;
748
+ lowStockThreshold: number | null;
749
+ };
750
+ quantity: number;
751
+ basePrice: number;
752
+ discountPercent: number;
753
+ finalPrice: number;
754
+ subtotal: number;
755
+ }[];
756
+ pricing: {
757
+ subtotal: number;
758
+ deliveryCharge: number;
759
+ discount: {
760
+ code: string;
761
+ type: "percentage" | "fixed";
762
+ value: number;
763
+ amount: number;
764
+ description: string | null;
765
+ };
766
+ total: number;
767
+ };
768
+ createdAt: string;
769
+ updatedAt: string;
770
+ expiresAt: string;
771
+ convertedToOrderId: string;
772
+ wasRecovered: boolean;
773
+ recoveryUrl: string;
774
+ } | {
775
+ error: {
776
+ code: string;
777
+ message: string;
778
+ };
779
+ }>;
780
+ /**
781
+ * Add an item to cart
782
+ *
783
+ * @param cartId - Cart UUID
784
+ * @param sku - Product variant SKU
785
+ * @param quantity - Quantity to add
786
+ * @returns Updated cart
787
+ */
788
+ export declare function addCartItem(cartId: string, sku: string, quantity: number): Promise<{
789
+ error: {
790
+ code: string;
791
+ message: string;
792
+ };
793
+ } | {
794
+ cart: {
795
+ id: string;
796
+ brand: {
797
+ createdAt: string;
798
+ updatedAt: string;
799
+ deletedAt: string;
800
+ name: string;
801
+ id: string;
802
+ slug: string;
803
+ logoUrl: string | null;
804
+ siteUrl: string;
805
+ domain: string;
806
+ metaPixelId: string | null;
807
+ };
808
+ customerPhone: string;
809
+ customerEmail: string;
810
+ customerFirstName: string;
811
+ customerLastName: string;
812
+ availablePaymentMethods: import("@prisma/client").$Enums.PaymentMethod[];
813
+ deliveryZone: {
814
+ id: string;
815
+ name: string;
816
+ };
817
+ recoveryAttempts: number;
818
+ lastRecoveryAttemptAt: string;
819
+ recoveryDiscountCode: {
820
+ id: string;
821
+ createdAt: string;
822
+ updatedAt: string;
823
+ deletedAt: string;
824
+ brandId: string | null;
825
+ isActive: boolean;
826
+ code: string;
827
+ type: string;
828
+ value: string;
829
+ minPurchase: string;
830
+ maxDiscount: string;
831
+ usageLimit: number | null;
832
+ usageCount: number;
833
+ perCustomerLimit: number | null;
834
+ validFrom: string;
835
+ validUntil: string;
836
+ isAutoApply: boolean;
837
+ description: string | null;
838
+ category: string;
839
+ createdBy: string | null;
840
+ };
841
+ items: {
842
+ id: string;
843
+ variant: {
844
+ price: number;
845
+ product: {
846
+ name: string;
847
+ id: string;
848
+ slug: string;
849
+ createdAt: string;
850
+ updatedAt: string;
851
+ deletedAt: string;
852
+ brandId: string;
853
+ isActive: boolean;
854
+ description: string | null;
855
+ thumbnailUrl: string | null;
856
+ quantityDiscounts: string | number | boolean | {
857
+ [x: string]: string | number | boolean | /*elided*/ any | {
858
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
859
+ length: number;
860
+ toString: never;
861
+ toLocaleString: never;
862
+ pop: never;
863
+ push: never;
864
+ concat: never;
865
+ join: never;
866
+ reverse: never;
867
+ shift: never;
868
+ slice: never;
869
+ sort: never;
870
+ splice: never;
871
+ unshift: never;
872
+ indexOf: never;
873
+ lastIndexOf: never;
874
+ every: never;
875
+ some: never;
876
+ forEach: never;
877
+ map: never;
878
+ filter: never;
879
+ reduce: never;
880
+ reduceRight: never;
881
+ find: never;
882
+ findIndex: never;
883
+ fill: never;
884
+ copyWithin: never;
885
+ entries: never;
886
+ keys: never;
887
+ values: never;
888
+ includes: never;
889
+ flatMap: never;
890
+ flat: never;
891
+ [Symbol.iterator]: never;
892
+ readonly [Symbol.unscopables]: {
893
+ [x: number]: boolean;
894
+ length?: boolean;
895
+ toString?: boolean;
896
+ toLocaleString?: boolean;
897
+ pop?: boolean;
898
+ push?: boolean;
899
+ concat?: boolean;
900
+ join?: boolean;
901
+ reverse?: boolean;
902
+ shift?: boolean;
903
+ slice?: boolean;
904
+ sort?: boolean;
905
+ splice?: boolean;
906
+ unshift?: boolean;
907
+ indexOf?: boolean;
908
+ lastIndexOf?: boolean;
909
+ every?: boolean;
910
+ some?: boolean;
911
+ forEach?: boolean;
912
+ map?: boolean;
913
+ filter?: boolean;
914
+ reduce?: boolean;
915
+ reduceRight?: boolean;
916
+ find?: boolean;
917
+ findIndex?: boolean;
918
+ fill?: boolean;
919
+ copyWithin?: boolean;
920
+ entries?: boolean;
921
+ keys?: boolean;
922
+ values?: boolean;
923
+ includes?: boolean;
924
+ flatMap?: boolean;
925
+ flat?: boolean;
926
+ };
927
+ };
928
+ } | {
929
+ [x: number]: string | number | boolean | {
930
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
931
+ } | /*elided*/ any;
932
+ length: number;
933
+ toString: never;
934
+ toLocaleString: never;
935
+ pop: never;
936
+ push: never;
937
+ concat: never;
938
+ join: never;
939
+ reverse: never;
940
+ shift: never;
941
+ slice: never;
942
+ sort: never;
943
+ splice: never;
944
+ unshift: never;
945
+ indexOf: never;
946
+ lastIndexOf: never;
947
+ every: never;
948
+ some: never;
949
+ forEach: never;
950
+ map: never;
951
+ filter: never;
952
+ reduce: never;
953
+ reduceRight: never;
954
+ find: never;
955
+ findIndex: never;
956
+ fill: never;
957
+ copyWithin: never;
958
+ entries: never;
959
+ keys: never;
960
+ values: never;
961
+ includes: never;
962
+ flatMap: never;
963
+ flat: never;
964
+ [Symbol.iterator]: never;
965
+ readonly [Symbol.unscopables]: {
966
+ [x: number]: boolean;
967
+ length?: boolean;
968
+ toString?: boolean;
969
+ toLocaleString?: boolean;
970
+ pop?: boolean;
971
+ push?: boolean;
972
+ concat?: boolean;
973
+ join?: boolean;
974
+ reverse?: boolean;
975
+ shift?: boolean;
976
+ slice?: boolean;
977
+ sort?: boolean;
978
+ splice?: boolean;
979
+ unshift?: boolean;
980
+ indexOf?: boolean;
981
+ lastIndexOf?: boolean;
982
+ every?: boolean;
983
+ some?: boolean;
984
+ forEach?: boolean;
985
+ map?: boolean;
986
+ filter?: boolean;
987
+ reduce?: boolean;
988
+ reduceRight?: boolean;
989
+ find?: boolean;
990
+ findIndex?: boolean;
991
+ fill?: boolean;
992
+ copyWithin?: boolean;
993
+ entries?: boolean;
994
+ keys?: boolean;
995
+ values?: boolean;
996
+ includes?: boolean;
997
+ flatMap?: boolean;
998
+ flat?: boolean;
999
+ };
1000
+ };
1001
+ };
1002
+ name: string | null;
1003
+ id: string;
1004
+ createdAt: string;
1005
+ updatedAt: string;
1006
+ deletedAt: string;
1007
+ isActive: boolean;
1008
+ thumbnailUrl: string | null;
1009
+ productId: string;
1010
+ sku: string;
1011
+ trackInventory: boolean;
1012
+ lowStockThreshold: number | null;
1013
+ };
1014
+ quantity: number;
1015
+ basePrice: number;
1016
+ discountPercent: number;
1017
+ finalPrice: number;
1018
+ subtotal: number;
1019
+ }[];
1020
+ pricing: {
1021
+ subtotal: number;
1022
+ deliveryCharge: number;
1023
+ discount: {
1024
+ code: string;
1025
+ type: "percentage" | "fixed";
1026
+ value: number;
1027
+ amount: number;
1028
+ description: string | null;
1029
+ };
1030
+ total: number;
1031
+ };
1032
+ createdAt: string;
1033
+ updatedAt: string;
1034
+ expiresAt: string;
1035
+ convertedToOrderId: string;
1036
+ wasRecovered: boolean;
1037
+ recoveryUrl: string;
1038
+ };
1039
+ }>;
1040
+ /**
1041
+ * Update a cart item quantity
1042
+ *
1043
+ * @param cartId - Cart UUID
1044
+ * @param itemId - Cart item UUID
1045
+ * @param quantity - New quantity
1046
+ * @returns Updated cart
1047
+ */
1048
+ export declare function updateCartItem(cartId: string, itemId: string, quantity: number): Promise<{
1049
+ cart: {
1050
+ id: string;
1051
+ brand: {
1052
+ createdAt: string;
1053
+ updatedAt: string;
1054
+ deletedAt: string;
1055
+ name: string;
1056
+ id: string;
1057
+ slug: string;
1058
+ logoUrl: string | null;
1059
+ siteUrl: string;
1060
+ domain: string;
1061
+ metaPixelId: string | null;
1062
+ };
1063
+ customerPhone: string;
1064
+ customerEmail: string;
1065
+ customerFirstName: string;
1066
+ customerLastName: string;
1067
+ availablePaymentMethods: import("@prisma/client").$Enums.PaymentMethod[];
1068
+ deliveryZone: {
1069
+ id: string;
1070
+ name: string;
1071
+ };
1072
+ recoveryAttempts: number;
1073
+ lastRecoveryAttemptAt: string;
1074
+ recoveryDiscountCode: {
1075
+ id: string;
1076
+ createdAt: string;
1077
+ updatedAt: string;
1078
+ deletedAt: string;
1079
+ brandId: string | null;
1080
+ isActive: boolean;
1081
+ code: string;
1082
+ type: string;
1083
+ value: string;
1084
+ minPurchase: string;
1085
+ maxDiscount: string;
1086
+ usageLimit: number | null;
1087
+ usageCount: number;
1088
+ perCustomerLimit: number | null;
1089
+ validFrom: string;
1090
+ validUntil: string;
1091
+ isAutoApply: boolean;
1092
+ description: string | null;
1093
+ category: string;
1094
+ createdBy: string | null;
1095
+ };
1096
+ items: {
1097
+ id: string;
1098
+ variant: {
1099
+ price: number;
1100
+ product: {
1101
+ name: string;
1102
+ id: string;
1103
+ slug: string;
1104
+ createdAt: string;
1105
+ updatedAt: string;
1106
+ deletedAt: string;
1107
+ brandId: string;
1108
+ isActive: boolean;
1109
+ description: string | null;
1110
+ thumbnailUrl: string | null;
1111
+ quantityDiscounts: string | number | boolean | {
1112
+ [x: string]: string | number | boolean | /*elided*/ any | {
1113
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
1114
+ length: number;
1115
+ toString: never;
1116
+ toLocaleString: never;
1117
+ pop: never;
1118
+ push: never;
1119
+ concat: never;
1120
+ join: never;
1121
+ reverse: never;
1122
+ shift: never;
1123
+ slice: never;
1124
+ sort: never;
1125
+ splice: never;
1126
+ unshift: never;
1127
+ indexOf: never;
1128
+ lastIndexOf: never;
1129
+ every: never;
1130
+ some: never;
1131
+ forEach: never;
1132
+ map: never;
1133
+ filter: never;
1134
+ reduce: never;
1135
+ reduceRight: never;
1136
+ find: never;
1137
+ findIndex: never;
1138
+ fill: never;
1139
+ copyWithin: never;
1140
+ entries: never;
1141
+ keys: never;
1142
+ values: never;
1143
+ includes: never;
1144
+ flatMap: never;
1145
+ flat: never;
1146
+ [Symbol.iterator]: never;
1147
+ readonly [Symbol.unscopables]: {
1148
+ [x: number]: boolean;
1149
+ length?: boolean;
1150
+ toString?: boolean;
1151
+ toLocaleString?: boolean;
1152
+ pop?: boolean;
1153
+ push?: boolean;
1154
+ concat?: boolean;
1155
+ join?: boolean;
1156
+ reverse?: boolean;
1157
+ shift?: boolean;
1158
+ slice?: boolean;
1159
+ sort?: boolean;
1160
+ splice?: boolean;
1161
+ unshift?: boolean;
1162
+ indexOf?: boolean;
1163
+ lastIndexOf?: boolean;
1164
+ every?: boolean;
1165
+ some?: boolean;
1166
+ forEach?: boolean;
1167
+ map?: boolean;
1168
+ filter?: boolean;
1169
+ reduce?: boolean;
1170
+ reduceRight?: boolean;
1171
+ find?: boolean;
1172
+ findIndex?: boolean;
1173
+ fill?: boolean;
1174
+ copyWithin?: boolean;
1175
+ entries?: boolean;
1176
+ keys?: boolean;
1177
+ values?: boolean;
1178
+ includes?: boolean;
1179
+ flatMap?: boolean;
1180
+ flat?: boolean;
1181
+ };
1182
+ };
1183
+ } | {
1184
+ [x: number]: string | number | boolean | {
1185
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
1186
+ } | /*elided*/ any;
1187
+ length: number;
1188
+ toString: never;
1189
+ toLocaleString: never;
1190
+ pop: never;
1191
+ push: never;
1192
+ concat: never;
1193
+ join: never;
1194
+ reverse: never;
1195
+ shift: never;
1196
+ slice: never;
1197
+ sort: never;
1198
+ splice: never;
1199
+ unshift: never;
1200
+ indexOf: never;
1201
+ lastIndexOf: never;
1202
+ every: never;
1203
+ some: never;
1204
+ forEach: never;
1205
+ map: never;
1206
+ filter: never;
1207
+ reduce: never;
1208
+ reduceRight: never;
1209
+ find: never;
1210
+ findIndex: never;
1211
+ fill: never;
1212
+ copyWithin: never;
1213
+ entries: never;
1214
+ keys: never;
1215
+ values: never;
1216
+ includes: never;
1217
+ flatMap: never;
1218
+ flat: never;
1219
+ [Symbol.iterator]: never;
1220
+ readonly [Symbol.unscopables]: {
1221
+ [x: number]: boolean;
1222
+ length?: boolean;
1223
+ toString?: boolean;
1224
+ toLocaleString?: boolean;
1225
+ pop?: boolean;
1226
+ push?: boolean;
1227
+ concat?: boolean;
1228
+ join?: boolean;
1229
+ reverse?: boolean;
1230
+ shift?: boolean;
1231
+ slice?: boolean;
1232
+ sort?: boolean;
1233
+ splice?: boolean;
1234
+ unshift?: boolean;
1235
+ indexOf?: boolean;
1236
+ lastIndexOf?: boolean;
1237
+ every?: boolean;
1238
+ some?: boolean;
1239
+ forEach?: boolean;
1240
+ map?: boolean;
1241
+ filter?: boolean;
1242
+ reduce?: boolean;
1243
+ reduceRight?: boolean;
1244
+ find?: boolean;
1245
+ findIndex?: boolean;
1246
+ fill?: boolean;
1247
+ copyWithin?: boolean;
1248
+ entries?: boolean;
1249
+ keys?: boolean;
1250
+ values?: boolean;
1251
+ includes?: boolean;
1252
+ flatMap?: boolean;
1253
+ flat?: boolean;
1254
+ };
1255
+ };
1256
+ };
1257
+ name: string | null;
1258
+ id: string;
1259
+ createdAt: string;
1260
+ updatedAt: string;
1261
+ deletedAt: string;
1262
+ isActive: boolean;
1263
+ thumbnailUrl: string | null;
1264
+ productId: string;
1265
+ sku: string;
1266
+ trackInventory: boolean;
1267
+ lowStockThreshold: number | null;
1268
+ };
1269
+ quantity: number;
1270
+ basePrice: number;
1271
+ discountPercent: number;
1272
+ finalPrice: number;
1273
+ subtotal: number;
1274
+ }[];
1275
+ pricing: {
1276
+ subtotal: number;
1277
+ deliveryCharge: number;
1278
+ discount: {
1279
+ code: string;
1280
+ type: "percentage" | "fixed";
1281
+ value: number;
1282
+ amount: number;
1283
+ description: string | null;
1284
+ };
1285
+ total: number;
1286
+ };
1287
+ createdAt: string;
1288
+ updatedAt: string;
1289
+ expiresAt: string;
1290
+ convertedToOrderId: string;
1291
+ wasRecovered: boolean;
1292
+ recoveryUrl: string;
1293
+ };
1294
+ }>;
1295
+ /**
1296
+ * Remove an item from cart
1297
+ *
1298
+ * @param cartId - Cart UUID
1299
+ * @param itemId - Cart item UUID
1300
+ * @returns Updated cart
1301
+ */
1302
+ export declare function removeCartItem(cartId: string, itemId: string): Promise<{
1303
+ cart: {
1304
+ id: string;
1305
+ brand: {
1306
+ createdAt: string;
1307
+ updatedAt: string;
1308
+ deletedAt: string;
1309
+ name: string;
1310
+ id: string;
1311
+ slug: string;
1312
+ logoUrl: string | null;
1313
+ siteUrl: string;
1314
+ domain: string;
1315
+ metaPixelId: string | null;
1316
+ };
1317
+ customerPhone: string;
1318
+ customerEmail: string;
1319
+ customerFirstName: string;
1320
+ customerLastName: string;
1321
+ availablePaymentMethods: import("@prisma/client").$Enums.PaymentMethod[];
1322
+ deliveryZone: {
1323
+ id: string;
1324
+ name: string;
1325
+ };
1326
+ recoveryAttempts: number;
1327
+ lastRecoveryAttemptAt: string;
1328
+ recoveryDiscountCode: {
1329
+ id: string;
1330
+ createdAt: string;
1331
+ updatedAt: string;
1332
+ deletedAt: string;
1333
+ brandId: string | null;
1334
+ isActive: boolean;
1335
+ code: string;
1336
+ type: string;
1337
+ value: string;
1338
+ minPurchase: string;
1339
+ maxDiscount: string;
1340
+ usageLimit: number | null;
1341
+ usageCount: number;
1342
+ perCustomerLimit: number | null;
1343
+ validFrom: string;
1344
+ validUntil: string;
1345
+ isAutoApply: boolean;
1346
+ description: string | null;
1347
+ category: string;
1348
+ createdBy: string | null;
1349
+ };
1350
+ items: {
1351
+ id: string;
1352
+ variant: {
1353
+ price: number;
1354
+ product: {
1355
+ name: string;
1356
+ id: string;
1357
+ slug: string;
1358
+ createdAt: string;
1359
+ updatedAt: string;
1360
+ deletedAt: string;
1361
+ brandId: string;
1362
+ isActive: boolean;
1363
+ description: string | null;
1364
+ thumbnailUrl: string | null;
1365
+ quantityDiscounts: string | number | boolean | {
1366
+ [x: string]: string | number | boolean | /*elided*/ any | {
1367
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
1368
+ length: number;
1369
+ toString: never;
1370
+ toLocaleString: never;
1371
+ pop: never;
1372
+ push: never;
1373
+ concat: never;
1374
+ join: never;
1375
+ reverse: never;
1376
+ shift: never;
1377
+ slice: never;
1378
+ sort: never;
1379
+ splice: never;
1380
+ unshift: never;
1381
+ indexOf: never;
1382
+ lastIndexOf: never;
1383
+ every: never;
1384
+ some: never;
1385
+ forEach: never;
1386
+ map: never;
1387
+ filter: never;
1388
+ reduce: never;
1389
+ reduceRight: never;
1390
+ find: never;
1391
+ findIndex: never;
1392
+ fill: never;
1393
+ copyWithin: never;
1394
+ entries: never;
1395
+ keys: never;
1396
+ values: never;
1397
+ includes: never;
1398
+ flatMap: never;
1399
+ flat: never;
1400
+ [Symbol.iterator]: never;
1401
+ readonly [Symbol.unscopables]: {
1402
+ [x: number]: boolean;
1403
+ length?: boolean;
1404
+ toString?: boolean;
1405
+ toLocaleString?: boolean;
1406
+ pop?: boolean;
1407
+ push?: boolean;
1408
+ concat?: boolean;
1409
+ join?: boolean;
1410
+ reverse?: boolean;
1411
+ shift?: boolean;
1412
+ slice?: boolean;
1413
+ sort?: boolean;
1414
+ splice?: boolean;
1415
+ unshift?: boolean;
1416
+ indexOf?: boolean;
1417
+ lastIndexOf?: boolean;
1418
+ every?: boolean;
1419
+ some?: boolean;
1420
+ forEach?: boolean;
1421
+ map?: boolean;
1422
+ filter?: boolean;
1423
+ reduce?: boolean;
1424
+ reduceRight?: boolean;
1425
+ find?: boolean;
1426
+ findIndex?: boolean;
1427
+ fill?: boolean;
1428
+ copyWithin?: boolean;
1429
+ entries?: boolean;
1430
+ keys?: boolean;
1431
+ values?: boolean;
1432
+ includes?: boolean;
1433
+ flatMap?: boolean;
1434
+ flat?: boolean;
1435
+ };
1436
+ };
1437
+ } | {
1438
+ [x: number]: string | number | boolean | {
1439
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
1440
+ } | /*elided*/ any;
1441
+ length: number;
1442
+ toString: never;
1443
+ toLocaleString: never;
1444
+ pop: never;
1445
+ push: never;
1446
+ concat: never;
1447
+ join: never;
1448
+ reverse: never;
1449
+ shift: never;
1450
+ slice: never;
1451
+ sort: never;
1452
+ splice: never;
1453
+ unshift: never;
1454
+ indexOf: never;
1455
+ lastIndexOf: never;
1456
+ every: never;
1457
+ some: never;
1458
+ forEach: never;
1459
+ map: never;
1460
+ filter: never;
1461
+ reduce: never;
1462
+ reduceRight: never;
1463
+ find: never;
1464
+ findIndex: never;
1465
+ fill: never;
1466
+ copyWithin: never;
1467
+ entries: never;
1468
+ keys: never;
1469
+ values: never;
1470
+ includes: never;
1471
+ flatMap: never;
1472
+ flat: never;
1473
+ [Symbol.iterator]: never;
1474
+ readonly [Symbol.unscopables]: {
1475
+ [x: number]: boolean;
1476
+ length?: boolean;
1477
+ toString?: boolean;
1478
+ toLocaleString?: boolean;
1479
+ pop?: boolean;
1480
+ push?: boolean;
1481
+ concat?: boolean;
1482
+ join?: boolean;
1483
+ reverse?: boolean;
1484
+ shift?: boolean;
1485
+ slice?: boolean;
1486
+ sort?: boolean;
1487
+ splice?: boolean;
1488
+ unshift?: boolean;
1489
+ indexOf?: boolean;
1490
+ lastIndexOf?: boolean;
1491
+ every?: boolean;
1492
+ some?: boolean;
1493
+ forEach?: boolean;
1494
+ map?: boolean;
1495
+ filter?: boolean;
1496
+ reduce?: boolean;
1497
+ reduceRight?: boolean;
1498
+ find?: boolean;
1499
+ findIndex?: boolean;
1500
+ fill?: boolean;
1501
+ copyWithin?: boolean;
1502
+ entries?: boolean;
1503
+ keys?: boolean;
1504
+ values?: boolean;
1505
+ includes?: boolean;
1506
+ flatMap?: boolean;
1507
+ flat?: boolean;
1508
+ };
1509
+ };
1510
+ };
1511
+ name: string | null;
1512
+ id: string;
1513
+ createdAt: string;
1514
+ updatedAt: string;
1515
+ deletedAt: string;
1516
+ isActive: boolean;
1517
+ thumbnailUrl: string | null;
1518
+ productId: string;
1519
+ sku: string;
1520
+ trackInventory: boolean;
1521
+ lowStockThreshold: number | null;
1522
+ };
1523
+ quantity: number;
1524
+ basePrice: number;
1525
+ discountPercent: number;
1526
+ finalPrice: number;
1527
+ subtotal: number;
1528
+ }[];
1529
+ pricing: {
1530
+ subtotal: number;
1531
+ deliveryCharge: number;
1532
+ discount: {
1533
+ code: string;
1534
+ type: "percentage" | "fixed";
1535
+ value: number;
1536
+ amount: number;
1537
+ description: string | null;
1538
+ };
1539
+ total: number;
1540
+ };
1541
+ createdAt: string;
1542
+ updatedAt: string;
1543
+ expiresAt: string;
1544
+ convertedToOrderId: string;
1545
+ wasRecovered: boolean;
1546
+ recoveryUrl: string;
1547
+ };
1548
+ }>;
1549
+ /**
1550
+ * Apply a discount code to cart
1551
+ *
1552
+ * @param cartId - Cart UUID
1553
+ * @param code - Discount code
1554
+ * @returns Updated cart
1555
+ */
1556
+ export declare function applyDiscount(cartId: string, code: string): Promise<{
1557
+ id: string;
1558
+ brand: {
1559
+ createdAt: string;
1560
+ updatedAt: string;
1561
+ deletedAt: string;
1562
+ name: string;
1563
+ id: string;
1564
+ slug: string;
1565
+ logoUrl: string | null;
1566
+ siteUrl: string;
1567
+ domain: string;
1568
+ metaPixelId: string | null;
1569
+ };
1570
+ customerPhone: string;
1571
+ customerEmail: string;
1572
+ customerFirstName: string;
1573
+ customerLastName: string;
1574
+ availablePaymentMethods: import("@prisma/client").$Enums.PaymentMethod[];
1575
+ deliveryZone: {
1576
+ id: string;
1577
+ name: string;
1578
+ };
1579
+ recoveryAttempts: number;
1580
+ lastRecoveryAttemptAt: string;
1581
+ recoveryDiscountCode: {
1582
+ id: string;
1583
+ createdAt: string;
1584
+ updatedAt: string;
1585
+ deletedAt: string;
1586
+ brandId: string | null;
1587
+ isActive: boolean;
1588
+ code: string;
1589
+ type: string;
1590
+ value: string;
1591
+ minPurchase: string;
1592
+ maxDiscount: string;
1593
+ usageLimit: number | null;
1594
+ usageCount: number;
1595
+ perCustomerLimit: number | null;
1596
+ validFrom: string;
1597
+ validUntil: string;
1598
+ isAutoApply: boolean;
1599
+ description: string | null;
1600
+ category: string;
1601
+ createdBy: string | null;
1602
+ };
1603
+ items: {
1604
+ id: string;
1605
+ variant: {
1606
+ price: number;
1607
+ product: {
1608
+ name: string;
1609
+ id: string;
1610
+ slug: string;
1611
+ createdAt: string;
1612
+ updatedAt: string;
1613
+ deletedAt: string;
1614
+ brandId: string;
1615
+ isActive: boolean;
1616
+ description: string | null;
1617
+ thumbnailUrl: string | null;
1618
+ quantityDiscounts: string | number | boolean | {
1619
+ [x: string]: string | number | boolean | /*elided*/ any | {
1620
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
1621
+ length: number;
1622
+ toString: never;
1623
+ toLocaleString: never;
1624
+ pop: never;
1625
+ push: never;
1626
+ concat: never;
1627
+ join: never;
1628
+ reverse: never;
1629
+ shift: never;
1630
+ slice: never;
1631
+ sort: never;
1632
+ splice: never;
1633
+ unshift: never;
1634
+ indexOf: never;
1635
+ lastIndexOf: never;
1636
+ every: never;
1637
+ some: never;
1638
+ forEach: never;
1639
+ map: never;
1640
+ filter: never;
1641
+ reduce: never;
1642
+ reduceRight: never;
1643
+ find: never;
1644
+ findIndex: never;
1645
+ fill: never;
1646
+ copyWithin: never;
1647
+ entries: never;
1648
+ keys: never;
1649
+ values: never;
1650
+ includes: never;
1651
+ flatMap: never;
1652
+ flat: never;
1653
+ [Symbol.iterator]: never;
1654
+ readonly [Symbol.unscopables]: {
1655
+ [x: number]: boolean;
1656
+ length?: boolean;
1657
+ toString?: boolean;
1658
+ toLocaleString?: boolean;
1659
+ pop?: boolean;
1660
+ push?: boolean;
1661
+ concat?: boolean;
1662
+ join?: boolean;
1663
+ reverse?: boolean;
1664
+ shift?: boolean;
1665
+ slice?: boolean;
1666
+ sort?: boolean;
1667
+ splice?: boolean;
1668
+ unshift?: boolean;
1669
+ indexOf?: boolean;
1670
+ lastIndexOf?: boolean;
1671
+ every?: boolean;
1672
+ some?: boolean;
1673
+ forEach?: boolean;
1674
+ map?: boolean;
1675
+ filter?: boolean;
1676
+ reduce?: boolean;
1677
+ reduceRight?: boolean;
1678
+ find?: boolean;
1679
+ findIndex?: boolean;
1680
+ fill?: boolean;
1681
+ copyWithin?: boolean;
1682
+ entries?: boolean;
1683
+ keys?: boolean;
1684
+ values?: boolean;
1685
+ includes?: boolean;
1686
+ flatMap?: boolean;
1687
+ flat?: boolean;
1688
+ };
1689
+ };
1690
+ } | {
1691
+ [x: number]: string | number | boolean | {
1692
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
1693
+ } | /*elided*/ any;
1694
+ length: number;
1695
+ toString: never;
1696
+ toLocaleString: never;
1697
+ pop: never;
1698
+ push: never;
1699
+ concat: never;
1700
+ join: never;
1701
+ reverse: never;
1702
+ shift: never;
1703
+ slice: never;
1704
+ sort: never;
1705
+ splice: never;
1706
+ unshift: never;
1707
+ indexOf: never;
1708
+ lastIndexOf: never;
1709
+ every: never;
1710
+ some: never;
1711
+ forEach: never;
1712
+ map: never;
1713
+ filter: never;
1714
+ reduce: never;
1715
+ reduceRight: never;
1716
+ find: never;
1717
+ findIndex: never;
1718
+ fill: never;
1719
+ copyWithin: never;
1720
+ entries: never;
1721
+ keys: never;
1722
+ values: never;
1723
+ includes: never;
1724
+ flatMap: never;
1725
+ flat: never;
1726
+ [Symbol.iterator]: never;
1727
+ readonly [Symbol.unscopables]: {
1728
+ [x: number]: boolean;
1729
+ length?: boolean;
1730
+ toString?: boolean;
1731
+ toLocaleString?: boolean;
1732
+ pop?: boolean;
1733
+ push?: boolean;
1734
+ concat?: boolean;
1735
+ join?: boolean;
1736
+ reverse?: boolean;
1737
+ shift?: boolean;
1738
+ slice?: boolean;
1739
+ sort?: boolean;
1740
+ splice?: boolean;
1741
+ unshift?: boolean;
1742
+ indexOf?: boolean;
1743
+ lastIndexOf?: boolean;
1744
+ every?: boolean;
1745
+ some?: boolean;
1746
+ forEach?: boolean;
1747
+ map?: boolean;
1748
+ filter?: boolean;
1749
+ reduce?: boolean;
1750
+ reduceRight?: boolean;
1751
+ find?: boolean;
1752
+ findIndex?: boolean;
1753
+ fill?: boolean;
1754
+ copyWithin?: boolean;
1755
+ entries?: boolean;
1756
+ keys?: boolean;
1757
+ values?: boolean;
1758
+ includes?: boolean;
1759
+ flatMap?: boolean;
1760
+ flat?: boolean;
1761
+ };
1762
+ };
1763
+ };
1764
+ name: string | null;
1765
+ id: string;
1766
+ createdAt: string;
1767
+ updatedAt: string;
1768
+ deletedAt: string;
1769
+ isActive: boolean;
1770
+ thumbnailUrl: string | null;
1771
+ productId: string;
1772
+ sku: string;
1773
+ trackInventory: boolean;
1774
+ lowStockThreshold: number | null;
1775
+ };
1776
+ quantity: number;
1777
+ basePrice: number;
1778
+ discountPercent: number;
1779
+ finalPrice: number;
1780
+ subtotal: number;
1781
+ }[];
1782
+ pricing: {
1783
+ subtotal: number;
1784
+ deliveryCharge: number;
1785
+ discount: {
1786
+ code: string;
1787
+ type: "percentage" | "fixed";
1788
+ value: number;
1789
+ amount: number;
1790
+ description: string | null;
1791
+ };
1792
+ total: number;
1793
+ };
1794
+ createdAt: string;
1795
+ updatedAt: string;
1796
+ expiresAt: string;
1797
+ convertedToOrderId: string;
1798
+ wasRecovered: boolean;
1799
+ recoveryUrl: string;
1800
+ } | {
1801
+ error: {
1802
+ code: string;
1803
+ message: string;
1804
+ };
1805
+ }>;
1806
+ /**
1807
+ * Remove discount from cart
1808
+ *
1809
+ * @param cartId - Cart UUID
1810
+ * @returns Updated cart
1811
+ */
1812
+ export declare function removeDiscount(cartId: string): Promise<{
1813
+ error: {
1814
+ code: string;
1815
+ message: string;
1816
+ };
1817
+ } | {
1818
+ cart: {
1819
+ id: string;
1820
+ brand: {
1821
+ createdAt: string;
1822
+ updatedAt: string;
1823
+ deletedAt: string;
1824
+ name: string;
1825
+ id: string;
1826
+ slug: string;
1827
+ logoUrl: string | null;
1828
+ siteUrl: string;
1829
+ domain: string;
1830
+ metaPixelId: string | null;
1831
+ };
1832
+ customerPhone: string;
1833
+ customerEmail: string;
1834
+ customerFirstName: string;
1835
+ customerLastName: string;
1836
+ availablePaymentMethods: import("@prisma/client").$Enums.PaymentMethod[];
1837
+ deliveryZone: {
1838
+ id: string;
1839
+ name: string;
1840
+ };
1841
+ recoveryAttempts: number;
1842
+ lastRecoveryAttemptAt: string;
1843
+ recoveryDiscountCode: {
1844
+ id: string;
1845
+ createdAt: string;
1846
+ updatedAt: string;
1847
+ deletedAt: string;
1848
+ brandId: string | null;
1849
+ isActive: boolean;
1850
+ code: string;
1851
+ type: string;
1852
+ value: string;
1853
+ minPurchase: string;
1854
+ maxDiscount: string;
1855
+ usageLimit: number | null;
1856
+ usageCount: number;
1857
+ perCustomerLimit: number | null;
1858
+ validFrom: string;
1859
+ validUntil: string;
1860
+ isAutoApply: boolean;
1861
+ description: string | null;
1862
+ category: string;
1863
+ createdBy: string | null;
1864
+ };
1865
+ items: {
1866
+ id: string;
1867
+ variant: {
1868
+ price: number;
1869
+ product: {
1870
+ name: string;
1871
+ id: string;
1872
+ slug: string;
1873
+ createdAt: string;
1874
+ updatedAt: string;
1875
+ deletedAt: string;
1876
+ brandId: string;
1877
+ isActive: boolean;
1878
+ description: string | null;
1879
+ thumbnailUrl: string | null;
1880
+ quantityDiscounts: string | number | boolean | {
1881
+ [x: string]: string | number | boolean | /*elided*/ any | {
1882
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
1883
+ length: number;
1884
+ toString: never;
1885
+ toLocaleString: never;
1886
+ pop: never;
1887
+ push: never;
1888
+ concat: never;
1889
+ join: never;
1890
+ reverse: never;
1891
+ shift: never;
1892
+ slice: never;
1893
+ sort: never;
1894
+ splice: never;
1895
+ unshift: never;
1896
+ indexOf: never;
1897
+ lastIndexOf: never;
1898
+ every: never;
1899
+ some: never;
1900
+ forEach: never;
1901
+ map: never;
1902
+ filter: never;
1903
+ reduce: never;
1904
+ reduceRight: never;
1905
+ find: never;
1906
+ findIndex: never;
1907
+ fill: never;
1908
+ copyWithin: never;
1909
+ entries: never;
1910
+ keys: never;
1911
+ values: never;
1912
+ includes: never;
1913
+ flatMap: never;
1914
+ flat: never;
1915
+ [Symbol.iterator]: never;
1916
+ readonly [Symbol.unscopables]: {
1917
+ [x: number]: boolean;
1918
+ length?: boolean;
1919
+ toString?: boolean;
1920
+ toLocaleString?: boolean;
1921
+ pop?: boolean;
1922
+ push?: boolean;
1923
+ concat?: boolean;
1924
+ join?: boolean;
1925
+ reverse?: boolean;
1926
+ shift?: boolean;
1927
+ slice?: boolean;
1928
+ sort?: boolean;
1929
+ splice?: boolean;
1930
+ unshift?: boolean;
1931
+ indexOf?: boolean;
1932
+ lastIndexOf?: boolean;
1933
+ every?: boolean;
1934
+ some?: boolean;
1935
+ forEach?: boolean;
1936
+ map?: boolean;
1937
+ filter?: boolean;
1938
+ reduce?: boolean;
1939
+ reduceRight?: boolean;
1940
+ find?: boolean;
1941
+ findIndex?: boolean;
1942
+ fill?: boolean;
1943
+ copyWithin?: boolean;
1944
+ entries?: boolean;
1945
+ keys?: boolean;
1946
+ values?: boolean;
1947
+ includes?: boolean;
1948
+ flatMap?: boolean;
1949
+ flat?: boolean;
1950
+ };
1951
+ };
1952
+ } | {
1953
+ [x: number]: string | number | boolean | {
1954
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
1955
+ } | /*elided*/ any;
1956
+ length: number;
1957
+ toString: never;
1958
+ toLocaleString: never;
1959
+ pop: never;
1960
+ push: never;
1961
+ concat: never;
1962
+ join: never;
1963
+ reverse: never;
1964
+ shift: never;
1965
+ slice: never;
1966
+ sort: never;
1967
+ splice: never;
1968
+ unshift: never;
1969
+ indexOf: never;
1970
+ lastIndexOf: never;
1971
+ every: never;
1972
+ some: never;
1973
+ forEach: never;
1974
+ map: never;
1975
+ filter: never;
1976
+ reduce: never;
1977
+ reduceRight: never;
1978
+ find: never;
1979
+ findIndex: never;
1980
+ fill: never;
1981
+ copyWithin: never;
1982
+ entries: never;
1983
+ keys: never;
1984
+ values: never;
1985
+ includes: never;
1986
+ flatMap: never;
1987
+ flat: never;
1988
+ [Symbol.iterator]: never;
1989
+ readonly [Symbol.unscopables]: {
1990
+ [x: number]: boolean;
1991
+ length?: boolean;
1992
+ toString?: boolean;
1993
+ toLocaleString?: boolean;
1994
+ pop?: boolean;
1995
+ push?: boolean;
1996
+ concat?: boolean;
1997
+ join?: boolean;
1998
+ reverse?: boolean;
1999
+ shift?: boolean;
2000
+ slice?: boolean;
2001
+ sort?: boolean;
2002
+ splice?: boolean;
2003
+ unshift?: boolean;
2004
+ indexOf?: boolean;
2005
+ lastIndexOf?: boolean;
2006
+ every?: boolean;
2007
+ some?: boolean;
2008
+ forEach?: boolean;
2009
+ map?: boolean;
2010
+ filter?: boolean;
2011
+ reduce?: boolean;
2012
+ reduceRight?: boolean;
2013
+ find?: boolean;
2014
+ findIndex?: boolean;
2015
+ fill?: boolean;
2016
+ copyWithin?: boolean;
2017
+ entries?: boolean;
2018
+ keys?: boolean;
2019
+ values?: boolean;
2020
+ includes?: boolean;
2021
+ flatMap?: boolean;
2022
+ flat?: boolean;
2023
+ };
2024
+ };
2025
+ };
2026
+ name: string | null;
2027
+ id: string;
2028
+ createdAt: string;
2029
+ updatedAt: string;
2030
+ deletedAt: string;
2031
+ isActive: boolean;
2032
+ thumbnailUrl: string | null;
2033
+ productId: string;
2034
+ sku: string;
2035
+ trackInventory: boolean;
2036
+ lowStockThreshold: number | null;
2037
+ };
2038
+ quantity: number;
2039
+ basePrice: number;
2040
+ discountPercent: number;
2041
+ finalPrice: number;
2042
+ subtotal: number;
2043
+ }[];
2044
+ pricing: {
2045
+ subtotal: number;
2046
+ deliveryCharge: number;
2047
+ discount: {
2048
+ code: string;
2049
+ type: "percentage" | "fixed";
2050
+ value: number;
2051
+ amount: number;
2052
+ description: string | null;
2053
+ };
2054
+ total: number;
2055
+ };
2056
+ createdAt: string;
2057
+ updatedAt: string;
2058
+ expiresAt: string;
2059
+ convertedToOrderId: string;
2060
+ wasRecovered: boolean;
2061
+ recoveryUrl: string;
2062
+ };
2063
+ }>;
2064
+ /**
2065
+ * Checkout a cart
2066
+ *
2067
+ * @param cartId - Cart UUID
2068
+ * @param checkoutData - Checkout information (customer details, delivery, payment)
2069
+ * @returns Created order
2070
+ */
2071
+ export declare function checkoutCart(cartId: string, checkoutData: {
2072
+ firstName: string;
2073
+ lastName: string;
2074
+ phone?: string;
2075
+ email?: string;
2076
+ address: string;
2077
+ city: string;
2078
+ deliveryZoneId: string;
2079
+ paymentMethod: 'cod' | 'online';
2080
+ paystackReference?: string;
2081
+ ifUnmodifiedSince?: string;
2082
+ }): Promise<{
2083
+ subtotal: number;
2084
+ deliveryCharge: number;
2085
+ totalPrice: number;
2086
+ discountAmount: number;
2087
+ createdAt: string;
2088
+ updatedAt: string;
2089
+ deletedAt: string;
2090
+ prospectSince: string;
2091
+ lastRecoveryAttemptAt: string;
2092
+ brand: {
2093
+ createdAt: string;
2094
+ updatedAt: string;
2095
+ deletedAt: string;
2096
+ name: string;
2097
+ id: string;
2098
+ slug: string;
2099
+ logoUrl: string | null;
2100
+ siteUrl: string;
2101
+ domain: string;
2102
+ metaPixelId: string | null;
2103
+ };
2104
+ deliveryZone: {
2105
+ deliveryCost: number;
2106
+ freeShippingThreshold: number;
2107
+ createdAt: string;
2108
+ updatedAt: string;
2109
+ deletedAt: string;
2110
+ state: {
2111
+ createdAt: string;
2112
+ updatedAt: string;
2113
+ deletedAt: string;
2114
+ name: string;
2115
+ id: string;
2116
+ isActive: boolean;
2117
+ };
2118
+ name: string;
2119
+ id: string;
2120
+ brandId: string | null;
2121
+ stateId: string;
2122
+ allowCOD: boolean;
2123
+ allowOnline: boolean;
2124
+ waybillOnly: boolean;
2125
+ estimatedDays: number | null;
2126
+ isActive: boolean;
2127
+ };
2128
+ items: {
2129
+ priceAtPurchase: number;
2130
+ variant: {
2131
+ price: number;
2132
+ createdAt: string;
2133
+ updatedAt: string;
2134
+ deletedAt: string;
2135
+ product: {
2136
+ createdAt: string;
2137
+ updatedAt: string;
2138
+ deletedAt: string;
2139
+ name: string;
2140
+ id: string;
2141
+ slug: string;
2142
+ brandId: string;
2143
+ isActive: boolean;
2144
+ description: string | null;
2145
+ thumbnailUrl: string | null;
2146
+ quantityDiscounts: string | number | boolean | {
2147
+ [x: string]: string | number | boolean | /*elided*/ any | {
2148
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
2149
+ length: number;
2150
+ toString: never;
2151
+ toLocaleString: never;
2152
+ pop: never;
2153
+ push: never;
2154
+ concat: never;
2155
+ join: never;
2156
+ reverse: never;
2157
+ shift: never;
2158
+ slice: never;
2159
+ sort: never;
2160
+ splice: never;
2161
+ unshift: never;
2162
+ indexOf: never;
2163
+ lastIndexOf: never;
2164
+ every: never;
2165
+ some: never;
2166
+ forEach: never;
2167
+ map: never;
2168
+ filter: never;
2169
+ reduce: never;
2170
+ reduceRight: never;
2171
+ find: never;
2172
+ findIndex: never;
2173
+ fill: never;
2174
+ copyWithin: never;
2175
+ entries: never;
2176
+ keys: never;
2177
+ values: never;
2178
+ includes: never;
2179
+ flatMap: never;
2180
+ flat: never;
2181
+ [Symbol.iterator]: never;
2182
+ readonly [Symbol.unscopables]: {
2183
+ [x: number]: boolean;
2184
+ length?: boolean;
2185
+ toString?: boolean;
2186
+ toLocaleString?: boolean;
2187
+ pop?: boolean;
2188
+ push?: boolean;
2189
+ concat?: boolean;
2190
+ join?: boolean;
2191
+ reverse?: boolean;
2192
+ shift?: boolean;
2193
+ slice?: boolean;
2194
+ sort?: boolean;
2195
+ splice?: boolean;
2196
+ unshift?: boolean;
2197
+ indexOf?: boolean;
2198
+ lastIndexOf?: boolean;
2199
+ every?: boolean;
2200
+ some?: boolean;
2201
+ forEach?: boolean;
2202
+ map?: boolean;
2203
+ filter?: boolean;
2204
+ reduce?: boolean;
2205
+ reduceRight?: boolean;
2206
+ find?: boolean;
2207
+ findIndex?: boolean;
2208
+ fill?: boolean;
2209
+ copyWithin?: boolean;
2210
+ entries?: boolean;
2211
+ keys?: boolean;
2212
+ values?: boolean;
2213
+ includes?: boolean;
2214
+ flatMap?: boolean;
2215
+ flat?: boolean;
2216
+ };
2217
+ };
2218
+ } | {
2219
+ [x: number]: string | number | boolean | {
2220
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
2221
+ } | /*elided*/ any;
2222
+ length: number;
2223
+ toString: never;
2224
+ toLocaleString: never;
2225
+ pop: never;
2226
+ push: never;
2227
+ concat: never;
2228
+ join: never;
2229
+ reverse: never;
2230
+ shift: never;
2231
+ slice: never;
2232
+ sort: never;
2233
+ splice: never;
2234
+ unshift: never;
2235
+ indexOf: never;
2236
+ lastIndexOf: never;
2237
+ every: never;
2238
+ some: never;
2239
+ forEach: never;
2240
+ map: never;
2241
+ filter: never;
2242
+ reduce: never;
2243
+ reduceRight: never;
2244
+ find: never;
2245
+ findIndex: never;
2246
+ fill: never;
2247
+ copyWithin: never;
2248
+ entries: never;
2249
+ keys: never;
2250
+ values: never;
2251
+ includes: never;
2252
+ flatMap: never;
2253
+ flat: never;
2254
+ [Symbol.iterator]: never;
2255
+ readonly [Symbol.unscopables]: {
2256
+ [x: number]: boolean;
2257
+ length?: boolean;
2258
+ toString?: boolean;
2259
+ toLocaleString?: boolean;
2260
+ pop?: boolean;
2261
+ push?: boolean;
2262
+ concat?: boolean;
2263
+ join?: boolean;
2264
+ reverse?: boolean;
2265
+ shift?: boolean;
2266
+ slice?: boolean;
2267
+ sort?: boolean;
2268
+ splice?: boolean;
2269
+ unshift?: boolean;
2270
+ indexOf?: boolean;
2271
+ lastIndexOf?: boolean;
2272
+ every?: boolean;
2273
+ some?: boolean;
2274
+ forEach?: boolean;
2275
+ map?: boolean;
2276
+ filter?: boolean;
2277
+ reduce?: boolean;
2278
+ reduceRight?: boolean;
2279
+ find?: boolean;
2280
+ findIndex?: boolean;
2281
+ fill?: boolean;
2282
+ copyWithin?: boolean;
2283
+ entries?: boolean;
2284
+ keys?: boolean;
2285
+ values?: boolean;
2286
+ includes?: boolean;
2287
+ flatMap?: boolean;
2288
+ flat?: boolean;
2289
+ };
2290
+ };
2291
+ };
2292
+ name: string | null;
2293
+ id: string;
2294
+ isActive: boolean;
2295
+ thumbnailUrl: string | null;
2296
+ productId: string;
2297
+ sku: string;
2298
+ trackInventory: boolean;
2299
+ lowStockThreshold: number | null;
2300
+ };
2301
+ warehouse: {
2302
+ createdAt: string;
2303
+ updatedAt: string;
2304
+ deletedAt: string;
2305
+ name: string;
2306
+ id: string;
2307
+ isActive: boolean;
2308
+ address: string | null;
2309
+ city: string | null;
2310
+ state: string | null;
2311
+ };
2312
+ id: string;
2313
+ orderId: string;
2314
+ variantId: string;
2315
+ warehouseId: string | null;
2316
+ quantity: number;
2317
+ }[];
2318
+ id: string;
2319
+ email: string | null;
2320
+ brandId: string;
2321
+ deliveryZoneId: string;
2322
+ recoveryAttempts: number;
2323
+ recoveryDiscountCodeId: string | null;
2324
+ wasRecovered: boolean;
2325
+ estimatedDays: number | null;
2326
+ orderNumber: number;
2327
+ firstName: string;
2328
+ lastName: string;
2329
+ phone: string;
2330
+ address: string;
2331
+ city: string;
2332
+ discountCodeId: string | null;
2333
+ paymentMethod: import("@prisma/client").$Enums.PaymentMethod;
2334
+ paystackReference: string | null;
2335
+ status: import("@prisma/client").$Enums.OrderStatus;
2336
+ cancellationReason: string | null;
2337
+ prospectReason: import("@prisma/client").$Enums.ProspectReason | null;
2338
+ userActionToken: string;
2339
+ }>;