@jolibox/implement 1.1.13-beta.1 → 1.1.13-beta.11

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 (76) hide show
  1. package/.rush/temp/package-deps_build.json +30 -39
  2. package/.rush/temp/shrinkwrap-deps.json +1 -1
  3. package/dist/common/ads/anti-cheating.d.ts +5 -0
  4. package/dist/common/rewards/__tests__/can-use-jolicoin.test.d.ts +1 -0
  5. package/dist/common/rewards/fetch-reward.d.ts +2 -0
  6. package/dist/common/rewards/index.d.ts +18 -0
  7. package/dist/common/rewards/registers/use-ads.d.ts +3 -0
  8. package/dist/common/rewards/registers/use-jolicoin.d.ts +10 -0
  9. package/dist/common/rewards/registers/utils/index.d.ts +2 -0
  10. package/dist/common/rewards/reward-helper.d.ts +14 -0
  11. package/dist/common/rewards/type.d.ts +23 -0
  12. package/dist/common/utils/index.d.ts +7 -0
  13. package/dist/index.js +3 -3
  14. package/dist/index.native.js +28 -7
  15. package/dist/native/api/keyboard.d.ts +1 -1
  16. package/implement.build.log +2 -2
  17. package/package.json +4 -3
  18. package/src/common/ads/anti-cheating.test.ts +4 -2
  19. package/src/common/ads/anti-cheating.ts +12 -4
  20. package/src/common/ads/index.ts +51 -33
  21. package/src/common/rewards/__tests__/can-use-jolicoin.test.ts +94 -0
  22. package/src/common/rewards/fetch-reward.ts +39 -0
  23. package/src/common/rewards/index.ts +20 -0
  24. package/src/common/rewards/registers/use-ads.ts +9 -0
  25. package/src/common/rewards/registers/use-jolicoin.ts +96 -0
  26. package/src/common/rewards/registers/utils/index.ts +11 -0
  27. package/src/common/rewards/reward-helper.ts +56 -0
  28. package/src/common/rewards/type.ts +25 -0
  29. package/src/common/utils/index.ts +7 -0
  30. package/src/h5/api/ads.ts +20 -1
  31. package/src/h5/api/get-system-info.ts +1 -1
  32. package/src/h5/http/utils/__tests__/xua.test.ts +1 -1
  33. package/src/native/api/ads.ts +31 -3
  34. package/src/native/api/get-system-info.ts +2 -2
  35. package/src/native/api/keyboard.ts +1 -1
  36. package/src/native/api/lifecycle.ts +1 -1
  37. package/src/native/api/login.ts +1 -1
  38. package/src/native/api/navigate.ts +1 -1
  39. package/src/native/api/storage.ts +1 -1
  40. package/src/native/bootstrap/index.ts +13 -6
  41. package/src/native/network/create-fetch.ts +6 -2
  42. package/src/native/report/errors/index.ts +1 -1
  43. package/src/native/report/index.ts +1 -1
  44. package/src/native/report/task-tracker.ts +1 -1
  45. package/src/native/ui/retention.ts +4 -3
  46. package/dist/native/bootstrap/bridge.d.ts +0 -4
  47. package/dist/native/js-bridge/const.d.ts +0 -6
  48. package/dist/native/js-bridge/index.d.ts +0 -2
  49. package/dist/native/js-bridge/invoke.d.ts +0 -21
  50. package/dist/native/js-bridge/js-bridge.d.ts +0 -6
  51. package/dist/native/js-bridge/publish.d.ts +0 -1
  52. package/dist/native/js-bridge/report.d.ts +0 -63
  53. package/dist/native/js-bridge/subscribe.d.ts +0 -10
  54. package/dist/native/js-bridge/types.d.ts +0 -18
  55. package/dist/native/js-bridge/utils.d.ts +0 -17
  56. package/dist/native/js-core/index.d.ts +0 -3
  57. package/dist/native/js-core/jolibox-js-core.d.ts +0 -50
  58. package/dist/native/js-core/message-port.d.ts +0 -12
  59. package/dist/native/js-core/utils.d.ts +0 -7
  60. package/src/native/bootstrap/bridge.ts +0 -68
  61. package/src/native/js-bridge/const.ts +0 -13
  62. package/src/native/js-bridge/index.ts +0 -2
  63. package/src/native/js-bridge/invoke.ts +0 -208
  64. package/src/native/js-bridge/js-bridge.ts +0 -28
  65. package/src/native/js-bridge/publish.ts +0 -44
  66. package/src/native/js-bridge/report.ts +0 -311
  67. package/src/native/js-bridge/subscribe.ts +0 -74
  68. package/src/native/js-bridge/types.ts +0 -36
  69. package/src/native/js-bridge/utils.ts +0 -116
  70. package/src/native/js-core/index.ts +0 -4
  71. package/src/native/js-core/jolibox-js-core.ts +0 -192
  72. package/src/native/js-core/message-port.ts +0 -52
  73. package/src/native/js-core/utils.ts +0 -9
  74. package/src/native/types/global.d.ts +0 -27
  75. package/src/native/types/native-method-map.d.ts +0 -329
  76. package/src/native/types/native-method.d.ts +0 -30
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "files": {
3
- "packages/implement/.rush/temp/shrinkwrap-deps.json": "a4ab156a0df4607a7c45edb42b1d654b1ff20880",
3
+ "packages/implement/.rush/temp/shrinkwrap-deps.json": "409982f688cb8365b288673bcc40782cb7dedd5f",
4
4
  "packages/implement/.eslintrc.js": "7a3d2747dc887655ca9e2d3ff621f7dfd98500b9",
5
5
  "packages/implement/README.md": "5660cd88848b7a5428394cc34d881a35dd402188",
6
6
  "packages/implement/esbuild.config.js": "86f1fd21722a2cb05216751578dcca66326e664a",
7
- "packages/implement/package.json": "1114ab8bac30311e13cc1d0a5a0111171d6791d7",
7
+ "packages/implement/package.json": "f21838638276909b24e4649d6fd7622620db3366",
8
8
  "packages/implement/src/common/ads/ads-action-detection.ts": "5a7b9f85d7eab9e744f8a9fc7638063f43baa214",
9
- "packages/implement/src/common/ads/anti-cheating.test.ts": "433eb603b97fd7609f26af1522f309596a790829",
10
- "packages/implement/src/common/ads/anti-cheating.ts": "888c94ef55ca03849a79b3e0425850a097192816",
9
+ "packages/implement/src/common/ads/anti-cheating.test.ts": "e2ff3dc6760cfd28d0f8c15703d7fb20d43df583",
10
+ "packages/implement/src/common/ads/anti-cheating.ts": "a3ffb6a78e289e1c0ce45c7f7c0cee000e75e541",
11
11
  "packages/implement/src/common/ads/channel-policy.ts": "c6d036be5cedf0c5d545fac271c6c8447ca55d8a",
12
- "packages/implement/src/common/ads/index.ts": "e3d5b617f7a156583d50905d325c7ed13ecba6fb",
12
+ "packages/implement/src/common/ads/index.ts": "e5d6d4b5754b6735f54b6cad377320ac980efb29",
13
13
  "packages/implement/src/common/api-factory/index.ts": "a2b60f027384e37492ddde550dd46f3fb3e14cfe",
14
14
  "packages/implement/src/common/api-factory/validator/__tests__/validate/any.test.ts": "6e225e09fce401b374221ad2e4fe33bc91df4152",
15
15
  "packages/implement/src/common/api-factory/validator/__tests__/validate/array.test.ts": "8a9cc32be03e952f1176a970fea033d597c176cb",
@@ -46,17 +46,25 @@
46
46
  "packages/implement/src/common/report/task-track/index.ts": "056d4ce9121648e94aa177e8e6b261adb455d244",
47
47
  "packages/implement/src/common/report/track.ts": "1c71050f8caadfe7065f0db5a4a0708c264c21b4",
48
48
  "packages/implement/src/common/report/types.ts": "fd127bfd31586f1d712152ef60a4e9175f8bfe8f",
49
- "packages/implement/src/common/utils/index.ts": "a704a0628b1cf83ac917e265021b95d96ed42526",
50
- "packages/implement/src/h5/api/ads.ts": "e62a492f0ff6e3bb1be91b83439975151d9a89d8",
49
+ "packages/implement/src/common/rewards/__tests__/can-use-jolicoin.test.ts": "ec0f7225cb1b322e9278a3d8d6848bc50190696a",
50
+ "packages/implement/src/common/rewards/fetch-reward.ts": "7cc61f44ed5b111f7904daceb1fc6e3396ee34be",
51
+ "packages/implement/src/common/rewards/index.ts": "f6160318ce7393684ebf229729b3168beb0c2d99",
52
+ "packages/implement/src/common/rewards/registers/use-ads.ts": "e6eb324d5ac39d0a5df478760fdf0ee75fded1b5",
53
+ "packages/implement/src/common/rewards/registers/use-jolicoin.ts": "b6af27f7f44c7fbf90dedd6b772a244f65497fe5",
54
+ "packages/implement/src/common/rewards/registers/utils/index.ts": "a297dfc50b091368fba6e12e67663693f14ac1b8",
55
+ "packages/implement/src/common/rewards/reward-helper.ts": "2113cbd370da5be4beaf88bed865f1846e43d472",
56
+ "packages/implement/src/common/rewards/type.ts": "75c8444405686dbee1628f6d67c4a6b803e0623e",
57
+ "packages/implement/src/common/utils/index.ts": "6e2af1b721d5a9caf8fa40fd22fc73a2fdd5c4c0",
58
+ "packages/implement/src/h5/api/ads.ts": "a329694886a101b9627b0df61254a619e1acddbe",
51
59
  "packages/implement/src/h5/api/base.ts": "ead2c3cdcbe174b0e725c31a3885c7985bd8f667",
52
- "packages/implement/src/h5/api/get-system-info.ts": "c7a866b5b06695774a7fd94df73156c4e15658a8",
60
+ "packages/implement/src/h5/api/get-system-info.ts": "158d66156c720446457318b7eaa9112452114dbb",
53
61
  "packages/implement/src/h5/api/index.ts": "81b815f5ac8e1bd3e3f019f94c28bd5522a36193",
54
62
  "packages/implement/src/h5/api/lifecycle.ts": "3bc23344a0975fd67ddea22bae580af401284067",
55
63
  "packages/implement/src/h5/api/storage.ts": "ac2d6aa75c8fd5fc2f9f06124db0b0b61ab40ac3",
56
64
  "packages/implement/src/h5/api/task.ts": "8bb87ad8874f6a3833901977b9b5659838c9aacf",
57
65
  "packages/implement/src/h5/bootstrap/index.ts": "8beec81dba25b479afe06f79f9b6e3d240eea32a",
58
66
  "packages/implement/src/h5/http/index.ts": "4f965ff49e89e0060a991545b409af857832ce1d",
59
- "packages/implement/src/h5/http/utils/__tests__/xua.test.ts": "c92a065460d421b9e0723b4d6e74b1c5eed58102",
67
+ "packages/implement/src/h5/http/utils/__tests__/xua.test.ts": "4345cfd10cae6f94cef673f04a5155b70123c048",
60
68
  "packages/implement/src/h5/http/utils/index.ts": "05f4d94be09b9bfdcbb1365b31a5559e44a74991",
61
69
  "packages/implement/src/h5/http/utils/session.ts": "4762a6a56762484f91ca5f2a456ab2cff3107659",
62
70
  "packages/implement/src/h5/report/errors/index.ts": "22ef4184d6a6d272a5fefc1453a4a6d78ae8f2ff",
@@ -65,45 +73,28 @@
65
73
  "packages/implement/src/h5/report/task-tracker.ts": "9b55e81e5c20d459ff851f70689e9280e89c0e63",
66
74
  "packages/implement/src/index.native.ts": "96cc46c8919ba2333600e9c3ee100f47c511a79a",
67
75
  "packages/implement/src/index.ts": "d0ca7b5312b0a258ae8887e725440c70190442f7",
68
- "packages/implement/src/native/api/ads.ts": "845fc0e95c00444e3f96d7c73318b29840d3bbe2",
76
+ "packages/implement/src/native/api/ads.ts": "9958f0e3819b1e015e875df9a924c05983c1b950",
69
77
  "packages/implement/src/native/api/base.ts": "c4c4d04519cdbc3a08226c620f6314ee3b151435",
70
- "packages/implement/src/native/api/get-system-info.ts": "d0132211c53425eed4811721ac5d577781b118a7",
78
+ "packages/implement/src/native/api/get-system-info.ts": "187333a4eca5304e896360d1496744cb7535ab49",
71
79
  "packages/implement/src/native/api/index.ts": "39c85b6c6d93f91d9ecc4a96a38a39a425d5487a",
72
- "packages/implement/src/native/api/keyboard.ts": "89703b1d8b0929cd0366fd663fee7690be705b38",
73
- "packages/implement/src/native/api/lifecycle.ts": "7bb706370443627607563254a7cda00037c2aa3f",
74
- "packages/implement/src/native/api/login.ts": "b957d3142462589395aeeee20e75ff6724ac6fbd",
75
- "packages/implement/src/native/api/navigate.ts": "9a3150581f500135e9707da2c17943762dc5d901",
80
+ "packages/implement/src/native/api/keyboard.ts": "cb65da6e8cbfb7ef4a21582acd74f450a0e3c894",
81
+ "packages/implement/src/native/api/lifecycle.ts": "857beae3012fcb89396ac8e485c9d9b3df737db2",
82
+ "packages/implement/src/native/api/login.ts": "b820416100228e12df434238685a02e4b07a24c1",
83
+ "packages/implement/src/native/api/navigate.ts": "ff8b39101a714bed4d5cc287edb384b76b5b6045",
76
84
  "packages/implement/src/native/api/request.ts": "d2b5fb71eff0dfda5f24ca7ddf11fa4704c35eee",
77
- "packages/implement/src/native/api/storage.ts": "7f56694e3a7f47605512f9cee7fce48ac620c169",
85
+ "packages/implement/src/native/api/storage.ts": "4e5886d5cdb4db50ab7fcdc24392569f749f4c93",
78
86
  "packages/implement/src/native/api/task.ts": "26e06a3d6bbeaed34fd704d096e712448296607e",
79
- "packages/implement/src/native/bootstrap/bridge.ts": "4fe89e79d7fe43a1411388347c3cb3d6edc50376",
80
- "packages/implement/src/native/bootstrap/index.ts": "807b084b56130efdde222cc978d4700bc3ab26fe",
87
+ "packages/implement/src/native/bootstrap/index.ts": "12b491efeb62cc19c41fc613f725314cce38e969",
81
88
  "packages/implement/src/native/bootstrap/init-env.ts": "b7514d5d2db60da990575c1426243777aee57748",
82
- "packages/implement/src/native/js-bridge/const.ts": "896b30d0d1996f42e1a1c391db5dc095190e166c",
83
- "packages/implement/src/native/js-bridge/index.ts": "b65e1e20edcce8ce270381a9c7c79cc981761ad4",
84
- "packages/implement/src/native/js-bridge/invoke.ts": "f7fd744c9491e4eb21b8d5ec6ef314a602a5adcb",
85
- "packages/implement/src/native/js-bridge/js-bridge.ts": "d06223588faade35cfe56c6dfba94d59297772f0",
86
- "packages/implement/src/native/js-bridge/publish.ts": "2e884a038141200a6104f7ce24c2666180ded4d5",
87
- "packages/implement/src/native/js-bridge/report.ts": "056a4b6eea59219d1ea3af08a39fd35a4627abd2",
88
- "packages/implement/src/native/js-bridge/subscribe.ts": "24b9352959c6868ec10f45afa6cda9f930d2b3ac",
89
- "packages/implement/src/native/js-bridge/types.ts": "df45a621d69ccef3a5ab9d023a0f4fc8d665d645",
90
- "packages/implement/src/native/js-bridge/utils.ts": "9a444bd1dc499fcdb45561eb06396a04c4d538e1",
91
- "packages/implement/src/native/js-core/index.ts": "d3fdbad44b2969e0d45d22e8c4da5b8f83782667",
92
- "packages/implement/src/native/js-core/jolibox-js-core.ts": "78c6b8b3e744f7023f2ec98eb7df544bd9485bb6",
93
- "packages/implement/src/native/js-core/message-port.ts": "7199fe2e9a89617bfce7853562ac0fd37772bce2",
94
- "packages/implement/src/native/js-core/utils.ts": "a3639631f50764a5498f17949d3b9204fcc86fbf",
95
- "packages/implement/src/native/network/create-fetch.ts": "0670a19f902cd33165c67fdbfd292893185d0648",
89
+ "packages/implement/src/native/network/create-fetch.ts": "348e6af474257596663befbbf4179f18a2dec489",
96
90
  "packages/implement/src/native/network/index.ts": "f57653dfa388545cbe7fb0a3f1eb9603c6208f45",
97
91
  "packages/implement/src/native/network/report.ts": "705e9614faeb0611c9c57ced998885bdc3a02d11",
98
92
  "packages/implement/src/native/network/types.ts": "4e8eb72bf0b0b26a5298ce42d96855d27769be51",
99
93
  "packages/implement/src/native/network/utils.ts": "53877a6871dc3a6b173daef930872c44589659b9",
100
- "packages/implement/src/native/report/errors/index.ts": "d2cd492f07c9b98bd8d469d4a5a84bb8520a3dd2",
101
- "packages/implement/src/native/report/index.ts": "b30ccb9ef8e9124cbf156c6bdc3751465721383a",
102
- "packages/implement/src/native/report/task-tracker.ts": "09f8bc1dd157fe9a2159c261278bd2a92930cee3",
103
- "packages/implement/src/native/types/global.d.ts": "f4711617013586d0f3c7e2d9bec06f44a86bbc5d",
104
- "packages/implement/src/native/types/native-method-map.d.ts": "0e7d37d4b4d204c7dd5bb50119f20f9bf8e7106f",
105
- "packages/implement/src/native/types/native-method.d.ts": "e4e22c921a5b54d4e10fe5ca18158d691fbfe3e7",
106
- "packages/implement/src/native/ui/retention.ts": "d95410ef87d0cab600a99d54c5f5159f2d727529",
94
+ "packages/implement/src/native/report/errors/index.ts": "40e60ee03e0b91cdb0a143a2bea07f5d1e5d6dd7",
95
+ "packages/implement/src/native/report/index.ts": "2df4598a1004c3f7764ac7a90528e44772b41943",
96
+ "packages/implement/src/native/report/task-tracker.ts": "8905391993830700027cc78c80a76c0750ab0d43",
97
+ "packages/implement/src/native/ui/retention.ts": "96e18984b55fb87463f6aff84c80351b9d4cc61c",
107
98
  "packages/implement/tsconfig.json": "b150f4b2ef4eb9d98f92135d481fe530eb7145b5"
108
99
  },
109
100
  "arguments": "npm run clean && npm run build:esm && tsc "
@@ -1,5 +1,5 @@
1
1
  {
2
- "../../packages/implement": "../../packages/implement:FJYeACHmWWCrPS8ZA4qR/Kdb5fcP059aU6dHHDR6Y3U=:",
2
+ "../../packages/implement": "../../packages/implement:XNjV+nubYJ5Ea+L3nAHfmmaL+hefQPGR6Lf/+SGPCU0=:",
3
3
  "/@esbuild/aix-ppc64/0.24.2": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==",
4
4
  "/@esbuild/android-arm/0.24.2": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==",
5
5
  "/@esbuild/android-arm64/0.24.2": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==",
@@ -10,6 +10,11 @@ export interface IAdsAntiCheatingConfig {
10
10
  banForSessionThreshold?: number;
11
11
  highFreqThreshold?: number;
12
12
  }
13
+ declare global {
14
+ interface Window {
15
+ __joliboxLocalStorage__: Storage;
16
+ }
17
+ }
13
18
  export declare class AdsAntiCheating {
14
19
  readonly track: Track;
15
20
  readonly httpClient: IHttpClient;
@@ -0,0 +1,2 @@
1
+ import { RewardsHelper } from './reward-helper';
2
+ export declare const createRewardFetcher: (rewardsHelper: RewardsHelper) => void;
@@ -0,0 +1,18 @@
1
+ import { EventEmitter } from '@jolibox/common';
2
+ import { IUnlockOption, IJoliCoin } from './type';
3
+ export declare const rewardsHelper: {
4
+ registerRewardHandler<T extends import("./reward-helper").RewardType>(type: T, handler: import("./reward-helper").RewardHandler<T>): void;
5
+ handleReward<T extends import("./reward-helper").RewardType>(rewardsTypes: T[], ...args: Parameters<import("./reward-helper").RewardHandler<T>>): Promise<any>;
6
+ registerRewardsFetcher<T extends import("./reward-helper").RewardType>(fetcher: (...args: any[]) => Promise<T[]>): Promise<void>;
7
+ getRewardsTypes(...args: unknown[]): Promise<import("./reward-helper").RewardType[]>;
8
+ };
9
+ export * from './registers/use-ads';
10
+ export * from './registers/use-jolicoin';
11
+ export interface IUnlockOptionsEvent {
12
+ options: IUnlockOption[];
13
+ userJoliCoin: IJoliCoin;
14
+ }
15
+ export declare const UnlockOptionsEventName: "UNLOCK_OPTIONS_CHANGED";
16
+ export declare const unlockOptionsEmitter: EventEmitter<{
17
+ UNLOCK_OPTIONS_CHANGED: [IUnlockOptionsEvent];
18
+ }, "UNLOCK_OPTIONS_CHANGED">;
@@ -0,0 +1,3 @@
1
+ import { JoliboxAdsImpl, IRewardParams } from '../../ads';
2
+ export type AdsRewardsHandler = (params: IRewardParams) => Promise<boolean>;
3
+ export declare const createAdsRewardHandler: (ads: JoliboxAdsImpl) => AdsRewardsHandler;
@@ -0,0 +1,10 @@
1
+ import { IHttpClient } from '@/common/http';
2
+ import { IAdBreakParams } from '@/common/ads';
3
+ export type JolicoinRewardsHandler = (params: IAdBreakParams) => Promise<boolean>;
4
+ export declare const createJolicoinRewardHandler: (httpClient: IHttpClient, { onUnlockSuccess, onUnlockFailed }: {
5
+ onUnlockSuccess?: (data: {
6
+ quantity: number;
7
+ balance: number;
8
+ }) => void;
9
+ onUnlockFailed?: () => void;
10
+ }) => JolicoinRewardsHandler;
@@ -0,0 +1,2 @@
1
+ import { IJoliCoin, IUnlockOption } from '@/common/rewards/type';
2
+ export declare const canUseJolicoin: (unlockOptions: IUnlockOption[], joliCoin?: IJoliCoin) => boolean;
@@ -0,0 +1,14 @@
1
+ export type RewardType = 'ADS' | 'JOLI_COIN';
2
+ import type { AdsRewardsHandler } from './registers/use-ads';
3
+ export interface RewardHandlerMap {
4
+ ADS: AdsRewardsHandler;
5
+ JOLI_COIN: (params?: unknown) => Promise<boolean>;
6
+ }
7
+ export type RewardHandler<T extends RewardType> = RewardHandlerMap[T];
8
+ export declare function createRewardsHelper(): {
9
+ registerRewardHandler<T extends RewardType>(type: T, handler: RewardHandler<T>): void;
10
+ handleReward<T extends RewardType>(rewardsTypes: T[], ...args: Parameters<RewardHandler<T>>): Promise<any>;
11
+ registerRewardsFetcher<T extends RewardType>(fetcher: (...args: any[]) => Promise<T[]>): Promise<void>;
12
+ getRewardsTypes(...args: unknown[]): Promise<RewardType[]>;
13
+ };
14
+ export type RewardsHelper = ReturnType<typeof createRewardsHelper>;
@@ -0,0 +1,23 @@
1
+ export interface IJoliCoin {
2
+ balance: number;
3
+ enableAutoDeduct: boolean;
4
+ }
5
+ export type IUnlockOptionType = 'JOLI_COIN' | 'ADS';
6
+ interface IJoliCoinChoice {
7
+ joliCoinQuantity: number;
8
+ }
9
+ export interface IUnlockOption {
10
+ type: IUnlockOptionType;
11
+ joliCoinChoices: IJoliCoinChoice[];
12
+ }
13
+ export interface IJolicoinRewardOption {
14
+ code: 'SUCCESS' | 'ERROR' | 'PARAMETER_ERROR' | 'EPISODE_LOCK_JUMP';
15
+ message: string;
16
+ data: {
17
+ unlockOptions?: IUnlockOption[];
18
+ };
19
+ extra: {
20
+ joliCoin: IJoliCoin;
21
+ };
22
+ }
23
+ export {};
@@ -1,8 +1,15 @@
1
1
  declare const JOLIBOX_CUSTOM_ADS_EVENT_TYPE = "JOLIBOX_ADS_EVENT";
2
+ declare const JOLIBOX_CUSTOM_REWARDS_EVENT_TYPE = "JOLIBOX_CUSTOM_REWARDS_EVENT";
2
3
  interface JoliboxCustomEvent {
3
4
  [JOLIBOX_CUSTOM_ADS_EVENT_TYPE]: {
4
5
  isAdShowing: boolean;
5
6
  };
7
+ [JOLIBOX_CUSTOM_REWARDS_EVENT_TYPE]: {
8
+ ['JOLI_COIN']?: {
9
+ quantity: number;
10
+ balance: number;
11
+ };
12
+ };
6
13
  }
7
14
  export declare const notifyCustomEvent: <T extends keyof JoliboxCustomEvent>(eventName: T, data: JoliboxCustomEvent[T]) => void;
8
15
  export {};