@evaafi/sdk 0.6.4 → 0.9.0

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 (129) hide show
  1. package/dist/api/feeds.d.ts +30 -0
  2. package/dist/api/feeds.js +73 -0
  3. package/dist/api/liquidation.js +1 -1
  4. package/dist/api/math.js +1 -1
  5. package/dist/api/parser.d.ts +4 -2
  6. package/dist/api/parser.js +39 -18
  7. package/dist/api/parsers/AbstractOracleParser.d.ts +11 -0
  8. package/dist/api/parsers/AbstractOracleParser.js +9 -0
  9. package/dist/api/parsers/ClassicOracleParser.d.ts +10 -0
  10. package/dist/api/parsers/ClassicOracleParser.js +16 -0
  11. package/dist/api/parsers/PythOracleParser.d.ts +17 -0
  12. package/dist/api/parsers/PythOracleParser.js +22 -0
  13. package/dist/api/parsers/index.d.ts +3 -0
  14. package/dist/api/parsers/index.js +19 -0
  15. package/dist/api/prices.d.ts +6 -6
  16. package/dist/api/prices.js +37 -46
  17. package/dist/api/pyth.d.ts +16 -0
  18. package/dist/api/pyth.js +35 -0
  19. package/dist/constants/assets/assetId.d.ts +22 -0
  20. package/dist/constants/assets/assetId.js +29 -0
  21. package/dist/constants/assets/index.d.ts +3 -0
  22. package/dist/constants/assets/index.js +19 -0
  23. package/dist/constants/assets/mainnet.d.ts +19 -0
  24. package/dist/constants/assets/mainnet.js +114 -0
  25. package/dist/constants/assets/testnet.d.ts +14 -0
  26. package/dist/constants/assets/testnet.js +54 -0
  27. package/dist/constants/assets.d.ts +3 -0
  28. package/dist/constants/assets.js +14 -1
  29. package/dist/constants/general/index.d.ts +65 -0
  30. package/dist/constants/general/index.js +93 -0
  31. package/dist/constants/general/mainnet.d.ts +24 -0
  32. package/dist/constants/general/mainnet.js +53 -0
  33. package/dist/constants/general/testnet.d.ts +12 -0
  34. package/dist/constants/general/testnet.js +15 -0
  35. package/dist/constants/general.d.ts +4 -4
  36. package/dist/constants/general.js +6 -6
  37. package/dist/constants/index.d.ts +3 -0
  38. package/dist/constants/index.js +19 -0
  39. package/dist/constants/pools/index.d.ts +2 -0
  40. package/dist/constants/pools/index.js +18 -0
  41. package/dist/constants/pools/mainnet.d.ts +14 -0
  42. package/dist/constants/pools/mainnet.js +145 -0
  43. package/dist/constants/pools/testnet.d.ts +9 -0
  44. package/dist/constants/pools/testnet.js +57 -0
  45. package/dist/constants/pools.js +9 -9
  46. package/dist/contracts/AbstractMaster.d.ts +185 -0
  47. package/dist/contracts/AbstractMaster.js +179 -0
  48. package/dist/contracts/ClassicMaster.d.ts +34 -0
  49. package/dist/contracts/ClassicMaster.js +87 -0
  50. package/dist/contracts/PythMaster.d.ts +61 -0
  51. package/dist/contracts/PythMaster.js +179 -0
  52. package/dist/contracts/UserContract.d.ts +1 -7
  53. package/dist/contracts/UserContract.js +1 -19
  54. package/dist/contracts/index.d.ts +5 -0
  55. package/dist/contracts/index.js +21 -0
  56. package/dist/index.d.ts +14 -14
  57. package/dist/index.js +20 -60
  58. package/dist/prices/Oracle.interface.d.ts +9 -0
  59. package/dist/prices/Oracle.interface.js +2 -0
  60. package/dist/prices/Prices.d.ts +5 -3
  61. package/dist/prices/Prices.js +13 -3
  62. package/dist/prices/PricesCollector.d.ts +17 -7
  63. package/dist/prices/PricesCollector.js +67 -51
  64. package/dist/prices/PythCollector.d.ts +22 -0
  65. package/dist/prices/PythCollector.js +217 -0
  66. package/dist/prices/Types.d.ts +17 -2
  67. package/dist/prices/Types.js +8 -1
  68. package/dist/prices/index.d.ts +4 -3
  69. package/dist/prices/index.js +4 -3
  70. package/dist/prices/sources/Backend.d.ts +5 -4
  71. package/dist/prices/sources/Backend.js +16 -13
  72. package/dist/prices/sources/Icp.d.ts +2 -1
  73. package/dist/prices/sources/Icp.js +12 -9
  74. package/dist/prices/sources/PriceSource.d.ts +7 -6
  75. package/dist/prices/utils.d.ts +10 -9
  76. package/dist/prices/utils.js +32 -46
  77. package/dist/rewards/RewardMaster.d.ts +0 -1
  78. package/dist/rewards/RewardUser.d.ts +0 -1
  79. package/dist/types/Master.d.ts +10 -31
  80. package/dist/types/Master.js +3 -0
  81. package/dist/types/MasterRewards.d.ts +0 -1
  82. package/dist/types/UserRewards.d.ts +0 -1
  83. package/dist/utils/sha256BigInt.d.ts +0 -1
  84. package/dist/utils/userJettonWallet.js +0 -8
  85. package/dist/utils/utils.d.ts +8 -1
  86. package/dist/utils/utils.js +31 -2
  87. package/package.json +4 -3
  88. package/src/api/feeds.ts +90 -0
  89. package/src/api/liquidation.ts +1 -1
  90. package/src/api/math.ts +1 -1
  91. package/src/api/parser.ts +100 -38
  92. package/src/api/parsers/AbstractOracleParser.ts +16 -0
  93. package/src/api/parsers/ClassicOracleParser.ts +20 -0
  94. package/src/api/parsers/PythOracleParser.ts +34 -0
  95. package/src/api/parsers/index.ts +3 -0
  96. package/src/api/prices.ts +32 -41
  97. package/src/constants/assets/assetId.ts +30 -0
  98. package/src/constants/assets/index.ts +3 -0
  99. package/src/constants/{assets.ts → assets/mainnet.ts} +27 -94
  100. package/src/constants/assets/testnet.ts +74 -0
  101. package/src/constants/general/index.ts +91 -0
  102. package/src/constants/{general.ts → general/mainnet.ts} +48 -72
  103. package/src/constants/general/testnet.ts +25 -0
  104. package/src/constants/index.ts +3 -0
  105. package/src/constants/pools/index.ts +2 -0
  106. package/src/constants/pools/mainnet.ts +218 -0
  107. package/src/constants/pools/testnet.ts +75 -0
  108. package/src/contracts/AbstractMaster.ts +450 -0
  109. package/src/contracts/ClassicMaster.ts +149 -0
  110. package/src/contracts/PythMaster.ts +313 -0
  111. package/src/contracts/UserContract.ts +7 -28
  112. package/src/contracts/index.ts +7 -0
  113. package/src/index.ts +18 -85
  114. package/src/prices/Oracle.interface.ts +18 -0
  115. package/src/prices/Prices.ts +17 -4
  116. package/src/prices/PricesCollector.ts +91 -68
  117. package/src/prices/PythCollector.ts +294 -0
  118. package/src/prices/Types.ts +28 -6
  119. package/src/prices/index.ts +4 -3
  120. package/src/prices/sources/Backend.ts +21 -19
  121. package/src/prices/sources/Icp.ts +13 -10
  122. package/src/prices/sources/PriceSource.ts +6 -5
  123. package/src/prices/utils.ts +65 -68
  124. package/src/types/Master.ts +29 -52
  125. package/src/types/User.ts +15 -7
  126. package/src/utils/userJettonWallet.ts +0 -8
  127. package/src/utils/utils.ts +41 -2
  128. package/src/constants/pools.ts +0 -175
  129. package/src/contracts/MasterContract.ts +0 -410
@@ -0,0 +1,25 @@
1
+ import { Address, Cell } from '@ton/core';
2
+ import { ExtendedEvaaOracle } from '../../types/Master';
3
+ import { EVAA_REWARDS_MASTER_CODE_MAINNET, EVAA_REWARDS_USER_CODE_MAINNET, ORACLES_MAINNET } from './mainnet';
4
+
5
+ export const EVAA_MASTER_TESTNET_PYTH_TOB_AUDITED = Address.parse('kQBNhBq8D5F1Red9JX64M32PpFrIPRvLvioAgauCDOpfMipw');
6
+ export const TESTNET_PYTH_VERSION_TOB_AUDITED = 0;
7
+
8
+ export const EVAA_MASTER_TESTNET_CLASSIC_TOB_AUDITED = Address.parse(
9
+ 'kQBTmXNOP6TUEQ-v85mlefDnVUor6tX_ZYFvQnaoxkM7LFVl',
10
+ );
11
+ export const TESTNET_CLASSIC_TOB_AUDITED = 0;
12
+
13
+ export const PYTH_ORACLE_TESTNET: Address = Address.parse('EQB4ZnrI5qsP_IUJgVJNwEGKLzZWsQOFhiaqDbD7pTt_f9oU');
14
+
15
+ export const ORACLES_TESTNET: ExtendedEvaaOracle[] = ORACLES_MAINNET;
16
+
17
+ export const EVAA_REWARDS_MASTER_TESTNET = Address.parse('EQCnp0iRGcfDJAvnKhAEN9sB-nPYSPuc83Ff4y75s8AtoSW1');
18
+
19
+ export const JETTON_WALLET_STANDART_CODE_TESTNET = Cell.fromBase64(
20
+ 'te6cckECEQEAAyMAART/APSkE/S88sgLAQIBYgIDAgLMBAUAG6D2BdqJofQB9IH0gahhAgHUBgcCASAICQDDCDHAJJfBOAB0NMDAXGwlRNfA/AM4PpA+kAx+gAxcdch+gAx+gAwc6m0AALTH4IQD4p+pVIgupUxNFnwCeCCEBeNRRlSILqWMUREA/AK4DWCEFlfB7y6k1nwC+BfBIQP8vCAAET6RDBwuvLhTYAIBIAoLAIPUAQa5D2omh9AH0gfSBqGAJpj8EIC8aijKkQXUEIPe7L7wndCVj5cWLpn5j9ABgJ0CgR5CgCfQEsZ4sA54tmZPaqQB8VA9M/+gD6QCHwAe1E0PoA+kD6QNQwUTahUirHBfLiwSjC//LiwlQ0QnBUIBNUFAPIUAT6AljPFgHPFszJIsjLARL0APQAywDJIPkAcHTIywLKB8v/ydAE+kD0BDH6ACDXScIA8uLEd4AYyMsFUAjPFnD6AhfLaxPMgMAgEgDQ4AnoIQF41FGcjLHxnLP1AH+gIizxZQBs8WJfoCUAPPFslQBcwjkXKRceJQCKgToIIJycOAoBS88uLFBMmAQPsAECPIUAT6AljPFgHPFszJ7VQC9ztRND6APpA+kDUMAjTP/oAUVGgBfpA+kBTW8cFVHNtcFQgE1QUA8hQBPoCWM8WAc8WzMkiyMsBEvQA9ADLAMn5AHB0yMsCygfL/8nQUA3HBRyx8uLDCvoAUaihggiYloBmtgihggiYloCgGKEnlxBJEDg3XwTjDSXXCwGAPEADXO1E0PoA+kD6QNQwB9M/+gD6QDBRUaFSSccF8uLBJ8L/8uLCBYIJMS0AoBa88uLDghB73ZfeyMsfFcs/UAP6AiLPFgHPFslxgBjIywUkzxZw+gLLaszJgED7AEATyFAE+gJYzxYBzxbMye1UgAHBSeaAYoYIQc2LQnMjLH1Iwyz9Y+gJQB88WUAfPFslxgBDIywUkzxZQBvoCFctqFMzJcfsAECQQIwB8wwAjwgCwjiGCENUydttwgBDIywVQCM8WUAT6AhbLahLLHxLLP8ly+wCTNWwh4gPIUAT6AljPFgHPFszJ7VSV6u3X',
21
+ );
22
+
23
+ export const EVAA_REWARDS_MASTER_CODE_TESTNET = EVAA_REWARDS_MASTER_CODE_MAINNET;
24
+
25
+ export const EVAA_REWARDS_USER_CODE_TESTNET = EVAA_REWARDS_USER_CODE_MAINNET;
@@ -0,0 +1,3 @@
1
+ export * from './assets';
2
+ export * from './general';
3
+ export * from './pools';
@@ -0,0 +1,2 @@
1
+ export * from './mainnet';
2
+ export * from './testnet';
@@ -0,0 +1,218 @@
1
+ import { Address, Dictionary } from '@ton/core';
2
+ import {
3
+ EVAA_JUSDT_PRICE_FEED_ID,
4
+ EVAA_TSTON_PRICE_FEED_ID,
5
+ EVAA_TSUSDE_PRICE_FEED_ID,
6
+ packConnectedFeeds,
7
+ PYTH_TON_PRICE_FEED_ID,
8
+ PYTH_TSTON_PRICE_FEED_ID,
9
+ PYTH_TSUSDE_PRICE_FEED_ID,
10
+ PYTH_USDT_PRICE_FEED_ID,
11
+ } from '../../api/feeds';
12
+ import { DefaultPythPriceSourcesConfig, PricesCollector, PythCollector } from '../../prices';
13
+ import { PoolConfig } from '../../types/Master';
14
+ import { EvaaRewardsConfig } from '../../types/MasterRewards';
15
+ import {
16
+ ASSET_ID,
17
+ CATI_MAINNET,
18
+ DOGS_MAINNET,
19
+ JUSDC_MAINNET,
20
+ JUSDT_MAINNET,
21
+ NOT_MAINNET,
22
+ PT_tsUSDe_01Sep2025_MAINNET,
23
+ STTON_MAINNET,
24
+ TON_MAINNET,
25
+ TON_STORM_MAINNET,
26
+ TONUSDT_DEDUST_MAINNET,
27
+ TONUSDT_STONFI_MAINNET,
28
+ TSTON_MAINNET,
29
+ TSUSDE_MAINNET,
30
+ USDE_MAINNET,
31
+ USDT_MAINNET,
32
+ USDT_STORM_MAINNET,
33
+ } from '../assets';
34
+ import {
35
+ EVAA_ALTS_MAINNET,
36
+ EVAA_ALTS_MAINNET_VERSION,
37
+ EVAA_LP_MAINNET,
38
+ EVAA_LP_MAINNET_VERSION,
39
+ EVAA_MASTER_MAINNET,
40
+ EVAA_PYTH_TOB_MAINNET,
41
+ EVAA_PYTH_TOB_VERSION,
42
+ EVAA_REWARDS_MASTER_CODE_MAINNET,
43
+ EVAA_REWARDS_USER_CODE_MAINNET,
44
+ EVAA_STABLE_MAINNET,
45
+ EVAA_TOB_MAINNET,
46
+ EVAA_TOB_VERSION,
47
+ EVAA_TON_REWARDS_MASTER_MAINNET,
48
+ EVAA_USDT_REWARDS_MASTER_MAINNET,
49
+ LENDING_CODE,
50
+ MAINNET_VERSION,
51
+ MASTER_CONSTANTS,
52
+ ORACLES_ALTS,
53
+ ORACLES_LP,
54
+ ORACLES_MAINNET,
55
+ PYTH_ORACLE_MAINNET,
56
+ STABLE_VERSION,
57
+ } from '../general';
58
+
59
+ // Pool assets configs
60
+ export const MAINNET_POOL_ASSETS_CONFIG = [
61
+ TON_MAINNET,
62
+ JUSDT_MAINNET,
63
+ JUSDC_MAINNET,
64
+ STTON_MAINNET,
65
+ TSTON_MAINNET,
66
+ USDT_MAINNET,
67
+ USDE_MAINNET,
68
+ TSUSDE_MAINNET,
69
+ ];
70
+
71
+ const MAINNET_STABLE_POOL_ASSETS_CONFIG = [USDT_MAINNET, USDE_MAINNET, TSUSDE_MAINNET, PT_tsUSDe_01Sep2025_MAINNET];
72
+
73
+ const MAINNET_LP_POOL_ASSETS_CONFIG = [
74
+ TON_MAINNET,
75
+ USDT_MAINNET,
76
+ TONUSDT_DEDUST_MAINNET,
77
+ TON_STORM_MAINNET,
78
+ USDT_STORM_MAINNET,
79
+ TONUSDT_STONFI_MAINNET,
80
+ ];
81
+
82
+ const MAINNET_ALTS_POOL_ASSETS_CONFIG = [TON_MAINNET, USDT_MAINNET, CATI_MAINNET, NOT_MAINNET, DOGS_MAINNET];
83
+
84
+ export const MAINNET_POOL_CONFIG: PoolConfig = {
85
+ masterAddress: EVAA_MASTER_MAINNET,
86
+ masterVersion: MAINNET_VERSION,
87
+ masterConstants: MASTER_CONSTANTS,
88
+ oracles: new PythCollector({
89
+ pythConfig: DefaultPythPriceSourcesConfig,
90
+ poolAssetsConfig: MAINNET_POOL_ASSETS_CONFIG,
91
+ pythOracle: {
92
+ feedsMap: Dictionary.empty<bigint, Buffer>()
93
+ .set(BigInt(PYTH_TON_PRICE_FEED_ID), packConnectedFeeds(ASSET_ID.TON, 0n))
94
+ .set(BigInt(PYTH_USDT_PRICE_FEED_ID), packConnectedFeeds(ASSET_ID.USDT, 0n))
95
+ .set(
96
+ BigInt(PYTH_TSTON_PRICE_FEED_ID),
97
+ packConnectedFeeds(EVAA_TSTON_PRICE_FEED_ID, BigInt(PYTH_TON_PRICE_FEED_ID)),
98
+ )
99
+ .set(
100
+ BigInt(PYTH_TSUSDE_PRICE_FEED_ID),
101
+ packConnectedFeeds(EVAA_TSUSDE_PRICE_FEED_ID, BigInt(PYTH_USDT_PRICE_FEED_ID)),
102
+ ),
103
+ pythAddress: PYTH_ORACLE_MAINNET,
104
+ allowedRefTokens: Dictionary.empty<bigint, bigint>()
105
+ .set(ASSET_ID.jUSDT, ASSET_ID.USDT)
106
+ .set(ASSET_ID.jUSDC, ASSET_ID.USDT)
107
+ .set(ASSET_ID.USDe, ASSET_ID.USDT)
108
+ .set(ASSET_ID.stTON, ASSET_ID.tsTON),
109
+ },
110
+ }),
111
+ poolAssetsConfig: MAINNET_POOL_ASSETS_CONFIG,
112
+ lendingCode: LENDING_CODE,
113
+ };
114
+
115
+ export const MAINNET_STABLE_POOL_CONFIG: PoolConfig = {
116
+ masterAddress: EVAA_STABLE_MAINNET,
117
+ masterVersion: STABLE_VERSION,
118
+ masterConstants: MASTER_CONSTANTS,
119
+ oracles: new PricesCollector({
120
+ poolAssetsConfig: MAINNET_STABLE_POOL_ASSETS_CONFIG,
121
+ minimalOracles: 3,
122
+ evaaOracles: ORACLES_MAINNET,
123
+ }),
124
+ poolAssetsConfig: MAINNET_STABLE_POOL_ASSETS_CONFIG,
125
+ lendingCode: LENDING_CODE,
126
+ };
127
+
128
+ export const MAINNET_LP_POOL_CONFIG: PoolConfig = {
129
+ masterAddress: EVAA_LP_MAINNET,
130
+ masterVersion: EVAA_LP_MAINNET_VERSION,
131
+ masterConstants: MASTER_CONSTANTS,
132
+ oracles: new PricesCollector({
133
+ poolAssetsConfig: MAINNET_LP_POOL_ASSETS_CONFIG,
134
+ minimalOracles: 3,
135
+ evaaOracles: ORACLES_LP,
136
+ }),
137
+ poolAssetsConfig: MAINNET_LP_POOL_ASSETS_CONFIG,
138
+ lendingCode: LENDING_CODE,
139
+ };
140
+
141
+ export const MAINNET_ALTS_POOL_CONFIG: PoolConfig = {
142
+ masterAddress: EVAA_ALTS_MAINNET,
143
+ masterVersion: EVAA_ALTS_MAINNET_VERSION,
144
+ masterConstants: MASTER_CONSTANTS,
145
+ oracles: new PricesCollector({
146
+ poolAssetsConfig: MAINNET_ALTS_POOL_ASSETS_CONFIG,
147
+ minimalOracles: 3,
148
+ evaaOracles: ORACLES_ALTS,
149
+ }),
150
+ poolAssetsConfig: MAINNET_ALTS_POOL_ASSETS_CONFIG,
151
+ lendingCode: LENDING_CODE,
152
+ };
153
+
154
+ export const MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG = [TON_MAINNET, USDT_MAINNET, JUSDT_MAINNET];
155
+
156
+ export const MAINNET_PYTH_V8_TOB_POOL_CONFIG: PoolConfig = {
157
+ masterAddress: EVAA_PYTH_TOB_MAINNET,
158
+ masterVersion: EVAA_PYTH_TOB_VERSION,
159
+ masterConstants: MASTER_CONSTANTS,
160
+ oracles: new PythCollector({
161
+ pythConfig: DefaultPythPriceSourcesConfig,
162
+ poolAssetsConfig: MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG,
163
+ pythOracle: {
164
+ feedsMap: Dictionary.empty<bigint, Buffer>()
165
+ .set(BigInt(PYTH_TON_PRICE_FEED_ID), packConnectedFeeds(ASSET_ID.TON, 0n))
166
+ .set(BigInt(PYTH_USDT_PRICE_FEED_ID), packConnectedFeeds(ASSET_ID.USDT, 0n)),
167
+ pythAddress: PYTH_ORACLE_MAINNET,
168
+ allowedRefTokens: Dictionary.empty<bigint, bigint>().set(
169
+ BigInt(EVAA_JUSDT_PRICE_FEED_ID),
170
+ BigInt(ASSET_ID.USDT),
171
+ ),
172
+ },
173
+ }),
174
+ poolAssetsConfig: MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG,
175
+ lendingCode: LENDING_CODE,
176
+ };
177
+
178
+ export const MAINNET_V8_TOB_POOL_ASSETS_CONFIG = [TON_MAINNET, USDT_MAINNET];
179
+
180
+ export const MAINNET_V8_TOB_POOL_CONFIG: PoolConfig = {
181
+ masterAddress: EVAA_TOB_MAINNET,
182
+ masterVersion: EVAA_TOB_VERSION,
183
+ masterConstants: MASTER_CONSTANTS,
184
+ oracles: new PricesCollector({
185
+ poolAssetsConfig: MAINNET_V8_TOB_POOL_ASSETS_CONFIG,
186
+ minimalOracles: 3,
187
+ evaaOracles: ORACLES_MAINNET,
188
+ }),
189
+ poolAssetsConfig: MAINNET_V8_TOB_POOL_ASSETS_CONFIG,
190
+ lendingCode: LENDING_CODE,
191
+ };
192
+
193
+ export const MAINNET_MASTER_TON_REWARD_CONFIG: EvaaRewardsConfig = {
194
+ adminAddress: EVAA_TON_REWARDS_MASTER_MAINNET,
195
+ evaaMasterAddress: new Address(0, Buffer.alloc(32, 0)),
196
+ rewardMasterCode: EVAA_REWARDS_MASTER_CODE_MAINNET,
197
+ rewardUserCode: EVAA_REWARDS_USER_CODE_MAINNET,
198
+ asset: TON_MAINNET,
199
+ availableReward: 0,
200
+ publicKey: Buffer.from('bfe9a30221db4dff4c17e55d985e0b13a8f597bbb28002f311dc4429dad1ca95', 'hex'), // adminAddress publicKey
201
+ };
202
+
203
+ export const MAINNET_MASTER_USDT_REWARD_CONFIG: EvaaRewardsConfig = {
204
+ adminAddress: EVAA_USDT_REWARDS_MASTER_MAINNET,
205
+ evaaMasterAddress: new Address(0, Buffer.alloc(32, 0)),
206
+ rewardMasterCode: EVAA_REWARDS_MASTER_CODE_MAINNET,
207
+ rewardUserCode: EVAA_REWARDS_USER_CODE_MAINNET,
208
+ asset: USDT_MAINNET,
209
+ availableReward: 0,
210
+ publicKey: Buffer.from('9813725d6cead1c9bbc0e24b21d4fc62a7fa8ac4bb01b6758df30169a71dba67', 'hex'), // adminAddress publicKey
211
+ };
212
+
213
+ export const ALL_MAINNET_POOLS: PoolConfig[] = [
214
+ MAINNET_POOL_CONFIG,
215
+ MAINNET_LP_POOL_CONFIG,
216
+ MAINNET_ALTS_POOL_CONFIG,
217
+ MAINNET_STABLE_POOL_CONFIG,
218
+ ];
@@ -0,0 +1,75 @@
1
+ import { Address } from '@ton/core';
2
+ import { TESTNET_ALLOWED_REF_TOKENS, TESTNET_FEEDS_MAP } from '../../api/feeds';
3
+ import { DefaultPythPriceSourcesConfig, PricesCollector, PythCollector } from '../../prices';
4
+ import { PoolConfig } from '../../types/Master';
5
+ import { EvaaRewardsConfig } from '../../types/MasterRewards';
6
+ import { EUSDT_TESTNET, JUSDC_TESTNET, TON_TESTNET } from '../assets';
7
+ import {
8
+ EVAA_MASTER_TESTNET_CLASSIC_TOB_AUDITED,
9
+ EVAA_MASTER_TESTNET_PYTH_TOB_AUDITED,
10
+ EVAA_REWARDS_MASTER_CODE_TESTNET,
11
+ EVAA_REWARDS_MASTER_TESTNET,
12
+ EVAA_REWARDS_USER_CODE_TESTNET,
13
+ LENDING_CODE,
14
+ MASTER_CONSTANTS,
15
+ ORACLES_TESTNET,
16
+ PYTH_ORACLE_TESTNET,
17
+ TESTNET_CLASSIC_TOB_AUDITED,
18
+ TESTNET_PYTH_VERSION_TOB_AUDITED,
19
+ } from '../general';
20
+
21
+ export const TESTNET_POOL_ASSETS_CONFIG = [TON_TESTNET, JUSDC_TESTNET];
22
+
23
+ export const TESTNET_POOL_ASSETS_CONFIG_TOB_AUDITED = [TON_TESTNET, JUSDC_TESTNET];
24
+
25
+ export const TESTNET_PYTH_POOL_CONFIG_TOB_AUDITED: PoolConfig = {
26
+ masterAddress: EVAA_MASTER_TESTNET_PYTH_TOB_AUDITED,
27
+ masterVersion: TESTNET_PYTH_VERSION_TOB_AUDITED,
28
+ masterConstants: MASTER_CONSTANTS,
29
+ oracles: new PythCollector({
30
+ poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG_TOB_AUDITED,
31
+ pythOracle: {
32
+ feedsMap: TESTNET_FEEDS_MAP,
33
+ pythAddress: PYTH_ORACLE_TESTNET,
34
+ allowedRefTokens: TESTNET_ALLOWED_REF_TOKENS,
35
+ },
36
+ pythConfig: DefaultPythPriceSourcesConfig,
37
+ }),
38
+ poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG_TOB_AUDITED,
39
+ lendingCode: LENDING_CODE,
40
+ };
41
+
42
+ export const TESTNET_CLASSIC_POOL_CONFIG_TOB_AUDITED: PoolConfig = {
43
+ masterAddress: EVAA_MASTER_TESTNET_CLASSIC_TOB_AUDITED,
44
+ masterVersion: TESTNET_CLASSIC_TOB_AUDITED,
45
+ masterConstants: MASTER_CONSTANTS,
46
+ oracles: new PricesCollector({
47
+ poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG,
48
+ minimalOracles: 3,
49
+ evaaOracles: ORACLES_TESTNET,
50
+ }),
51
+ lendingCode: LENDING_CODE,
52
+ poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG,
53
+ };
54
+
55
+ export const TESTNET_MASTER_REWARD_CONFIG: EvaaRewardsConfig = {
56
+ adminAddress: EVAA_REWARDS_MASTER_TESTNET,
57
+ evaaMasterAddress: new Address(0, Buffer.alloc(32, 0)),
58
+ rewardMasterCode: EVAA_REWARDS_MASTER_CODE_TESTNET,
59
+ rewardUserCode: EVAA_REWARDS_USER_CODE_TESTNET,
60
+ asset: TON_TESTNET,
61
+ availableReward: 0,
62
+ publicKey: Buffer.from('c38be45e033419b49cd22c97fbd23610fbc851a931208f8b4a1817dd11cb63ac', 'hex'), // adminAddress publicKey
63
+ };
64
+
65
+ export const TESTNET_MASTER_EUSDT_REWARD_CONFIG: EvaaRewardsConfig = {
66
+ adminAddress: EVAA_REWARDS_MASTER_TESTNET,
67
+ evaaMasterAddress: new Address(0, Buffer.alloc(32, 0)),
68
+ rewardMasterCode: EVAA_REWARDS_MASTER_CODE_TESTNET,
69
+ rewardUserCode: EVAA_REWARDS_USER_CODE_TESTNET,
70
+ asset: EUSDT_TESTNET,
71
+ availableReward: 0,
72
+ publicKey: Buffer.from('c38be45e033419b49cd22c97fbd23610fbc851a931208f8b4a1817dd11cb63ac', 'hex'), // adminAddress publicKey
73
+ };
74
+
75
+ export const ALL_TESTNET_POOLS: PoolConfig[] = [];