hey-pharmacist-ecommerce 1.0.4 → 1.0.6

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