@instockng/api-client 1.0.21 → 1.0.24

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.
@@ -5,7 +5,7 @@
5
5
  * providing end-to-end type safety without code generation.
6
6
  */
7
7
  import { UseQueryOptions } from '@tanstack/react-query';
8
- import { fetchProductsByBrand, fetchProductBySlug } from '../../fetchers/products';
8
+ import { fetchProductsByBrand, fetchProductBySlug, fetchProductAddons } from '../../fetchers/products';
9
9
  /**
10
10
  * Hook to get products by brand using RPC
11
11
  *
@@ -19,6 +19,156 @@ import { fetchProductsByBrand, fetchProductBySlug } from '../../fetchers/product
19
19
  * ```
20
20
  */
21
21
  export declare function useGetProducts(brandId: string, options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof fetchProductsByBrand>>, Error>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
22
+ id: string;
23
+ name: string;
24
+ slug: string;
25
+ description: string;
26
+ thumbnailUrl: string;
27
+ quantityDiscounts: string | number | boolean | {
28
+ [x: string]: string | number | boolean | /*elided*/ any | {
29
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
30
+ length: number;
31
+ toString: never;
32
+ toLocaleString: never;
33
+ pop: never;
34
+ push: never;
35
+ concat: never;
36
+ join: never;
37
+ reverse: never;
38
+ shift: never;
39
+ slice: never;
40
+ sort: never;
41
+ splice: never;
42
+ unshift: never;
43
+ indexOf: never;
44
+ lastIndexOf: never;
45
+ every: never;
46
+ some: never;
47
+ forEach: never;
48
+ map: never;
49
+ filter: never;
50
+ reduce: never;
51
+ reduceRight: never;
52
+ find: never;
53
+ findIndex: never;
54
+ fill: never;
55
+ copyWithin: never;
56
+ entries: never;
57
+ keys: never;
58
+ values: never;
59
+ includes: never;
60
+ flatMap: never;
61
+ flat: never;
62
+ [Symbol.iterator]: never;
63
+ readonly [Symbol.unscopables]: {
64
+ [x: number]: boolean;
65
+ length?: boolean;
66
+ toString?: boolean;
67
+ toLocaleString?: boolean;
68
+ pop?: boolean;
69
+ push?: boolean;
70
+ concat?: boolean;
71
+ join?: boolean;
72
+ reverse?: boolean;
73
+ shift?: boolean;
74
+ slice?: boolean;
75
+ sort?: boolean;
76
+ splice?: boolean;
77
+ unshift?: boolean;
78
+ indexOf?: boolean;
79
+ lastIndexOf?: boolean;
80
+ every?: boolean;
81
+ some?: boolean;
82
+ forEach?: boolean;
83
+ map?: boolean;
84
+ filter?: boolean;
85
+ reduce?: boolean;
86
+ reduceRight?: boolean;
87
+ find?: boolean;
88
+ findIndex?: boolean;
89
+ fill?: boolean;
90
+ copyWithin?: boolean;
91
+ entries?: boolean;
92
+ keys?: boolean;
93
+ values?: boolean;
94
+ includes?: boolean;
95
+ flatMap?: boolean;
96
+ flat?: boolean;
97
+ };
98
+ };
99
+ } | {
100
+ [x: number]: string | number | boolean | {
101
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
102
+ } | /*elided*/ any;
103
+ length: number;
104
+ toString: never;
105
+ toLocaleString: never;
106
+ pop: never;
107
+ push: never;
108
+ concat: never;
109
+ join: never;
110
+ reverse: never;
111
+ shift: never;
112
+ slice: never;
113
+ sort: never;
114
+ splice: never;
115
+ unshift: never;
116
+ indexOf: never;
117
+ lastIndexOf: never;
118
+ every: never;
119
+ some: never;
120
+ forEach: never;
121
+ map: never;
122
+ filter: never;
123
+ reduce: never;
124
+ reduceRight: never;
125
+ find: never;
126
+ findIndex: never;
127
+ fill: never;
128
+ copyWithin: never;
129
+ entries: never;
130
+ keys: never;
131
+ values: never;
132
+ includes: never;
133
+ flatMap: never;
134
+ flat: never;
135
+ [Symbol.iterator]: never;
136
+ readonly [Symbol.unscopables]: {
137
+ [x: number]: boolean;
138
+ length?: boolean;
139
+ toString?: boolean;
140
+ toLocaleString?: boolean;
141
+ pop?: boolean;
142
+ push?: boolean;
143
+ concat?: boolean;
144
+ join?: boolean;
145
+ reverse?: boolean;
146
+ shift?: boolean;
147
+ slice?: boolean;
148
+ sort?: boolean;
149
+ splice?: boolean;
150
+ unshift?: boolean;
151
+ indexOf?: boolean;
152
+ lastIndexOf?: boolean;
153
+ every?: boolean;
154
+ some?: boolean;
155
+ forEach?: boolean;
156
+ map?: boolean;
157
+ filter?: boolean;
158
+ reduce?: boolean;
159
+ reduceRight?: boolean;
160
+ find?: boolean;
161
+ findIndex?: boolean;
162
+ fill?: boolean;
163
+ copyWithin?: boolean;
164
+ entries?: boolean;
165
+ keys?: boolean;
166
+ values?: boolean;
167
+ includes?: boolean;
168
+ flatMap?: boolean;
169
+ flat?: boolean;
170
+ };
171
+ };
22
172
  brand: {
23
173
  createdAt: string;
24
174
  updatedAt: string;
@@ -34,30 +184,331 @@ export declare function useGetProducts(brandId: string, options?: Omit<UseQueryO
34
184
  paystackPublicKey: string | null;
35
185
  paystackSecretKey: string | null;
36
186
  };
37
- variants: {
38
- createdAt: string;
39
- updatedAt: string;
40
- price: number;
41
- deletedAt: string;
42
- id: string;
43
- name: string | null;
44
- isActive: boolean;
45
- thumbnailUrl: string | null;
46
- productId: string;
47
- sku: string;
48
- trackInventory: boolean;
49
- lowStockThreshold: number | null;
50
- }[];
187
+ variants: {
188
+ createdAt: string;
189
+ updatedAt: string;
190
+ price: number;
191
+ compareAtPrice: number;
192
+ deletedAt: string;
193
+ id: string;
194
+ name: string | null;
195
+ isActive: boolean;
196
+ thumbnailUrl: string | null;
197
+ productId: string;
198
+ sku: string;
199
+ trackInventory: boolean;
200
+ lowStockThreshold: number | null;
201
+ }[];
202
+ media: string | number | true | {
203
+ [x: string]: string | number | boolean | /*elided*/ any | {
204
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
205
+ length: number;
206
+ toString: never;
207
+ toLocaleString: never;
208
+ pop: never;
209
+ push: never;
210
+ concat: never;
211
+ join: never;
212
+ reverse: never;
213
+ shift: never;
214
+ slice: never;
215
+ sort: never;
216
+ splice: never;
217
+ unshift: never;
218
+ indexOf: never;
219
+ lastIndexOf: never;
220
+ every: never;
221
+ some: never;
222
+ forEach: never;
223
+ map: never;
224
+ filter: never;
225
+ reduce: never;
226
+ reduceRight: never;
227
+ find: never;
228
+ findIndex: never;
229
+ fill: never;
230
+ copyWithin: never;
231
+ entries: never;
232
+ keys: never;
233
+ values: never;
234
+ includes: never;
235
+ flatMap: never;
236
+ flat: never;
237
+ [Symbol.iterator]: never;
238
+ readonly [Symbol.unscopables]: {
239
+ [x: number]: boolean;
240
+ length?: boolean;
241
+ toString?: boolean;
242
+ toLocaleString?: boolean;
243
+ pop?: boolean;
244
+ push?: boolean;
245
+ concat?: boolean;
246
+ join?: boolean;
247
+ reverse?: boolean;
248
+ shift?: boolean;
249
+ slice?: boolean;
250
+ sort?: boolean;
251
+ splice?: boolean;
252
+ unshift?: boolean;
253
+ indexOf?: boolean;
254
+ lastIndexOf?: boolean;
255
+ every?: boolean;
256
+ some?: boolean;
257
+ forEach?: boolean;
258
+ map?: boolean;
259
+ filter?: boolean;
260
+ reduce?: boolean;
261
+ reduceRight?: boolean;
262
+ find?: boolean;
263
+ findIndex?: boolean;
264
+ fill?: boolean;
265
+ copyWithin?: boolean;
266
+ entries?: boolean;
267
+ keys?: boolean;
268
+ values?: boolean;
269
+ includes?: boolean;
270
+ flatMap?: boolean;
271
+ flat?: boolean;
272
+ };
273
+ };
274
+ } | {
275
+ [x: number]: string | number | boolean | {
276
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
277
+ } | /*elided*/ any;
278
+ length: number;
279
+ toString: never;
280
+ toLocaleString: never;
281
+ pop: never;
282
+ push: never;
283
+ concat: never;
284
+ join: never;
285
+ reverse: never;
286
+ shift: never;
287
+ slice: never;
288
+ sort: never;
289
+ splice: never;
290
+ unshift: never;
291
+ indexOf: never;
292
+ lastIndexOf: never;
293
+ every: never;
294
+ some: never;
295
+ forEach: never;
296
+ map: never;
297
+ filter: never;
298
+ reduce: never;
299
+ reduceRight: never;
300
+ find: never;
301
+ findIndex: never;
302
+ fill: never;
303
+ copyWithin: never;
304
+ entries: never;
305
+ keys: never;
306
+ values: never;
307
+ includes: never;
308
+ flatMap: never;
309
+ flat: never;
310
+ [Symbol.iterator]: never;
311
+ readonly [Symbol.unscopables]: {
312
+ [x: number]: boolean;
313
+ length?: boolean;
314
+ toString?: boolean;
315
+ toLocaleString?: boolean;
316
+ pop?: boolean;
317
+ push?: boolean;
318
+ concat?: boolean;
319
+ join?: boolean;
320
+ reverse?: boolean;
321
+ shift?: boolean;
322
+ slice?: boolean;
323
+ sort?: boolean;
324
+ splice?: boolean;
325
+ unshift?: boolean;
326
+ indexOf?: boolean;
327
+ lastIndexOf?: boolean;
328
+ every?: boolean;
329
+ some?: boolean;
330
+ forEach?: boolean;
331
+ map?: boolean;
332
+ filter?: boolean;
333
+ reduce?: boolean;
334
+ reduceRight?: boolean;
335
+ find?: boolean;
336
+ findIndex?: boolean;
337
+ fill?: boolean;
338
+ copyWithin?: boolean;
339
+ entries?: boolean;
340
+ keys?: boolean;
341
+ values?: boolean;
342
+ includes?: boolean;
343
+ flatMap?: boolean;
344
+ flat?: boolean;
345
+ };
346
+ };
347
+ features: string;
348
+ faqs: string | number | true | {
349
+ [x: string]: string | number | boolean | /*elided*/ any | {
350
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
351
+ length: number;
352
+ toString: never;
353
+ toLocaleString: never;
354
+ pop: never;
355
+ push: never;
356
+ concat: never;
357
+ join: never;
358
+ reverse: never;
359
+ shift: never;
360
+ slice: never;
361
+ sort: never;
362
+ splice: never;
363
+ unshift: never;
364
+ indexOf: never;
365
+ lastIndexOf: never;
366
+ every: never;
367
+ some: never;
368
+ forEach: never;
369
+ map: never;
370
+ filter: never;
371
+ reduce: never;
372
+ reduceRight: never;
373
+ find: never;
374
+ findIndex: never;
375
+ fill: never;
376
+ copyWithin: never;
377
+ entries: never;
378
+ keys: never;
379
+ values: never;
380
+ includes: never;
381
+ flatMap: never;
382
+ flat: never;
383
+ [Symbol.iterator]: never;
384
+ readonly [Symbol.unscopables]: {
385
+ [x: number]: boolean;
386
+ length?: boolean;
387
+ toString?: boolean;
388
+ toLocaleString?: boolean;
389
+ pop?: boolean;
390
+ push?: boolean;
391
+ concat?: boolean;
392
+ join?: boolean;
393
+ reverse?: boolean;
394
+ shift?: boolean;
395
+ slice?: boolean;
396
+ sort?: boolean;
397
+ splice?: boolean;
398
+ unshift?: boolean;
399
+ indexOf?: boolean;
400
+ lastIndexOf?: boolean;
401
+ every?: boolean;
402
+ some?: boolean;
403
+ forEach?: boolean;
404
+ map?: boolean;
405
+ filter?: boolean;
406
+ reduce?: boolean;
407
+ reduceRight?: boolean;
408
+ find?: boolean;
409
+ findIndex?: boolean;
410
+ fill?: boolean;
411
+ copyWithin?: boolean;
412
+ entries?: boolean;
413
+ keys?: boolean;
414
+ values?: boolean;
415
+ includes?: boolean;
416
+ flatMap?: boolean;
417
+ flat?: boolean;
418
+ };
419
+ };
420
+ } | {
421
+ [x: number]: string | number | boolean | {
422
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
423
+ } | /*elided*/ any;
424
+ length: number;
425
+ toString: never;
426
+ toLocaleString: never;
427
+ pop: never;
428
+ push: never;
429
+ concat: never;
430
+ join: never;
431
+ reverse: never;
432
+ shift: never;
433
+ slice: never;
434
+ sort: never;
435
+ splice: never;
436
+ unshift: never;
437
+ indexOf: never;
438
+ lastIndexOf: never;
439
+ every: never;
440
+ some: never;
441
+ forEach: never;
442
+ map: never;
443
+ filter: never;
444
+ reduce: never;
445
+ reduceRight: never;
446
+ find: never;
447
+ findIndex: never;
448
+ fill: never;
449
+ copyWithin: never;
450
+ entries: never;
451
+ keys: never;
452
+ values: never;
453
+ includes: never;
454
+ flatMap: never;
455
+ flat: never;
456
+ [Symbol.iterator]: never;
457
+ readonly [Symbol.unscopables]: {
458
+ [x: number]: boolean;
459
+ length?: boolean;
460
+ toString?: boolean;
461
+ toLocaleString?: boolean;
462
+ pop?: boolean;
463
+ push?: boolean;
464
+ concat?: boolean;
465
+ join?: boolean;
466
+ reverse?: boolean;
467
+ shift?: boolean;
468
+ slice?: boolean;
469
+ sort?: boolean;
470
+ splice?: boolean;
471
+ unshift?: boolean;
472
+ indexOf?: boolean;
473
+ lastIndexOf?: boolean;
474
+ every?: boolean;
475
+ some?: boolean;
476
+ forEach?: boolean;
477
+ map?: boolean;
478
+ filter?: boolean;
479
+ reduce?: boolean;
480
+ reduceRight?: boolean;
481
+ find?: boolean;
482
+ findIndex?: boolean;
483
+ fill?: boolean;
484
+ copyWithin?: boolean;
485
+ entries?: boolean;
486
+ keys?: boolean;
487
+ values?: boolean;
488
+ includes?: boolean;
489
+ flatMap?: boolean;
490
+ flat?: boolean;
491
+ };
492
+ };
493
+ }[], Error>;
494
+ /**
495
+ * Hook to get a single product by slug using RPC
496
+ *
497
+ * @param slug - Product slug
498
+ * @param options - React Query options
499
+ *
500
+ * @example
501
+ * ```tsx
502
+ * const { data: product, isLoading } = useGetProduct('cotton-t-shirt');
503
+ * console.log(product?.name); // Fully typed!
504
+ * ```
505
+ */
506
+ export declare function useGetProduct(slug: string, options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof fetchProductBySlug>>, Error>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
51
507
  id: string;
52
508
  name: string;
53
509
  slug: string;
54
- createdAt: string;
55
- updatedAt: string;
56
- deletedAt: string;
57
- brandId: string;
58
- isActive: boolean;
59
- description: string | null;
60
- thumbnailUrl: string | null;
510
+ description: string;
511
+ thumbnailUrl: string;
61
512
  quantityDiscounts: string | number | boolean | {
62
513
  [x: string]: string | number | boolean | /*elided*/ any | {
63
514
  [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
@@ -203,20 +654,6 @@ export declare function useGetProducts(brandId: string, options?: Omit<UseQueryO
203
654
  flat?: boolean;
204
655
  };
205
656
  };
206
- }[], Error>;
207
- /**
208
- * Hook to get a single product by slug using RPC
209
- *
210
- * @param slug - Product slug
211
- * @param options - React Query options
212
- *
213
- * @example
214
- * ```tsx
215
- * const { data: product, isLoading } = useGetProduct('cotton-t-shirt');
216
- * console.log(product?.name); // Fully typed!
217
- * ```
218
- */
219
- export declare function useGetProduct(slug: string, options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof fetchProductBySlug>>, Error>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
220
657
  brand: {
221
658
  createdAt: string;
222
659
  updatedAt: string;
@@ -236,6 +673,7 @@ export declare function useGetProduct(slug: string, options?: Omit<UseQueryOptio
236
673
  createdAt: string;
237
674
  updatedAt: string;
238
675
  price: number;
676
+ compareAtPrice: number;
239
677
  deletedAt: string;
240
678
  id: string;
241
679
  name: string | null;
@@ -246,17 +684,153 @@ export declare function useGetProduct(slug: string, options?: Omit<UseQueryOptio
246
684
  trackInventory: boolean;
247
685
  lowStockThreshold: number | null;
248
686
  }[];
249
- id: string;
250
- name: string;
251
- slug: string;
252
- createdAt: string;
253
- updatedAt: string;
254
- deletedAt: string;
255
- brandId: string;
256
- isActive: boolean;
257
- description: string | null;
258
- thumbnailUrl: string | null;
259
- quantityDiscounts: string | number | boolean | {
687
+ media: string | number | true | {
688
+ [x: string]: string | number | boolean | /*elided*/ any | {
689
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
690
+ length: number;
691
+ toString: never;
692
+ toLocaleString: never;
693
+ pop: never;
694
+ push: never;
695
+ concat: never;
696
+ join: never;
697
+ reverse: never;
698
+ shift: never;
699
+ slice: never;
700
+ sort: never;
701
+ splice: never;
702
+ unshift: never;
703
+ indexOf: never;
704
+ lastIndexOf: never;
705
+ every: never;
706
+ some: never;
707
+ forEach: never;
708
+ map: never;
709
+ filter: never;
710
+ reduce: never;
711
+ reduceRight: never;
712
+ find: never;
713
+ findIndex: never;
714
+ fill: never;
715
+ copyWithin: never;
716
+ entries: never;
717
+ keys: never;
718
+ values: never;
719
+ includes: never;
720
+ flatMap: never;
721
+ flat: never;
722
+ [Symbol.iterator]: never;
723
+ readonly [Symbol.unscopables]: {
724
+ [x: number]: boolean;
725
+ length?: boolean;
726
+ toString?: boolean;
727
+ toLocaleString?: boolean;
728
+ pop?: boolean;
729
+ push?: boolean;
730
+ concat?: boolean;
731
+ join?: boolean;
732
+ reverse?: boolean;
733
+ shift?: boolean;
734
+ slice?: boolean;
735
+ sort?: boolean;
736
+ splice?: boolean;
737
+ unshift?: boolean;
738
+ indexOf?: boolean;
739
+ lastIndexOf?: boolean;
740
+ every?: boolean;
741
+ some?: boolean;
742
+ forEach?: boolean;
743
+ map?: boolean;
744
+ filter?: boolean;
745
+ reduce?: boolean;
746
+ reduceRight?: boolean;
747
+ find?: boolean;
748
+ findIndex?: boolean;
749
+ fill?: boolean;
750
+ copyWithin?: boolean;
751
+ entries?: boolean;
752
+ keys?: boolean;
753
+ values?: boolean;
754
+ includes?: boolean;
755
+ flatMap?: boolean;
756
+ flat?: boolean;
757
+ };
758
+ };
759
+ } | {
760
+ [x: number]: string | number | boolean | {
761
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
762
+ } | /*elided*/ any;
763
+ length: number;
764
+ toString: never;
765
+ toLocaleString: never;
766
+ pop: never;
767
+ push: never;
768
+ concat: never;
769
+ join: never;
770
+ reverse: never;
771
+ shift: never;
772
+ slice: never;
773
+ sort: never;
774
+ splice: never;
775
+ unshift: never;
776
+ indexOf: never;
777
+ lastIndexOf: never;
778
+ every: never;
779
+ some: never;
780
+ forEach: never;
781
+ map: never;
782
+ filter: never;
783
+ reduce: never;
784
+ reduceRight: never;
785
+ find: never;
786
+ findIndex: never;
787
+ fill: never;
788
+ copyWithin: never;
789
+ entries: never;
790
+ keys: never;
791
+ values: never;
792
+ includes: never;
793
+ flatMap: never;
794
+ flat: never;
795
+ [Symbol.iterator]: never;
796
+ readonly [Symbol.unscopables]: {
797
+ [x: number]: boolean;
798
+ length?: boolean;
799
+ toString?: boolean;
800
+ toLocaleString?: boolean;
801
+ pop?: boolean;
802
+ push?: boolean;
803
+ concat?: boolean;
804
+ join?: boolean;
805
+ reverse?: boolean;
806
+ shift?: boolean;
807
+ slice?: boolean;
808
+ sort?: boolean;
809
+ splice?: boolean;
810
+ unshift?: boolean;
811
+ indexOf?: boolean;
812
+ lastIndexOf?: boolean;
813
+ every?: boolean;
814
+ some?: boolean;
815
+ forEach?: boolean;
816
+ map?: boolean;
817
+ filter?: boolean;
818
+ reduce?: boolean;
819
+ reduceRight?: boolean;
820
+ find?: boolean;
821
+ findIndex?: boolean;
822
+ fill?: boolean;
823
+ copyWithin?: boolean;
824
+ entries?: boolean;
825
+ keys?: boolean;
826
+ values?: boolean;
827
+ includes?: boolean;
828
+ flatMap?: boolean;
829
+ flat?: boolean;
830
+ };
831
+ };
832
+ features: string;
833
+ faqs: string | number | true | {
260
834
  [x: string]: string | number | boolean | /*elided*/ any | {
261
835
  [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
262
836
  length: number;
@@ -402,3 +976,10 @@ export declare function useGetProduct(slug: string, options?: Omit<UseQueryOptio
402
976
  };
403
977
  };
404
978
  }, Error>;
979
+ /**
980
+ * Hook to get product add-ons
981
+ *
982
+ * @param slug - Product slug
983
+ * @param limit - Max number of add-ons
984
+ */
985
+ export declare function useGetProductAddOns(slug: string, limit?: number, options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof fetchProductAddons>>, Error>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<any, Error>;