@roketus/loyalty-js-sdk 5.1.1 → 5.2.1

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 (47) hide show
  1. package/dist/cjs/api/referralProgram/disableRefProgram.d.ts +2 -0
  2. package/dist/cjs/api/referralProgram/enableRefProgram.d.ts +2 -0
  3. package/dist/cjs/api/referralProgram/getRefProgramAnalytics.d.ts +2 -0
  4. package/dist/cjs/api/referralProgram/getRefProgramMetrics.d.ts +2 -0
  5. package/dist/cjs/api/referralProgram/influencers/getInfluencerPerfomance.d.ts +2 -0
  6. package/dist/cjs/api/referralProgram/influencers/updateInfluencerReward.d.ts +2 -0
  7. package/dist/cjs/index.js +1 -1
  8. package/dist/cjs/interfaces/ISDK.d.ts +8 -6
  9. package/dist/cjs/interfaces/referralProgram/ICreateRefProgramPayload.d.ts +15 -8
  10. package/dist/cjs/interfaces/referralProgram/IInfluencer.d.ts +16 -0
  11. package/dist/cjs/interfaces/referralProgram/IInfluencerPayload.d.ts +21 -6
  12. package/dist/cjs/interfaces/referralProgram/IReferralProgram.d.ts +33 -33
  13. package/dist/cjs/interfaces/referralProgram/IReferralProgramAnalytics.d.ts +35 -0
  14. package/dist/cjs/interfaces/referralProgram/IUpdateRefProgramPayload.d.ts +7 -5
  15. package/dist/cjs/interfaces/referralProgram/index.d.ts +2 -2
  16. package/dist/cjs/interfaces/referralProgram/influencerInterfaces.d.ts +10 -12
  17. package/dist/cjs/interfaces/referralProgram/referralProgramInterfaces.d.ts +17 -8
  18. package/dist/cjs/interfaces/requestFilterInterfaces.d.ts +1 -0
  19. package/dist/esm5/api/referralProgram/disableRefProgram.d.ts +2 -0
  20. package/dist/esm5/api/referralProgram/enableRefProgram.d.ts +2 -0
  21. package/dist/esm5/api/referralProgram/getRefProgramAnalytics.d.ts +2 -0
  22. package/dist/esm5/api/referralProgram/getRefProgramMetrics.d.ts +2 -0
  23. package/dist/esm5/api/referralProgram/influencers/getInfluencerPerfomance.d.ts +2 -0
  24. package/dist/esm5/api/referralProgram/influencers/updateInfluencerReward.d.ts +2 -0
  25. package/dist/esm5/index.js +1 -1
  26. package/dist/esm5/interfaces/ISDK.d.ts +8 -6
  27. package/dist/esm5/interfaces/referralProgram/ICreateRefProgramPayload.d.ts +15 -8
  28. package/dist/esm5/interfaces/referralProgram/IInfluencer.d.ts +16 -0
  29. package/dist/esm5/interfaces/referralProgram/IInfluencerPayload.d.ts +21 -6
  30. package/dist/esm5/interfaces/referralProgram/IReferralProgram.d.ts +33 -33
  31. package/dist/esm5/interfaces/referralProgram/IReferralProgramAnalytics.d.ts +35 -0
  32. package/dist/esm5/interfaces/referralProgram/IUpdateRefProgramPayload.d.ts +7 -5
  33. package/dist/esm5/interfaces/referralProgram/index.d.ts +2 -2
  34. package/dist/esm5/interfaces/referralProgram/influencerInterfaces.d.ts +10 -12
  35. package/dist/esm5/interfaces/referralProgram/referralProgramInterfaces.d.ts +17 -8
  36. package/dist/esm5/interfaces/requestFilterInterfaces.d.ts +1 -0
  37. package/package.json +1 -1
  38. package/dist/cjs/api/referralProgram/getRefProgramStats.d.ts +0 -2
  39. package/dist/cjs/api/referralProgram/influencers/getStatsByInfluencer.d.ts +0 -2
  40. package/dist/cjs/api/referralProgram/unarchiveRefProgram.d.ts +0 -2
  41. package/dist/cjs/interfaces/referralProgram/IRefProgramInfluencer.d.ts +0 -12
  42. package/dist/cjs/interfaces/referralProgram/IRefProgramStats.d.ts +0 -19
  43. package/dist/esm5/api/referralProgram/getRefProgramStats.d.ts +0 -2
  44. package/dist/esm5/api/referralProgram/influencers/getStatsByInfluencer.d.ts +0 -2
  45. package/dist/esm5/api/referralProgram/unarchiveRefProgram.d.ts +0 -2
  46. package/dist/esm5/interfaces/referralProgram/IRefProgramInfluencer.d.ts +0 -12
  47. package/dist/esm5/interfaces/referralProgram/IRefProgramStats.d.ts +0 -19
@@ -1,51 +1,51 @@
1
+ import { IInfluencer } from './IInfluencer';
1
2
  export declare enum ERefProgramStatus {
2
- CREATED = "created",
3
- ACTIVE = "active",
4
- ARCHIVED = "archived"
5
- }
6
- export declare enum ERefProgramType {
7
- REGULAR = "regular",
8
- INFLUENCER = "influencer"
3
+ NotStarted = "notStarted",
4
+ Active = "active",
5
+ Expired = "expired",
6
+ Paused = "paused",
7
+ Completed = "completed",
8
+ Archive = "archived"
9
9
  }
10
10
  export declare enum ERefProgramActionType {
11
11
  REGISTRATION = "registration",
12
12
  PURCHASE = "purchase"
13
13
  }
14
14
  export declare enum ERefProgramRewardType {
15
- BONUS = "bonus",
15
+ BONUS = "points",
16
16
  COUPON = "coupon"
17
17
  }
18
18
  export interface IRefProgramBonusReward {
19
- bonusAmount: number;
19
+ type: ERefProgramRewardType.BONUS;
20
+ bonusAmount?: number;
21
+ value: number;
20
22
  }
21
23
  export interface IRefProgramCouponReward {
22
- name: string;
23
- promo_code_id: string;
24
- allowed_uses: number;
25
- }
26
- export interface IRefProgramReward {
27
- rewardType: ERefProgramRewardType;
28
- reward: Array<IRefProgramBonusReward | IRefProgramCouponReward>;
29
- }
24
+ type: ERefProgramRewardType.COUPON;
25
+ promo_code: {
26
+ id: string;
27
+ name: string;
28
+ description: string;
29
+ status: string;
30
+ } | null;
31
+ value: number;
32
+ }
33
+ export declare type IRefProgramReward = IRefProgramBonusReward | IRefProgramCouponReward;
30
34
  export interface IReferralProgram {
31
35
  id: string;
32
36
  name: string;
33
37
  description: string;
34
- startAt: string;
35
- stopAt?: string;
36
- status: ERefProgramStatus;
37
- programType: ERefProgramType;
38
- triggerAction: ERefProgramActionType;
39
- influencer?: IRefProgramReward;
40
- customer?: IRefProgramReward;
41
- createdAt: string;
42
- updatedAt?: string;
43
- }
44
- export interface IReferralProgramListItem {
45
- id: string;
46
- name: string;
47
- startAt: string;
48
- stopAt?: string;
38
+ start_date: string;
39
+ end_date: string;
40
+ issuer_id: string;
41
+ max_referrals: number;
42
+ target_action: ERefProgramActionType;
43
+ referrer_reward: IRefProgramReward;
44
+ referred_reward: IRefProgramReward;
49
45
  status: ERefProgramStatus;
50
- programType?: ERefProgramType;
46
+ archived: boolean;
47
+ enabled: boolean;
48
+ created_at: string;
49
+ updated_at: string;
50
+ influencers?: IInfluencer[];
51
51
  }
@@ -0,0 +1,35 @@
1
+ export interface IReferralProgramAnalytics {
2
+ program_id: string;
3
+ start_date: string;
4
+ end_date: string;
5
+ summary: {
6
+ average_order_value: number;
7
+ conversion_rate: number;
8
+ total_clicks: number;
9
+ total_conversions: number;
10
+ total_links: number;
11
+ total_referred_rewards: number;
12
+ total_referrer_rewards: number;
13
+ total_registrations: number;
14
+ };
15
+ time_series_data: {
16
+ [key: string]: unknown;
17
+ };
18
+ }
19
+ export interface IReferralProgramMetrics {
20
+ ProgramID: string;
21
+ TotalLinks: number;
22
+ ActiveLinks: number;
23
+ TotalActions: number;
24
+ CompletedActions: number;
25
+ ConversionRate: number;
26
+ TotalRewardsIssued: number;
27
+ PointsIssued: number;
28
+ CouponsIssued: number;
29
+ UniqueReferrers: number;
30
+ UniqueReferred: number;
31
+ AverageTimeToConvert: number;
32
+ TopReferrers: {
33
+ [key: string]: unknown;
34
+ } | null;
35
+ }
@@ -1,9 +1,11 @@
1
- import { IRefProgramReward } from "./IReferralProgram";
1
+ import { IRefProgramRewardPayload } from "./ICreateRefProgramPayload";
2
+ import { ERefProgramActionType } from "./IReferralProgram";
2
3
  export interface IUpdateRefProgramPayload {
3
4
  name?: string;
4
5
  description?: string;
5
- startAt?: string;
6
- stopAt?: string;
7
- influencer?: IRefProgramReward;
8
- customer?: IRefProgramReward;
6
+ start_date?: string;
7
+ end_date?: string;
8
+ target_action?: ERefProgramActionType;
9
+ referrer_reward?: IRefProgramRewardPayload;
10
+ referred_reward?: IRefProgramRewardPayload;
9
11
  }
@@ -1,6 +1,6 @@
1
1
  export * from './IReferralProgram';
2
- export * from './IRefProgramInfluencer';
3
- export * from './IRefProgramStats';
2
+ export * from './IInfluencer';
3
+ export * from './IReferralProgramAnalytics';
4
4
  export * from './ICreateRefProgramPayload';
5
5
  export * from './IUpdateRefProgramPayload';
6
6
  export * from './IInfluencerPayload';
@@ -1,23 +1,20 @@
1
1
  import { IListFiltersPayload } from '../requestFilterInterfaces';
2
2
  import { I_JSON_API_Response_Many, I_JSON_API_Response_Single } from '../I_JSON_API_ResponseDTO';
3
3
  import { I_Deserialized_List_Response_DTO } from '../I_Deserialized_Response_DTO';
4
- import { IInfluencer } from './IRefProgramInfluencer';
5
- import { IInfluencerPayload } from './IInfluencerPayload';
6
- import { IRefProgramStats } from './IRefProgramStats';
7
- export interface InfluencerRequestDTO {
8
- data: {
9
- attributes: IInfluencerPayload;
10
- };
11
- }
4
+ import { IInfluencer, IInfluencerPerfomance } from './IInfluencer';
5
+ import { ICreateInfluencerPayload, IUpdateInfluencerPayload, IUpdateInfluencerRewardPayload } from './IInfluencerPayload';
12
6
  export declare type InfluencerResponseDTO = I_JSON_API_Response_Single<IInfluencer>;
13
7
  export interface IAddInfluencer {
14
- (programId: string, payload: IInfluencerPayload): Promise<IInfluencer>;
8
+ (programId: string, payload: ICreateInfluencerPayload): Promise<IInfluencer>;
15
9
  }
16
10
  export interface UpdateInfluencerResponseDTO {
17
11
  data: 'ok';
18
12
  }
19
13
  export interface IUpdateInfluencer {
20
- (programId: string, influencerId: string, payload: IInfluencerPayload): Promise<void>;
14
+ (programId: string, influencerId: string, payload: IUpdateInfluencerPayload): Promise<void>;
15
+ }
16
+ export interface IUpdateInfluencerReward {
17
+ (programId: string, influencerId: string, payload: IUpdateInfluencerRewardPayload): Promise<void>;
21
18
  }
22
19
  export interface IDeleteInfluencer {
23
20
  (programId: string, influencerId: string): Promise<void>;
@@ -30,6 +27,7 @@ export interface IListInfluencers {
30
27
  export interface IGetInfluencer {
31
28
  (programId: string, influencerId: string): Promise<IInfluencer>;
32
29
  }
33
- export interface IGetStatsByInfluencer {
34
- (programId: string, influencerId: string): Promise<IRefProgramStats>;
30
+ export declare type IGetInfluencerPerfomanceResponseDTO = I_JSON_API_Response_Many<IInfluencerPerfomance>;
31
+ export interface IGetInfluencerPerfomance {
32
+ (programId: string, influencerId: string): Promise<IInfluencerPerfomance>;
35
33
  }
@@ -1,8 +1,8 @@
1
1
  import { IListFiltersPayload } from '../requestFilterInterfaces';
2
2
  import { I_JSON_API_Response_Many } from '../I_JSON_API_ResponseDTO';
3
3
  import { I_Deserialized_List_Response_DTO } from '../I_Deserialized_Response_DTO';
4
- import { IReferralProgram, IReferralProgramListItem } from './IReferralProgram';
5
- import { IRefProgramStats } from './IRefProgramStats';
4
+ import { IReferralProgram } from './IReferralProgram';
5
+ import { IReferralProgramAnalytics, IReferralProgramMetrics } from './IReferralProgramAnalytics';
6
6
  import { ICreateRefProgramPayload } from './ICreateRefProgramPayload';
7
7
  import { IUpdateRefProgramPayload } from './IUpdateRefProgramPayload';
8
8
  export interface CreateRefProgramRequestDTO {
@@ -25,21 +25,30 @@ export interface UpdateReferralProgramResponseDTO {
25
25
  export interface IUpdateReferralProgram {
26
26
  (id: string, payload: IUpdateRefProgramPayload): Promise<void>;
27
27
  }
28
- export interface IArchiveReferralProgram {
28
+ export interface IEnableReferralProgram {
29
29
  (id: string): Promise<void>;
30
30
  }
31
- export interface IUnarchiveReferralProgram {
31
+ export interface IDisableReferralProgram {
32
+ (id: string): Promise<void>;
33
+ }
34
+ export interface IArchiveReferralProgram {
32
35
  (id: string): Promise<void>;
33
36
  }
34
37
  export interface IListReferralPrograms {
35
38
  (params: IListFiltersPayload): Promise<IListReferralProgramsResponse>;
36
39
  }
37
40
  export declare type ListReferralProgramsResponseDTO = I_JSON_API_Response_Many<ReferralProgramResponseDTO>;
38
- export declare type IListReferralProgramsResponse = I_Deserialized_List_Response_DTO<IReferralProgramListItem>;
41
+ export declare type IListReferralProgramsResponse = I_Deserialized_List_Response_DTO<IReferralProgram>;
39
42
  export interface IGetReferralProgram {
40
43
  (id: string): Promise<IReferralProgram>;
41
44
  }
42
- export declare type RefProgramStatsResponseDTO = I_JSON_API_Response_Many<IRefProgramStats>;
43
- export interface IGetRefProgramStats {
44
- (id: string): Promise<IRefProgramStats>;
45
+ export declare type RefProgramAnalyticsResponseDTO = I_JSON_API_Response_Many<IReferralProgramAnalytics>;
46
+ export interface IGetRefProgramAnalytics {
47
+ (id: string): Promise<IReferralProgramAnalytics>;
48
+ }
49
+ export interface IGetRefProgramMetrics {
50
+ (id: string, params: {
51
+ start_date?: string;
52
+ end_date?: string;
53
+ }): Promise<IReferralProgramMetrics>;
45
54
  }
@@ -26,4 +26,5 @@ export interface IListFiltersPayload {
26
26
  filter?: Record<string, string | string[]>;
27
27
  sort?: Record<string, EListSort>;
28
28
  search?: string;
29
+ status?: string;
29
30
  }
@@ -0,0 +1,2 @@
1
+ import type { IDisableReferralProgram } from '../../interfaces/referralProgram/referralProgramInterfaces';
2
+ export declare const disableRefProgram: IDisableReferralProgram;
@@ -0,0 +1,2 @@
1
+ import type { IEnableReferralProgram } from '../../interfaces/referralProgram/referralProgramInterfaces';
2
+ export declare const enableRefProgram: IEnableReferralProgram;
@@ -0,0 +1,2 @@
1
+ import type { IGetRefProgramAnalytics } from '../../interfaces/referralProgram/referralProgramInterfaces';
2
+ export declare const getRefProgramAnalytics: IGetRefProgramAnalytics;
@@ -0,0 +1,2 @@
1
+ import { IGetRefProgramMetrics } from '../../interfaces/referralProgram/referralProgramInterfaces';
2
+ export declare const getRefProgramMetrics: IGetRefProgramMetrics;
@@ -0,0 +1,2 @@
1
+ import type { IGetInfluencerPerfomance } from '../../../interfaces/referralProgram/influencerInterfaces';
2
+ export declare const getInfluencerPerfomance: IGetInfluencerPerfomance;
@@ -0,0 +1,2 @@
1
+ import type { IUpdateInfluencerReward } from '../../../interfaces/referralProgram/influencerInterfaces';
2
+ export declare const updateInfluencerReward: IUpdateInfluencerReward;