@instockng/api-client 1.0.20 → 1.0.21

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.
@@ -548,3 +548,197 @@ export declare function confirmOrder(orderId: string, token: string): Promise<{
548
548
  prospectReason: import("@prisma/client").$Enums.ProspectReason | null;
549
549
  userActionToken: string;
550
550
  }>;
551
+ /**
552
+ * Fetch order recommendations for post-purchase upsell
553
+ *
554
+ * @param orderId - Order UUID
555
+ * @param token - User action token
556
+ * @param limit - Maximum number of recommendations
557
+ * @returns Array of recommended products
558
+ */
559
+ export declare function fetchOrderRecommendations(orderId: string, token: string, limit?: number): Promise<{
560
+ brand: {
561
+ createdAt: string;
562
+ updatedAt: string;
563
+ deletedAt: string;
564
+ id: string;
565
+ name: string;
566
+ slug: string;
567
+ logoUrl: string | null;
568
+ siteUrl: string;
569
+ domain: string;
570
+ metaPixelId: string | null;
571
+ tiktokPixelId: string | null;
572
+ paystackPublicKey: string | null;
573
+ paystackSecretKey: string | null;
574
+ };
575
+ variants: {
576
+ createdAt: string;
577
+ updatedAt: string;
578
+ price: number;
579
+ deletedAt: string;
580
+ id: string;
581
+ name: string | null;
582
+ isActive: boolean;
583
+ thumbnailUrl: string | null;
584
+ productId: string;
585
+ sku: string;
586
+ trackInventory: boolean;
587
+ lowStockThreshold: number | null;
588
+ }[];
589
+ id: string;
590
+ name: string;
591
+ slug: string;
592
+ createdAt: string;
593
+ updatedAt: string;
594
+ deletedAt: string;
595
+ brandId: string;
596
+ isActive: boolean;
597
+ description: string | null;
598
+ thumbnailUrl: string | null;
599
+ quantityDiscounts: string | number | boolean | {
600
+ [x: string]: string | number | boolean | /*elided*/ any | {
601
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
602
+ length: number;
603
+ toString: never;
604
+ toLocaleString: never;
605
+ pop: never;
606
+ push: never;
607
+ concat: never;
608
+ join: never;
609
+ reverse: never;
610
+ shift: never;
611
+ slice: never;
612
+ sort: never;
613
+ splice: never;
614
+ unshift: never;
615
+ indexOf: never;
616
+ lastIndexOf: never;
617
+ every: never;
618
+ some: never;
619
+ forEach: never;
620
+ map: never;
621
+ filter: never;
622
+ reduce: never;
623
+ reduceRight: never;
624
+ find: never;
625
+ findIndex: never;
626
+ fill: never;
627
+ copyWithin: never;
628
+ entries: never;
629
+ keys: never;
630
+ values: never;
631
+ includes: never;
632
+ flatMap: never;
633
+ flat: never;
634
+ [Symbol.iterator]: never;
635
+ readonly [Symbol.unscopables]: {
636
+ [x: number]: boolean;
637
+ length?: boolean;
638
+ toString?: boolean;
639
+ toLocaleString?: boolean;
640
+ pop?: boolean;
641
+ push?: boolean;
642
+ concat?: boolean;
643
+ join?: boolean;
644
+ reverse?: boolean;
645
+ shift?: boolean;
646
+ slice?: boolean;
647
+ sort?: boolean;
648
+ splice?: boolean;
649
+ unshift?: boolean;
650
+ indexOf?: boolean;
651
+ lastIndexOf?: boolean;
652
+ every?: boolean;
653
+ some?: boolean;
654
+ forEach?: boolean;
655
+ map?: boolean;
656
+ filter?: boolean;
657
+ reduce?: boolean;
658
+ reduceRight?: boolean;
659
+ find?: boolean;
660
+ findIndex?: boolean;
661
+ fill?: boolean;
662
+ copyWithin?: boolean;
663
+ entries?: boolean;
664
+ keys?: boolean;
665
+ values?: boolean;
666
+ includes?: boolean;
667
+ flatMap?: boolean;
668
+ flat?: boolean;
669
+ };
670
+ };
671
+ } | {
672
+ [x: number]: string | number | boolean | {
673
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
674
+ } | /*elided*/ any;
675
+ length: number;
676
+ toString: never;
677
+ toLocaleString: never;
678
+ pop: never;
679
+ push: never;
680
+ concat: never;
681
+ join: never;
682
+ reverse: never;
683
+ shift: never;
684
+ slice: never;
685
+ sort: never;
686
+ splice: never;
687
+ unshift: never;
688
+ indexOf: never;
689
+ lastIndexOf: never;
690
+ every: never;
691
+ some: never;
692
+ forEach: never;
693
+ map: never;
694
+ filter: never;
695
+ reduce: never;
696
+ reduceRight: never;
697
+ find: never;
698
+ findIndex: never;
699
+ fill: never;
700
+ copyWithin: never;
701
+ entries: never;
702
+ keys: never;
703
+ values: never;
704
+ includes: never;
705
+ flatMap: never;
706
+ flat: never;
707
+ [Symbol.iterator]: never;
708
+ readonly [Symbol.unscopables]: {
709
+ [x: number]: boolean;
710
+ length?: boolean;
711
+ toString?: boolean;
712
+ toLocaleString?: boolean;
713
+ pop?: boolean;
714
+ push?: boolean;
715
+ concat?: boolean;
716
+ join?: boolean;
717
+ reverse?: boolean;
718
+ shift?: boolean;
719
+ slice?: boolean;
720
+ sort?: boolean;
721
+ splice?: boolean;
722
+ unshift?: boolean;
723
+ indexOf?: boolean;
724
+ lastIndexOf?: boolean;
725
+ every?: boolean;
726
+ some?: boolean;
727
+ forEach?: boolean;
728
+ map?: boolean;
729
+ filter?: boolean;
730
+ reduce?: boolean;
731
+ reduceRight?: boolean;
732
+ find?: boolean;
733
+ findIndex?: boolean;
734
+ fill?: boolean;
735
+ copyWithin?: boolean;
736
+ entries?: boolean;
737
+ keys?: boolean;
738
+ values?: boolean;
739
+ includes?: boolean;
740
+ flatMap?: boolean;
741
+ flat?: boolean;
742
+ };
743
+ };
744
+ }[]>;
@@ -42,3 +42,23 @@ export async function confirmOrder(orderId, token) {
42
42
  }
43
43
  return res.json();
44
44
  }
45
+ /**
46
+ * Fetch order recommendations for post-purchase upsell
47
+ *
48
+ * @param orderId - Order UUID
49
+ * @param token - User action token
50
+ * @param limit - Maximum number of recommendations
51
+ * @returns Array of recommended products
52
+ */
53
+ export async function fetchOrderRecommendations(orderId, token, limit = 4) {
54
+ const clients = createRpcClients(API_URL);
55
+ const res = await clients.orders[':id'][':token'].recommendations.$get({
56
+ param: { id: orderId, token },
57
+ // @ts-ignore - Hono RPC type inference issue with query parameters
58
+ query: { limit: String(limit) },
59
+ });
60
+ if (!res.ok) {
61
+ throw new Error(`Failed to fetch order recommendations: ${res.statusText}`);
62
+ }
63
+ return res.json();
64
+ }
@@ -5,7 +5,7 @@
5
5
  * providing end-to-end type safety without code generation.
6
6
  */
7
7
  import { UseQueryOptions, UseMutationOptions } from '@tanstack/react-query';
8
- import { fetchOrder, confirmOrder } from '../../fetchers/orders';
8
+ import { fetchOrder, confirmOrder, fetchOrderRecommendations } from '../../fetchers/orders';
9
9
  /**
10
10
  * Hook to get order by ID and token using RPC
11
11
  *
@@ -567,3 +567,203 @@ export declare function useConfirmOrder(options?: UseMutationOptions<Awaited<Ret
567
567
  orderId: string;
568
568
  token: string;
569
569
  }, unknown>;
570
+ /**
571
+ * Hook to get order recommendations for post-purchase upsell
572
+ *
573
+ * @param orderId - Order UUID
574
+ * @param token - User action token
575
+ * @param limit - Maximum number of recommendations (default: 4)
576
+ * @param options - React Query options
577
+ *
578
+ * @example
579
+ * ```tsx
580
+ * const { data: recommendations, isLoading } = useGetOrderRecommendations('order-123', 'token-456', 4);
581
+ * console.log(recommendations); // Array of products from same brand
582
+ * ```
583
+ */
584
+ export declare function useGetOrderRecommendations(orderId: string | null | undefined, token: string | null | undefined, limit?: number, options?: Omit<UseQueryOptions<Awaited<ReturnType<typeof fetchOrderRecommendations>>, Error>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
585
+ brand: {
586
+ createdAt: string;
587
+ updatedAt: string;
588
+ deletedAt: string;
589
+ id: string;
590
+ name: string;
591
+ slug: string;
592
+ logoUrl: string | null;
593
+ siteUrl: string;
594
+ domain: string;
595
+ metaPixelId: string | null;
596
+ tiktokPixelId: string | null;
597
+ paystackPublicKey: string | null;
598
+ paystackSecretKey: string | null;
599
+ };
600
+ variants: {
601
+ createdAt: string;
602
+ updatedAt: string;
603
+ price: number;
604
+ deletedAt: string;
605
+ id: string;
606
+ name: string | null;
607
+ isActive: boolean;
608
+ thumbnailUrl: string | null;
609
+ productId: string;
610
+ sku: string;
611
+ trackInventory: boolean;
612
+ lowStockThreshold: number | null;
613
+ }[];
614
+ id: string;
615
+ name: string;
616
+ slug: string;
617
+ createdAt: string;
618
+ updatedAt: string;
619
+ deletedAt: string;
620
+ brandId: string;
621
+ isActive: boolean;
622
+ description: string | null;
623
+ thumbnailUrl: string | null;
624
+ quantityDiscounts: string | number | boolean | {
625
+ [x: string]: string | number | boolean | /*elided*/ any | {
626
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
627
+ length: number;
628
+ toString: never;
629
+ toLocaleString: never;
630
+ pop: never;
631
+ push: never;
632
+ concat: never;
633
+ join: never;
634
+ reverse: never;
635
+ shift: never;
636
+ slice: never;
637
+ sort: never;
638
+ splice: never;
639
+ unshift: never;
640
+ indexOf: never;
641
+ lastIndexOf: never;
642
+ every: never;
643
+ some: never;
644
+ forEach: never;
645
+ map: never;
646
+ filter: never;
647
+ reduce: never;
648
+ reduceRight: never;
649
+ find: never;
650
+ findIndex: never;
651
+ fill: never;
652
+ copyWithin: never;
653
+ entries: never;
654
+ keys: never;
655
+ values: never;
656
+ includes: never;
657
+ flatMap: never;
658
+ flat: never;
659
+ [Symbol.iterator]: never;
660
+ readonly [Symbol.unscopables]: {
661
+ [x: number]: boolean;
662
+ length?: boolean;
663
+ toString?: boolean;
664
+ toLocaleString?: boolean;
665
+ pop?: boolean;
666
+ push?: boolean;
667
+ concat?: boolean;
668
+ join?: boolean;
669
+ reverse?: boolean;
670
+ shift?: boolean;
671
+ slice?: boolean;
672
+ sort?: boolean;
673
+ splice?: boolean;
674
+ unshift?: boolean;
675
+ indexOf?: boolean;
676
+ lastIndexOf?: boolean;
677
+ every?: boolean;
678
+ some?: boolean;
679
+ forEach?: boolean;
680
+ map?: boolean;
681
+ filter?: boolean;
682
+ reduce?: boolean;
683
+ reduceRight?: boolean;
684
+ find?: boolean;
685
+ findIndex?: boolean;
686
+ fill?: boolean;
687
+ copyWithin?: boolean;
688
+ entries?: boolean;
689
+ keys?: boolean;
690
+ values?: boolean;
691
+ includes?: boolean;
692
+ flatMap?: boolean;
693
+ flat?: boolean;
694
+ };
695
+ };
696
+ } | {
697
+ [x: number]: string | number | boolean | {
698
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
699
+ } | /*elided*/ any;
700
+ length: number;
701
+ toString: never;
702
+ toLocaleString: never;
703
+ pop: never;
704
+ push: never;
705
+ concat: never;
706
+ join: never;
707
+ reverse: never;
708
+ shift: never;
709
+ slice: never;
710
+ sort: never;
711
+ splice: never;
712
+ unshift: never;
713
+ indexOf: never;
714
+ lastIndexOf: never;
715
+ every: never;
716
+ some: never;
717
+ forEach: never;
718
+ map: never;
719
+ filter: never;
720
+ reduce: never;
721
+ reduceRight: never;
722
+ find: never;
723
+ findIndex: never;
724
+ fill: never;
725
+ copyWithin: never;
726
+ entries: never;
727
+ keys: never;
728
+ values: never;
729
+ includes: never;
730
+ flatMap: never;
731
+ flat: never;
732
+ [Symbol.iterator]: never;
733
+ readonly [Symbol.unscopables]: {
734
+ [x: number]: boolean;
735
+ length?: boolean;
736
+ toString?: boolean;
737
+ toLocaleString?: boolean;
738
+ pop?: boolean;
739
+ push?: boolean;
740
+ concat?: boolean;
741
+ join?: boolean;
742
+ reverse?: boolean;
743
+ shift?: boolean;
744
+ slice?: boolean;
745
+ sort?: boolean;
746
+ splice?: boolean;
747
+ unshift?: boolean;
748
+ indexOf?: boolean;
749
+ lastIndexOf?: boolean;
750
+ every?: boolean;
751
+ some?: boolean;
752
+ forEach?: boolean;
753
+ map?: boolean;
754
+ filter?: boolean;
755
+ reduce?: boolean;
756
+ reduceRight?: boolean;
757
+ find?: boolean;
758
+ findIndex?: boolean;
759
+ fill?: boolean;
760
+ copyWithin?: boolean;
761
+ entries?: boolean;
762
+ keys?: boolean;
763
+ values?: boolean;
764
+ includes?: boolean;
765
+ flatMap?: boolean;
766
+ flat?: boolean;
767
+ };
768
+ };
769
+ }[], Error>;
@@ -7,7 +7,7 @@
7
7
  import { useMutation } from '@tanstack/react-query';
8
8
  import { useQueryUnwrapped } from '../use-query-unwrapped';
9
9
  import { queryKeys } from '../../utils/query-keys';
10
- import { fetchOrder, confirmOrder } from '../../fetchers/orders';
10
+ import { fetchOrder, confirmOrder, fetchOrderRecommendations } from '../../fetchers/orders';
11
11
  /**
12
12
  * Hook to get order by ID and token using RPC
13
13
  *
@@ -48,3 +48,25 @@ export function useConfirmOrder(options) {
48
48
  ...options,
49
49
  });
50
50
  }
51
+ /**
52
+ * Hook to get order recommendations for post-purchase upsell
53
+ *
54
+ * @param orderId - Order UUID
55
+ * @param token - User action token
56
+ * @param limit - Maximum number of recommendations (default: 4)
57
+ * @param options - React Query options
58
+ *
59
+ * @example
60
+ * ```tsx
61
+ * const { data: recommendations, isLoading } = useGetOrderRecommendations('order-123', 'token-456', 4);
62
+ * console.log(recommendations); // Array of products from same brand
63
+ * ```
64
+ */
65
+ export function useGetOrderRecommendations(orderId, token, limit = 4, options) {
66
+ return useQueryUnwrapped({
67
+ queryKey: queryKeys.public.orders.recommendations(orderId, token, limit),
68
+ queryFn: () => fetchOrderRecommendations(orderId, token, limit),
69
+ enabled: !!orderId && !!token,
70
+ ...options,
71
+ });
72
+ }
@@ -3550,6 +3550,242 @@ export declare function createRpcClients(baseURL: string): {
3550
3550
  status: 500;
3551
3551
  };
3552
3552
  }>;
3553
+ } & {
3554
+ ":id": {
3555
+ ":token": {
3556
+ recommendations: import("hono/client").ClientRequest<{
3557
+ $get: {
3558
+ input: {
3559
+ param: {
3560
+ id: string;
3561
+ } & {
3562
+ token: string;
3563
+ };
3564
+ };
3565
+ output: {
3566
+ error: {
3567
+ code: string;
3568
+ message: string;
3569
+ };
3570
+ };
3571
+ outputFormat: "json";
3572
+ status: 404;
3573
+ } | {
3574
+ input: {
3575
+ param: {
3576
+ id: string;
3577
+ } & {
3578
+ token: string;
3579
+ };
3580
+ };
3581
+ output: {
3582
+ brand: {
3583
+ createdAt: string;
3584
+ updatedAt: string;
3585
+ deletedAt: string;
3586
+ id: string;
3587
+ name: string;
3588
+ slug: string;
3589
+ logoUrl: string | null;
3590
+ siteUrl: string;
3591
+ domain: string;
3592
+ metaPixelId: string | null;
3593
+ tiktokPixelId: string | null;
3594
+ paystackPublicKey: string | null;
3595
+ paystackSecretKey: string | null;
3596
+ };
3597
+ variants: {
3598
+ createdAt: string;
3599
+ updatedAt: string;
3600
+ price: number;
3601
+ deletedAt: string;
3602
+ id: string;
3603
+ name: string | null;
3604
+ isActive: boolean;
3605
+ thumbnailUrl: string | null;
3606
+ productId: string;
3607
+ sku: string;
3608
+ trackInventory: boolean;
3609
+ lowStockThreshold: number | null;
3610
+ }[];
3611
+ id: string;
3612
+ name: string;
3613
+ slug: string;
3614
+ createdAt: string;
3615
+ updatedAt: string;
3616
+ deletedAt: string;
3617
+ brandId: string;
3618
+ isActive: boolean;
3619
+ description: string | null;
3620
+ thumbnailUrl: string | null;
3621
+ quantityDiscounts: string | number | boolean | {
3622
+ [x: string]: string | number | boolean | /*elided*/ any | {
3623
+ [x: number]: string | number | boolean | /*elided*/ any | /*elided*/ any;
3624
+ length: number;
3625
+ toString: never;
3626
+ toLocaleString: never;
3627
+ pop: never;
3628
+ push: never;
3629
+ concat: never;
3630
+ join: never;
3631
+ reverse: never;
3632
+ shift: never;
3633
+ slice: never;
3634
+ sort: never;
3635
+ splice: never;
3636
+ unshift: never;
3637
+ indexOf: never;
3638
+ lastIndexOf: never;
3639
+ every: never;
3640
+ some: never;
3641
+ forEach: never;
3642
+ map: never;
3643
+ filter: never;
3644
+ reduce: never;
3645
+ reduceRight: never;
3646
+ find: never;
3647
+ findIndex: never;
3648
+ fill: never;
3649
+ copyWithin: never;
3650
+ entries: never;
3651
+ keys: never;
3652
+ values: never;
3653
+ includes: never;
3654
+ flatMap: never;
3655
+ flat: never;
3656
+ [Symbol.iterator]: never;
3657
+ readonly [Symbol.unscopables]: {
3658
+ [x: number]: boolean;
3659
+ length?: boolean;
3660
+ toString?: boolean;
3661
+ toLocaleString?: boolean;
3662
+ pop?: boolean;
3663
+ push?: boolean;
3664
+ concat?: boolean;
3665
+ join?: boolean;
3666
+ reverse?: boolean;
3667
+ shift?: boolean;
3668
+ slice?: boolean;
3669
+ sort?: boolean;
3670
+ splice?: boolean;
3671
+ unshift?: boolean;
3672
+ indexOf?: boolean;
3673
+ lastIndexOf?: boolean;
3674
+ every?: boolean;
3675
+ some?: boolean;
3676
+ forEach?: boolean;
3677
+ map?: boolean;
3678
+ filter?: boolean;
3679
+ reduce?: boolean;
3680
+ reduceRight?: boolean;
3681
+ find?: boolean;
3682
+ findIndex?: boolean;
3683
+ fill?: boolean;
3684
+ copyWithin?: boolean;
3685
+ entries?: boolean;
3686
+ keys?: boolean;
3687
+ values?: boolean;
3688
+ includes?: boolean;
3689
+ flatMap?: boolean;
3690
+ flat?: boolean;
3691
+ };
3692
+ };
3693
+ } | {
3694
+ [x: number]: string | number | boolean | {
3695
+ [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any;
3696
+ } | /*elided*/ any;
3697
+ length: number;
3698
+ toString: never;
3699
+ toLocaleString: never;
3700
+ pop: never;
3701
+ push: never;
3702
+ concat: never;
3703
+ join: never;
3704
+ reverse: never;
3705
+ shift: never;
3706
+ slice: never;
3707
+ sort: never;
3708
+ splice: never;
3709
+ unshift: never;
3710
+ indexOf: never;
3711
+ lastIndexOf: never;
3712
+ every: never;
3713
+ some: never;
3714
+ forEach: never;
3715
+ map: never;
3716
+ filter: never;
3717
+ reduce: never;
3718
+ reduceRight: never;
3719
+ find: never;
3720
+ findIndex: never;
3721
+ fill: never;
3722
+ copyWithin: never;
3723
+ entries: never;
3724
+ keys: never;
3725
+ values: never;
3726
+ includes: never;
3727
+ flatMap: never;
3728
+ flat: never;
3729
+ [Symbol.iterator]: never;
3730
+ readonly [Symbol.unscopables]: {
3731
+ [x: number]: boolean;
3732
+ length?: boolean;
3733
+ toString?: boolean;
3734
+ toLocaleString?: boolean;
3735
+ pop?: boolean;
3736
+ push?: boolean;
3737
+ concat?: boolean;
3738
+ join?: boolean;
3739
+ reverse?: boolean;
3740
+ shift?: boolean;
3741
+ slice?: boolean;
3742
+ sort?: boolean;
3743
+ splice?: boolean;
3744
+ unshift?: boolean;
3745
+ indexOf?: boolean;
3746
+ lastIndexOf?: boolean;
3747
+ every?: boolean;
3748
+ some?: boolean;
3749
+ forEach?: boolean;
3750
+ map?: boolean;
3751
+ filter?: boolean;
3752
+ reduce?: boolean;
3753
+ reduceRight?: boolean;
3754
+ find?: boolean;
3755
+ findIndex?: boolean;
3756
+ fill?: boolean;
3757
+ copyWithin?: boolean;
3758
+ entries?: boolean;
3759
+ keys?: boolean;
3760
+ values?: boolean;
3761
+ includes?: boolean;
3762
+ flatMap?: boolean;
3763
+ flat?: boolean;
3764
+ };
3765
+ };
3766
+ }[];
3767
+ outputFormat: "json";
3768
+ status: 200;
3769
+ } | {
3770
+ input: {
3771
+ param: {
3772
+ id: string;
3773
+ } & {
3774
+ token: string;
3775
+ };
3776
+ };
3777
+ output: {
3778
+ error: {
3779
+ code: string;
3780
+ message: any;
3781
+ };
3782
+ };
3783
+ outputFormat: "json";
3784
+ status: 500;
3785
+ };
3786
+ }>;
3787
+ };
3788
+ };
3553
3789
  };
3554
3790
  products: {
3555
3791
  product: {
@@ -3782,20 +4018,6 @@ export declare function createRpcClients(baseURL: string): {
3782
4018
  } & {
3783
4019
  ":brandId": import("hono/client").ClientRequest<{
3784
4020
  $get: {
3785
- input: {
3786
- param: {
3787
- brandId: string;
3788
- };
3789
- };
3790
- output: {
3791
- error: {
3792
- code: string;
3793
- message: string;
3794
- };
3795
- };
3796
- outputFormat: "json";
3797
- status: 404;
3798
- } | {
3799
4021
  input: {
3800
4022
  param: {
3801
4023
  brandId: string;
@@ -3989,6 +4211,20 @@ export declare function createRpcClients(baseURL: string): {
3989
4211
  }[];
3990
4212
  outputFormat: "json";
3991
4213
  status: 200;
4214
+ } | {
4215
+ input: {
4216
+ param: {
4217
+ brandId: string;
4218
+ };
4219
+ };
4220
+ output: {
4221
+ error: {
4222
+ code: string;
4223
+ message: string;
4224
+ };
4225
+ };
4226
+ outputFormat: "json";
4227
+ status: 404;
3992
4228
  } | {
3993
4229
  input: {
3994
4230
  param: {
@@ -17,6 +17,7 @@ export declare const queryKeys: {
17
17
  orders: {
18
18
  all: readonly ["public", "orders"];
19
19
  detail: (id: string, token: string) => readonly ["public", "orders", string, string];
20
+ recommendations: (id: string, token: string, limit?: number) => readonly ["public", "orders", string, string, "recommendations", number] | readonly ["public", "orders", string, string, "recommendations"];
20
21
  };
21
22
  products: {
22
23
  all: readonly ["public", "products"];
@@ -20,6 +20,9 @@ export const queryKeys = {
20
20
  orders: {
21
21
  all: ['public', 'orders'],
22
22
  detail: (id, token) => ['public', 'orders', id, token],
23
+ recommendations: (id, token, limit) => limit !== undefined
24
+ ? ['public', 'orders', id, token, 'recommendations', limit]
25
+ : ['public', 'orders', id, token, 'recommendations'],
23
26
  },
24
27
  products: {
25
28
  all: ['public', 'products'],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instockng/api-client",
3
- "version": "1.0.20",
3
+ "version": "1.0.21",
4
4
  "description": "React Query hooks for OMS API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",