@defisaver/automation-sdk 3.0.9 → 3.1.1-dev-2

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 (242) hide show
  1. package/.babelrc +3 -3
  2. package/.editorconfig +9 -9
  3. package/.env.dev +4 -4
  4. package/.eslintignore +6 -7
  5. package/.eslintrc.js +39 -41
  6. package/.mocharc.json +5 -0
  7. package/.nvmrc +1 -0
  8. package/README.md +47 -41
  9. package/cjs/abis/Erc20.json +223 -0
  10. package/cjs/abis/SubStorage.json +21 -0
  11. package/cjs/abis/UniMulticall.json +17 -0
  12. package/cjs/abis/index.d.ts +9 -0
  13. package/cjs/abis/index.js +30 -0
  14. package/cjs/abis/legacy_AaveV2Subscriptions.json +8 -0
  15. package/cjs/abis/legacy_AuthCheck.json +8 -0
  16. package/cjs/abis/legacy_CompoundV2Subscriptions.json +9 -0
  17. package/cjs/abis/legacy_MakerSubscriptions.json +9 -0
  18. package/cjs/automation/private/Automation.d.ts +12 -0
  19. package/cjs/automation/private/Automation.js +42 -0
  20. package/cjs/automation/private/LegacyAutomation.d.ts +25 -0
  21. package/cjs/automation/private/LegacyAutomation.js +118 -0
  22. package/cjs/automation/private/LegacyProtocol.d.ts +22 -0
  23. package/cjs/automation/private/LegacyProtocol.js +41 -0
  24. package/cjs/automation/private/LegacyProtocol.test.d.ts +1 -0
  25. package/cjs/automation/private/LegacyProtocol.test.js +25 -0
  26. package/cjs/automation/private/Protocol.d.ts +22 -0
  27. package/cjs/automation/private/Protocol.js +41 -0
  28. package/cjs/automation/private/Protocol.test.d.ts +1 -0
  29. package/cjs/automation/private/Protocol.test.js +25 -0
  30. package/cjs/automation/private/StrategiesAutomation.d.ts +33 -0
  31. package/cjs/automation/private/StrategiesAutomation.js +181 -0
  32. package/cjs/automation/private/StrategiesAutomation.test.d.ts +1 -0
  33. package/cjs/automation/private/StrategiesAutomation.test.js +671 -0
  34. package/cjs/automation/public/ArbitrumStrategies.d.ts +5 -0
  35. package/cjs/automation/public/ArbitrumStrategies.js +13 -0
  36. package/cjs/automation/public/BaseStrategies.d.ts +5 -0
  37. package/cjs/automation/public/BaseStrategies.js +13 -0
  38. package/cjs/automation/public/EthereumStrategies.d.ts +5 -0
  39. package/cjs/automation/public/EthereumStrategies.js +13 -0
  40. package/cjs/automation/public/OptimismStrategies.d.ts +5 -0
  41. package/cjs/automation/public/OptimismStrategies.js +13 -0
  42. package/cjs/automation/public/legacy/LegacyAaveAutomation.d.ts +6 -0
  43. package/cjs/automation/public/legacy/LegacyAaveAutomation.js +20 -0
  44. package/cjs/automation/public/legacy/LegacyCompoundAutomation.d.ts +6 -0
  45. package/cjs/automation/public/legacy/LegacyCompoundAutomation.js +20 -0
  46. package/cjs/automation/public/legacy/LegacyMakerAutomation.d.ts +6 -0
  47. package/cjs/automation/public/legacy/LegacyMakerAutomation.js +20 -0
  48. package/cjs/configuration.d.ts +1 -0
  49. package/cjs/configuration.js +12 -0
  50. package/cjs/constants/index.d.ts +28 -0
  51. package/cjs/constants/index.js +489 -0
  52. package/cjs/index.d.ts +23 -0
  53. package/cjs/index.js +65 -0
  54. package/cjs/services/contractService.d.ts +12 -0
  55. package/cjs/services/contractService.js +54 -0
  56. package/cjs/services/ethereumService.d.ts +7 -0
  57. package/cjs/services/ethereumService.js +49 -0
  58. package/cjs/services/ethereumService.test.d.ts +1 -0
  59. package/cjs/services/ethereumService.test.js +242 -0
  60. package/cjs/services/strategiesService.d.ts +2 -0
  61. package/cjs/services/strategiesService.js +778 -0
  62. package/cjs/services/strategiesService.test.d.ts +1 -0
  63. package/cjs/services/strategiesService.test.js +110 -0
  64. package/cjs/services/strategySubService.d.ts +104 -0
  65. package/cjs/services/strategySubService.js +286 -0
  66. package/cjs/services/strategySubService.test.d.ts +1 -0
  67. package/cjs/services/strategySubService.test.js +934 -0
  68. package/cjs/services/subDataService.d.ts +211 -0
  69. package/cjs/services/subDataService.js +529 -0
  70. package/cjs/services/subDataService.test.d.ts +1 -0
  71. package/cjs/services/subDataService.test.js +1282 -0
  72. package/cjs/services/triggerService.d.ts +208 -0
  73. package/cjs/services/triggerService.js +399 -0
  74. package/cjs/services/triggerService.test.d.ts +1 -0
  75. package/cjs/services/triggerService.test.js +926 -0
  76. package/cjs/services/utils.d.ts +26 -0
  77. package/cjs/services/utils.js +159 -0
  78. package/cjs/services/utils.test.d.ts +1 -0
  79. package/cjs/services/utils.test.js +376 -0
  80. package/cjs/types/contracts/generated/Erc20.d.ts +53 -0
  81. package/cjs/types/contracts/generated/Erc20.js +5 -0
  82. package/cjs/types/contracts/generated/Legacy_AaveV2Subscriptions.d.ts +129 -0
  83. package/cjs/types/contracts/generated/Legacy_AaveV2Subscriptions.js +5 -0
  84. package/cjs/types/contracts/generated/Legacy_AuthCheck.d.ts +20 -0
  85. package/cjs/types/contracts/generated/Legacy_AuthCheck.js +5 -0
  86. package/cjs/types/contracts/generated/Legacy_CompoundV2Subscriptions.d.ts +128 -0
  87. package/cjs/types/contracts/generated/Legacy_CompoundV2Subscriptions.js +5 -0
  88. package/cjs/types/contracts/generated/Legacy_MakerSubscriptions.d.ts +246 -0
  89. package/cjs/types/contracts/generated/Legacy_MakerSubscriptions.js +5 -0
  90. package/cjs/types/contracts/generated/SubStorage.d.ts +114 -0
  91. package/cjs/types/contracts/generated/SubStorage.js +5 -0
  92. package/cjs/types/contracts/generated/UniMulticall.d.ts +55 -0
  93. package/cjs/types/contracts/generated/UniMulticall.js +5 -0
  94. package/cjs/types/contracts/generated/index.d.ts +7 -0
  95. package/cjs/types/contracts/generated/index.js +2 -0
  96. package/cjs/types/contracts/generated/types.d.ts +54 -0
  97. package/cjs/types/contracts/generated/types.js +2 -0
  98. package/cjs/types/enums.d.ts +208 -0
  99. package/cjs/types/enums.js +234 -0
  100. package/cjs/types/index.d.ts +224 -0
  101. package/cjs/types/index.js +2 -0
  102. package/esm/abis/Erc20.json +223 -223
  103. package/esm/abis/SubStorage.json +21 -17
  104. package/esm/abis/UniMulticall.json +17 -14
  105. package/esm/abis/index.d.ts +9 -9
  106. package/esm/abis/index.js +18 -30
  107. package/esm/abis/legacy_AaveV2Subscriptions.json +8 -8
  108. package/esm/abis/legacy_AuthCheck.json +8 -8
  109. package/esm/abis/legacy_CompoundV2Subscriptions.json +9 -9
  110. package/esm/abis/legacy_MakerSubscriptions.json +9 -9
  111. package/esm/automation/private/Automation.d.ts +12 -12
  112. package/esm/automation/private/Automation.js +39 -42
  113. package/esm/automation/private/LegacyAutomation.d.ts +25 -25
  114. package/esm/automation/private/LegacyAutomation.js +112 -118
  115. package/esm/automation/private/LegacyProtocol.d.ts +22 -22
  116. package/esm/automation/private/LegacyProtocol.js +38 -41
  117. package/esm/automation/private/LegacyProtocol.test.d.ts +1 -1
  118. package/esm/automation/private/LegacyProtocol.test.js +20 -25
  119. package/esm/automation/private/Protocol.d.ts +22 -22
  120. package/esm/automation/private/Protocol.js +38 -41
  121. package/esm/automation/private/Protocol.test.d.ts +1 -1
  122. package/esm/automation/private/Protocol.test.js +20 -25
  123. package/esm/automation/private/StrategiesAutomation.d.ts +33 -33
  124. package/esm/automation/private/StrategiesAutomation.js +175 -181
  125. package/esm/automation/private/StrategiesAutomation.test.d.ts +1 -1
  126. package/esm/automation/private/StrategiesAutomation.test.js +666 -671
  127. package/esm/automation/public/ArbitrumStrategies.d.ts +5 -5
  128. package/esm/automation/public/ArbitrumStrategies.js +7 -13
  129. package/esm/automation/public/BaseStrategies.d.ts +5 -0
  130. package/esm/automation/public/BaseStrategies.js +7 -0
  131. package/esm/automation/public/EthereumStrategies.d.ts +5 -5
  132. package/esm/automation/public/EthereumStrategies.js +7 -13
  133. package/esm/automation/public/OptimismStrategies.d.ts +5 -5
  134. package/esm/automation/public/OptimismStrategies.js +7 -13
  135. package/esm/automation/public/legacy/LegacyAaveAutomation.d.ts +6 -6
  136. package/esm/automation/public/legacy/LegacyAaveAutomation.js +14 -20
  137. package/esm/automation/public/legacy/LegacyCompoundAutomation.d.ts +6 -6
  138. package/esm/automation/public/legacy/LegacyCompoundAutomation.js +14 -20
  139. package/esm/automation/public/legacy/LegacyMakerAutomation.d.ts +6 -6
  140. package/esm/automation/public/legacy/LegacyMakerAutomation.js +14 -20
  141. package/esm/configuration.d.ts +1 -1
  142. package/esm/configuration.js +7 -12
  143. package/esm/constants/index.d.ts +28 -24
  144. package/esm/constants/index.js +483 -426
  145. package/esm/index.d.ts +23 -22
  146. package/esm/index.js +23 -63
  147. package/esm/services/contractService.d.ts +12 -12
  148. package/esm/services/contractService.js +45 -54
  149. package/esm/services/ethereumService.d.ts +7 -7
  150. package/esm/services/ethereumService.js +41 -49
  151. package/esm/services/ethereumService.test.d.ts +1 -1
  152. package/esm/services/ethereumService.test.js +237 -242
  153. package/esm/services/strategiesService.d.ts +2 -2
  154. package/esm/services/strategiesService.js +751 -722
  155. package/esm/services/strategiesService.test.d.ts +1 -1
  156. package/esm/services/strategiesService.test.js +108 -110
  157. package/esm/services/strategySubService.d.ts +104 -100
  158. package/esm/services/strategySubService.js +257 -264
  159. package/esm/services/strategySubService.test.d.ts +1 -1
  160. package/esm/services/strategySubService.test.js +906 -934
  161. package/esm/services/subDataService.d.ts +211 -192
  162. package/esm/services/subDataService.js +523 -475
  163. package/esm/services/subDataService.test.d.ts +1 -1
  164. package/esm/services/subDataService.test.js +1254 -1282
  165. package/esm/services/triggerService.d.ts +208 -191
  166. package/esm/services/triggerService.js +370 -367
  167. package/esm/services/triggerService.test.d.ts +1 -1
  168. package/esm/services/triggerService.test.js +901 -926
  169. package/esm/services/utils.d.ts +26 -25
  170. package/esm/services/utils.js +109 -131
  171. package/esm/services/utils.test.d.ts +1 -1
  172. package/esm/services/utils.test.js +348 -376
  173. package/esm/types/contracts/generated/Erc20.d.ts +53 -53
  174. package/esm/types/contracts/generated/Erc20.js +4 -5
  175. package/esm/types/contracts/generated/Legacy_AaveV2Subscriptions.d.ts +129 -129
  176. package/esm/types/contracts/generated/Legacy_AaveV2Subscriptions.js +4 -5
  177. package/esm/types/contracts/generated/Legacy_AuthCheck.d.ts +20 -20
  178. package/esm/types/contracts/generated/Legacy_AuthCheck.js +4 -5
  179. package/esm/types/contracts/generated/Legacy_CompoundV2Subscriptions.d.ts +128 -128
  180. package/esm/types/contracts/generated/Legacy_CompoundV2Subscriptions.js +4 -5
  181. package/esm/types/contracts/generated/Legacy_MakerSubscriptions.d.ts +246 -246
  182. package/esm/types/contracts/generated/Legacy_MakerSubscriptions.js +4 -5
  183. package/esm/types/contracts/generated/SubStorage.d.ts +114 -114
  184. package/esm/types/contracts/generated/SubStorage.js +4 -5
  185. package/esm/types/contracts/generated/UniMulticall.d.ts +55 -55
  186. package/esm/types/contracts/generated/UniMulticall.js +4 -5
  187. package/esm/types/contracts/generated/index.d.ts +7 -7
  188. package/esm/types/contracts/generated/index.js +1 -2
  189. package/esm/types/contracts/generated/types.d.ts +54 -54
  190. package/esm/types/contracts/generated/types.js +1 -2
  191. package/esm/types/enums.d.ts +208 -168
  192. package/esm/types/enums.js +231 -188
  193. package/esm/types/index.d.ts +224 -220
  194. package/esm/types/index.js +1 -2
  195. package/package.json +61 -71
  196. package/scripts/generateContractTypes.js +39 -39
  197. package/src/abis/Erc20.json +222 -222
  198. package/src/abis/SubStorage.json +21 -17
  199. package/src/abis/UniMulticall.json +17 -14
  200. package/src/abis/index.ts +28 -28
  201. package/src/abis/legacy_AaveV2Subscriptions.json +7 -7
  202. package/src/abis/legacy_AuthCheck.json +7 -7
  203. package/src/abis/legacy_CompoundV2Subscriptions.json +8 -8
  204. package/src/abis/legacy_MakerSubscriptions.json +8 -8
  205. package/src/automation/private/Automation.ts +44 -44
  206. package/src/automation/private/LegacyAutomation.ts +135 -135
  207. package/src/automation/private/LegacyProtocol.test.ts +23 -23
  208. package/src/automation/private/LegacyProtocol.ts +51 -51
  209. package/src/automation/private/Protocol.test.ts +23 -23
  210. package/src/automation/private/Protocol.ts +51 -51
  211. package/src/automation/private/StrategiesAutomation.test.ts +663 -663
  212. package/src/automation/private/StrategiesAutomation.ts +242 -242
  213. package/src/automation/public/ArbitrumStrategies.ts +10 -10
  214. package/src/automation/public/BaseStrategies.ts +10 -0
  215. package/src/automation/public/EthereumStrategies.ts +10 -10
  216. package/src/automation/public/OptimismStrategies.ts +10 -10
  217. package/src/automation/public/legacy/LegacyAaveAutomation.ts +20 -20
  218. package/src/automation/public/legacy/LegacyCompoundAutomation.ts +20 -20
  219. package/src/automation/public/legacy/LegacyMakerAutomation.ts +20 -20
  220. package/src/configuration.ts +8 -8
  221. package/src/constants/index.ts +507 -441
  222. package/src/index.ts +39 -38
  223. package/src/services/contractService.ts +77 -77
  224. package/src/services/ethereumService.test.ts +257 -257
  225. package/src/services/ethereumService.ts +69 -69
  226. package/src/services/strategiesService.test.ts +105 -105
  227. package/src/services/strategiesService.ts +1008 -932
  228. package/src/services/strategySubService.test.ts +1119 -1119
  229. package/src/services/strategySubService.ts +567 -518
  230. package/src/services/subDataService.test.ts +1387 -1387
  231. package/src/services/subDataService.ts +725 -644
  232. package/src/services/triggerService.test.ts +1004 -1004
  233. package/src/services/triggerService.ts +502 -449
  234. package/src/services/utils.test.ts +430 -430
  235. package/src/services/utils.ts +137 -103
  236. package/src/types/enums.ts +228 -182
  237. package/src/types/index.ts +279 -273
  238. package/tsconfig.esm.json +8 -0
  239. package/tsconfig.json +22 -79
  240. package/umd/index.js +17 -133
  241. package/.tests.sh +0 -3
  242. package/webpack.umd.js +0 -52
@@ -0,0 +1,489 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BUNDLE_IDS = exports.BUNDLES_INFO = exports.ARBITRUM_BUNDLES_INFO = exports.BASE_BUNDLES_INFO = exports.OPTIMISM_BUNDLES_INFO = exports.MAINNET_BUNDLES_INFO = exports.STRATEGY_IDS = exports.STRATEGIES_INFO = exports.ARBITRUM_STRATEGIES_INFO = exports.BASE_STRATEGIES_INFO = exports.OPTIMISM_STRATEGIES_INFO = exports.MAINNET_STRATEGIES_INFO = exports.LEGACY_PROTOCOLS = exports.PROTOCOLS = exports.AAVE_V3_VARIABLE_BORROW_RATE = exports.ZERO_ADDRESS = void 0;
7
+ const enums_1 = require("../types/enums");
8
+ const Protocol_1 = __importDefault(require("../automation/private/Protocol"));
9
+ const LegacyProtocol_1 = __importDefault(require("../automation/private/LegacyProtocol"));
10
+ // General
11
+ exports.ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
12
+ exports.AAVE_V3_VARIABLE_BORROW_RATE = 2;
13
+ exports.PROTOCOLS = (() => {
14
+ const protocolsMapping = {};
15
+ Object.entries(enums_1.ProtocolIdentifiers.StrategiesAutomation).forEach(([id, value]) => {
16
+ protocolsMapping[id] = new Protocol_1.default({ id: value });
17
+ });
18
+ return protocolsMapping;
19
+ })();
20
+ exports.LEGACY_PROTOCOLS = (() => {
21
+ const protocolsMapping = {};
22
+ Object.entries(enums_1.ProtocolIdentifiers.LegacyAutomation).forEach(([id, value]) => {
23
+ protocolsMapping[id] = new LegacyProtocol_1.default({ id: value });
24
+ });
25
+ return protocolsMapping;
26
+ })();
27
+ // Strategies info
28
+ exports.MAINNET_STRATEGIES_INFO = {
29
+ [enums_1.Strategies.MainnetIds.MAKER_CLOSE_ON_PRICE_TO_DAI]: {
30
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.MAKER_CLOSE_ON_PRICE_TO_DAI,
31
+ strategyId: enums_1.Strategies.Identifiers.CloseOnPriceToDebt,
32
+ protocol: exports.PROTOCOLS.MakerDAO,
33
+ },
34
+ [enums_1.Strategies.MainnetIds.MAKER_CLOSE_ON_PRICE_TO_COLL]: {
35
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.MAKER_CLOSE_ON_PRICE_TO_COLL,
36
+ strategyId: enums_1.Strategies.Identifiers.CloseOnPriceToColl,
37
+ protocol: exports.PROTOCOLS.MakerDAO,
38
+ },
39
+ [enums_1.Strategies.MainnetIds.LIQUITY_CLOSE_ON_PRICE_TO_COLL_DEPRECATED]: {
40
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.LIQUITY_CLOSE_ON_PRICE_TO_COLL_DEPRECATED,
41
+ strategyId: enums_1.Strategies.Identifiers.CloseOnPriceToColl,
42
+ protocol: exports.PROTOCOLS.Liquity,
43
+ },
44
+ [enums_1.Strategies.MainnetIds.LIQUITY_CLOSE_ON_PRICE_TO_COLL]: {
45
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.LIQUITY_CLOSE_ON_PRICE_TO_COLL,
46
+ strategyId: enums_1.Strategies.Identifiers.CloseOnPriceToColl,
47
+ protocol: exports.PROTOCOLS.Liquity,
48
+ },
49
+ [enums_1.Strategies.MainnetIds.MAKER_TRAILING_STOP_LOSS_TO_COLL]: {
50
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.MAKER_TRAILING_STOP_LOSS_TO_COLL,
51
+ strategyId: enums_1.Strategies.Identifiers.TrailingStopToColl,
52
+ protocol: exports.PROTOCOLS.MakerDAO,
53
+ },
54
+ [enums_1.Strategies.MainnetIds.MAKER_TRAILING_STOP_LOSS_TO_DAI]: {
55
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.MAKER_TRAILING_STOP_LOSS_TO_DAI,
56
+ strategyId: enums_1.Strategies.Identifiers.TrailingStopToDebt,
57
+ protocol: exports.PROTOCOLS.MakerDAO,
58
+ },
59
+ [enums_1.Strategies.MainnetIds.LIQUITY_TRAILING_STOP_LOSS_TO_COLL]: {
60
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.LIQUITY_TRAILING_STOP_LOSS_TO_COLL,
61
+ strategyId: enums_1.Strategies.Identifiers.TrailingStopToColl,
62
+ protocol: exports.PROTOCOLS.Liquity,
63
+ },
64
+ [enums_1.Strategies.MainnetIds.CHICKEN_BONDS_REBOND]: {
65
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.CHICKEN_BONDS_REBOND,
66
+ strategyId: enums_1.Strategies.Identifiers.Rebond,
67
+ protocol: exports.PROTOCOLS.ChickenBonds,
68
+ },
69
+ [enums_1.Strategies.MainnetIds.EXCHANGE_DCA]: {
70
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.EXCHANGE_DCA,
71
+ strategyId: enums_1.Strategies.Identifiers.Dca,
72
+ protocol: exports.PROTOCOLS.Exchange,
73
+ },
74
+ [enums_1.Strategies.MainnetIds.EXCHANGE_LIMIT_ORDER]: {
75
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.EXCHANGE_LIMIT_ORDER,
76
+ strategyId: enums_1.Strategies.Identifiers.LimitOrder,
77
+ protocol: exports.PROTOCOLS.Exchange,
78
+ },
79
+ [enums_1.Strategies.MainnetIds.LIQUITY_DSR_PAYBACK]: {
80
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.LIQUITY_DSR_PAYBACK,
81
+ strategyId: enums_1.Strategies.Identifiers.SavingsDsrPayback,
82
+ protocol: exports.PROTOCOLS.Liquity,
83
+ },
84
+ [enums_1.Strategies.MainnetIds.LIQUITY_DSR_SUPPLY]: {
85
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.LIQUITY_DSR_SUPPLY,
86
+ strategyId: enums_1.Strategies.Identifiers.SavingsDsrSupply,
87
+ protocol: exports.PROTOCOLS.Liquity,
88
+ },
89
+ [enums_1.Strategies.MainnetIds.LIQUITY_DEBT_IN_FRONT_REPAY]: {
90
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.LIQUITY_DEBT_IN_FRONT_REPAY,
91
+ strategyId: enums_1.Strategies.Identifiers.DebtInFrontRepay,
92
+ protocol: exports.PROTOCOLS.Liquity,
93
+ },
94
+ [enums_1.Strategies.MainnetIds.CURVEUSD_PAYBACK]: {
95
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.CURVEUSD_PAYBACK,
96
+ strategyId: enums_1.Strategies.Identifiers.Payback,
97
+ protocol: exports.PROTOCOLS.CrvUSD,
98
+ },
99
+ [enums_1.Strategies.MainnetIds.AAVE_V3_OPEN_ORDER_FROM_DEBT]: {
100
+ strategyOrBundleId: enums_1.Strategies.MainnetIds.AAVE_V3_OPEN_ORDER_FROM_DEBT,
101
+ strategyId: enums_1.Strategies.Identifiers.OpenOrderFromDebt,
102
+ protocol: exports.PROTOCOLS.AaveV3,
103
+ },
104
+ };
105
+ exports.OPTIMISM_STRATEGIES_INFO = {
106
+ [enums_1.Strategies.OptimismIds.EXCHANGE_DCA]: {
107
+ strategyOrBundleId: enums_1.Strategies.OptimismIds.EXCHANGE_DCA,
108
+ strategyId: enums_1.Strategies.Identifiers.Dca,
109
+ protocol: exports.PROTOCOLS.Exchange,
110
+ },
111
+ [enums_1.Strategies.OptimismIds.EXCHANGE_LIMIT_ORDER]: {
112
+ strategyOrBundleId: enums_1.Strategies.OptimismIds.EXCHANGE_LIMIT_ORDER,
113
+ strategyId: enums_1.Strategies.Identifiers.LimitOrder,
114
+ protocol: exports.PROTOCOLS.Exchange,
115
+ },
116
+ [enums_1.Strategies.OptimismIds.AAVE_V3_OPEN_ORDER_FROM_DEBT]: {
117
+ strategyOrBundleId: enums_1.Strategies.OptimismIds.AAVE_V3_OPEN_ORDER_FROM_DEBT,
118
+ strategyId: enums_1.Strategies.Identifiers.OpenOrderFromDebt,
119
+ protocol: exports.PROTOCOLS.AaveV3,
120
+ },
121
+ };
122
+ exports.BASE_STRATEGIES_INFO = {
123
+ [enums_1.Strategies.BaseIds.EXCHANGE_DCA]: {
124
+ strategyOrBundleId: enums_1.Strategies.BaseIds.EXCHANGE_DCA,
125
+ strategyId: enums_1.Strategies.Identifiers.Dca,
126
+ protocol: exports.PROTOCOLS.Exchange,
127
+ },
128
+ [enums_1.Strategies.BaseIds.EXCHANGE_LIMIT_ORDER]: {
129
+ strategyOrBundleId: enums_1.Strategies.BaseIds.EXCHANGE_LIMIT_ORDER,
130
+ strategyId: enums_1.Strategies.Identifiers.LimitOrder,
131
+ protocol: exports.PROTOCOLS.Exchange,
132
+ },
133
+ };
134
+ exports.ARBITRUM_STRATEGIES_INFO = {
135
+ [enums_1.Strategies.ArbitrumIds.EXCHANGE_DCA]: {
136
+ strategyOrBundleId: enums_1.Strategies.ArbitrumIds.EXCHANGE_DCA,
137
+ strategyId: enums_1.Strategies.Identifiers.Dca,
138
+ protocol: exports.PROTOCOLS.Exchange,
139
+ },
140
+ [enums_1.Strategies.ArbitrumIds.EXCHANGE_LIMIT_ORDER]: {
141
+ strategyOrBundleId: enums_1.Strategies.ArbitrumIds.EXCHANGE_LIMIT_ORDER,
142
+ strategyId: enums_1.Strategies.Identifiers.LimitOrder,
143
+ protocol: exports.PROTOCOLS.Exchange,
144
+ },
145
+ [enums_1.Strategies.ArbitrumIds.AAVE_V3_OPEN_ORDER_FROM_DEBT]: {
146
+ strategyOrBundleId: enums_1.Strategies.ArbitrumIds.AAVE_V3_OPEN_ORDER_FROM_DEBT,
147
+ strategyId: enums_1.Strategies.Identifiers.OpenOrderFromDebt,
148
+ protocol: exports.PROTOCOLS.AaveV3,
149
+ },
150
+ };
151
+ exports.STRATEGIES_INFO = {
152
+ [enums_1.ChainId.Ethereum]: exports.MAINNET_STRATEGIES_INFO,
153
+ [enums_1.ChainId.Optimism]: exports.OPTIMISM_STRATEGIES_INFO,
154
+ [enums_1.ChainId.Arbitrum]: exports.ARBITRUM_STRATEGIES_INFO,
155
+ [enums_1.ChainId.Base]: exports.BASE_STRATEGIES_INFO,
156
+ };
157
+ exports.STRATEGY_IDS = {
158
+ [enums_1.ChainId.Ethereum]: enums_1.Strategies.MainnetIds,
159
+ [enums_1.ChainId.Optimism]: enums_1.Strategies.OptimismIds,
160
+ [enums_1.ChainId.Arbitrum]: enums_1.Strategies.ArbitrumIds,
161
+ [enums_1.ChainId.Base]: enums_1.Strategies.BaseIds,
162
+ };
163
+ // Bundles info
164
+ exports.MAINNET_BUNDLES_INFO = {
165
+ [enums_1.Bundles.MainnetIds.MAKER_REPAY_FROM_SMART_SAVINGS_YEARN]: {
166
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MAKER_REPAY_FROM_SMART_SAVINGS_YEARN,
167
+ bundleId: enums_1.BundleProtocols.Yearn,
168
+ bundleName: 'Yearn',
169
+ strategyId: enums_1.Strategies.Identifiers.SavingsLiqProtection,
170
+ protocol: exports.PROTOCOLS.MakerDAO,
171
+ },
172
+ [enums_1.Bundles.MainnetIds.MAKER_REPAY_FROM_SMART_SAVINGS_MSTABLE]: {
173
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MAKER_REPAY_FROM_SMART_SAVINGS_MSTABLE,
174
+ bundleId: enums_1.BundleProtocols.MStable,
175
+ bundleName: 'mStable',
176
+ strategyId: enums_1.Strategies.Identifiers.SavingsLiqProtection,
177
+ protocol: exports.PROTOCOLS.MakerDAO,
178
+ },
179
+ [enums_1.Bundles.MainnetIds.MAKER_REPAY_FROM_SMART_SAVINGS_RARI]: {
180
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MAKER_REPAY_FROM_SMART_SAVINGS_RARI,
181
+ bundleId: enums_1.BundleProtocols.Rari,
182
+ bundleName: 'Rari',
183
+ strategyId: enums_1.Strategies.Identifiers.SavingsLiqProtection,
184
+ protocol: exports.PROTOCOLS.MakerDAO,
185
+ },
186
+ [enums_1.Bundles.MainnetIds.COMP_V3_SW_REPAY_BUNDLE]: {
187
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_SW_REPAY_BUNDLE,
188
+ strategyId: enums_1.Strategies.Identifiers.Repay,
189
+ protocol: exports.PROTOCOLS.CompoundV3,
190
+ },
191
+ [enums_1.Bundles.MainnetIds.COMP_V3_SW_BOOST_BUNDLE]: {
192
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_SW_BOOST_BUNDLE,
193
+ strategyId: enums_1.Strategies.Identifiers.Boost,
194
+ protocol: exports.PROTOCOLS.CompoundV3,
195
+ },
196
+ [enums_1.Bundles.MainnetIds.COMP_V3_EOA_REPAY_BUNDLE]: {
197
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_EOA_REPAY_BUNDLE,
198
+ strategyId: enums_1.Strategies.Identifiers.EoaRepay,
199
+ protocol: exports.PROTOCOLS.CompoundV3,
200
+ },
201
+ [enums_1.Bundles.MainnetIds.COMP_V3_EOA_BOOST_BUNDLE]: {
202
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_EOA_BOOST_BUNDLE,
203
+ strategyId: enums_1.Strategies.Identifiers.EoaBoost,
204
+ protocol: exports.PROTOCOLS.CompoundV3,
205
+ },
206
+ [enums_1.Bundles.MainnetIds.COMP_V3_SW_REPAY_V2_BUNDLE]: {
207
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_SW_REPAY_V2_BUNDLE,
208
+ strategyId: enums_1.Strategies.Identifiers.Repay,
209
+ protocol: exports.PROTOCOLS.CompoundV3,
210
+ },
211
+ [enums_1.Bundles.MainnetIds.COMP_V3_SW_BOOST_V2_BUNDLE]: {
212
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_SW_BOOST_V2_BUNDLE,
213
+ strategyId: enums_1.Strategies.Identifiers.Boost,
214
+ protocol: exports.PROTOCOLS.CompoundV3,
215
+ },
216
+ [enums_1.Bundles.MainnetIds.COMP_V3_EOA_REPAY_V2_BUNDLE]: {
217
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_EOA_REPAY_V2_BUNDLE,
218
+ strategyId: enums_1.Strategies.Identifiers.EoaRepay,
219
+ protocol: exports.PROTOCOLS.CompoundV3,
220
+ },
221
+ [enums_1.Bundles.MainnetIds.COMP_V3_EOA_BOOST_V2_BUNDLE]: {
222
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_EOA_BOOST_V2_BUNDLE,
223
+ strategyId: enums_1.Strategies.Identifiers.EoaBoost,
224
+ protocol: exports.PROTOCOLS.CompoundV3,
225
+ },
226
+ [enums_1.Bundles.MainnetIds.LIQUITY_PAYBACK_USING_CHICKEN_BOND]: {
227
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.LIQUITY_PAYBACK_USING_CHICKEN_BOND,
228
+ strategyId: enums_1.Strategies.Identifiers.BondProtection,
229
+ protocol: exports.PROTOCOLS.Liquity,
230
+ },
231
+ [enums_1.Bundles.MainnetIds.AAVE_V3_REPAY]: {
232
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_REPAY,
233
+ strategyId: enums_1.Strategies.Identifiers.Repay,
234
+ protocol: exports.PROTOCOLS.AaveV3,
235
+ },
236
+ [enums_1.Bundles.MainnetIds.AAVE_V3_BOOST]: {
237
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_BOOST,
238
+ strategyId: enums_1.Strategies.Identifiers.Boost,
239
+ protocol: exports.PROTOCOLS.AaveV3,
240
+ },
241
+ [enums_1.Bundles.MainnetIds.MAKER_REPAY]: {
242
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MAKER_REPAY,
243
+ strategyId: enums_1.Strategies.Identifiers.Repay,
244
+ protocol: exports.PROTOCOLS.MakerDAO,
245
+ },
246
+ [enums_1.Bundles.MainnetIds.MAKER_BOOST]: {
247
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MAKER_BOOST,
248
+ strategyId: enums_1.Strategies.Identifiers.Boost,
249
+ protocol: exports.PROTOCOLS.MakerDAO,
250
+ },
251
+ [enums_1.Bundles.MainnetIds.AAVE_V3_CLOSE_TO_DEBT]: {
252
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_CLOSE_TO_DEBT,
253
+ strategyId: enums_1.Strategies.Identifiers.CloseToDebt,
254
+ protocol: exports.PROTOCOLS.AaveV3,
255
+ },
256
+ [enums_1.Bundles.MainnetIds.AAVE_V3_CLOSE_TO_DEBT_WITH_GAS_PRICE]: {
257
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_CLOSE_TO_DEBT_WITH_GAS_PRICE,
258
+ strategyId: enums_1.Strategies.Identifiers.CloseToDebtWithGasPrice,
259
+ protocol: exports.PROTOCOLS.AaveV3,
260
+ },
261
+ [enums_1.Bundles.MainnetIds.AAVE_V3_CLOSE_TO_COLLATERAL]: {
262
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_CLOSE_TO_COLLATERAL,
263
+ strategyId: enums_1.Strategies.Identifiers.CloseToCollateral,
264
+ protocol: exports.PROTOCOLS.AaveV3,
265
+ },
266
+ [enums_1.Bundles.MainnetIds.AAVE_V3_CLOSE_TO_COLLATERAL_WITH_GAS_PRICE]: {
267
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_CLOSE_TO_COLLATERAL_WITH_GAS_PRICE,
268
+ strategyId: enums_1.Strategies.Identifiers.CloseToCollateralWithGasPrice,
269
+ protocol: exports.PROTOCOLS.AaveV3,
270
+ },
271
+ [enums_1.Bundles.MainnetIds.MORPHO_AAVE_V2_REPAY]: {
272
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_AAVE_V2_REPAY,
273
+ strategyId: enums_1.Strategies.Identifiers.Repay,
274
+ protocol: exports.PROTOCOLS.MorphoAaveV2,
275
+ },
276
+ [enums_1.Bundles.MainnetIds.MORPHO_AAVE_V2_BOOST]: {
277
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_AAVE_V2_BOOST,
278
+ strategyId: enums_1.Strategies.Identifiers.Boost,
279
+ protocol: exports.PROTOCOLS.MorphoAaveV2,
280
+ },
281
+ [enums_1.Bundles.MainnetIds.LIQUITY_REPAY]: {
282
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.LIQUITY_REPAY,
283
+ strategyId: enums_1.Strategies.Identifiers.Repay,
284
+ protocol: exports.PROTOCOLS.Liquity,
285
+ },
286
+ [enums_1.Bundles.MainnetIds.LIQUITY_BOOST]: {
287
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.LIQUITY_BOOST,
288
+ strategyId: enums_1.Strategies.Identifiers.Boost,
289
+ protocol: exports.PROTOCOLS.Liquity,
290
+ },
291
+ [enums_1.Bundles.MainnetIds.SPARK_REPAY]: {
292
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.SPARK_REPAY,
293
+ strategyId: enums_1.Strategies.Identifiers.Repay,
294
+ protocol: exports.PROTOCOLS.Spark,
295
+ },
296
+ [enums_1.Bundles.MainnetIds.SPARK_BOOST]: {
297
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.SPARK_BOOST,
298
+ strategyId: enums_1.Strategies.Identifiers.Boost,
299
+ protocol: exports.PROTOCOLS.Spark,
300
+ },
301
+ [enums_1.Bundles.MainnetIds.SPARK_CLOSE_TO_DEBT]: {
302
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.SPARK_CLOSE_TO_DEBT,
303
+ strategyId: enums_1.Strategies.Identifiers.CloseToDebt,
304
+ protocol: exports.PROTOCOLS.Spark,
305
+ },
306
+ [enums_1.Bundles.MainnetIds.SPARK_CLOSE_TO_COLLATERAL]: {
307
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.SPARK_CLOSE_TO_COLLATERAL,
308
+ strategyId: enums_1.Strategies.Identifiers.CloseToCollateral,
309
+ protocol: exports.PROTOCOLS.Spark,
310
+ },
311
+ [enums_1.Bundles.MainnetIds.AAVE_V2_REPAY]: {
312
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V2_REPAY,
313
+ strategyId: enums_1.Strategies.Identifiers.Repay,
314
+ protocol: exports.PROTOCOLS.AaveV2,
315
+ },
316
+ [enums_1.Bundles.MainnetIds.AAVE_V2_BOOST]: {
317
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V2_BOOST,
318
+ strategyId: enums_1.Strategies.Identifiers.Boost,
319
+ protocol: exports.PROTOCOLS.AaveV2,
320
+ },
321
+ [enums_1.Bundles.MainnetIds.COMP_V2_REPAY]: {
322
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V2_REPAY,
323
+ strategyId: enums_1.Strategies.Identifiers.Repay,
324
+ protocol: exports.PROTOCOLS.CompoundV2,
325
+ },
326
+ [enums_1.Bundles.MainnetIds.COMP_V2_BOOST]: {
327
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V2_BOOST,
328
+ strategyId: enums_1.Strategies.Identifiers.Boost,
329
+ protocol: exports.PROTOCOLS.CompoundV2,
330
+ },
331
+ [enums_1.Bundles.MainnetIds.CRVUSD_REPAY]: {
332
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.CRVUSD_REPAY,
333
+ strategyId: enums_1.Strategies.Identifiers.Repay,
334
+ protocol: exports.PROTOCOLS.CrvUSD,
335
+ },
336
+ [enums_1.Bundles.MainnetIds.CRVUSD_BOOST]: {
337
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.CRVUSD_BOOST,
338
+ strategyId: enums_1.Strategies.Identifiers.Boost,
339
+ protocol: exports.PROTOCOLS.CrvUSD,
340
+ },
341
+ [enums_1.Bundles.MainnetIds.MORPHO_BLUE_REPAY]: {
342
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_REPAY,
343
+ strategyId: enums_1.Strategies.Identifiers.Repay,
344
+ protocol: exports.PROTOCOLS.MorphoBlue,
345
+ },
346
+ [enums_1.Bundles.MainnetIds.MORPHO_BLUE_BOOST]: {
347
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_BOOST,
348
+ strategyId: enums_1.Strategies.Identifiers.Boost,
349
+ protocol: exports.PROTOCOLS.MorphoBlue,
350
+ },
351
+ [enums_1.Bundles.MainnetIds.MORPHO_BLUE_EOA_REPAY]: {
352
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_EOA_REPAY,
353
+ strategyId: enums_1.Strategies.Identifiers.EoaRepay,
354
+ protocol: exports.PROTOCOLS.MorphoBlue,
355
+ },
356
+ [enums_1.Bundles.MainnetIds.MORPHO_BLUE_EOA_BOOST]: {
357
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_EOA_BOOST,
358
+ strategyId: enums_1.Strategies.Identifiers.EoaBoost,
359
+ protocol: exports.PROTOCOLS.MorphoBlue,
360
+ },
361
+ [enums_1.Bundles.MainnetIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL]: {
362
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL,
363
+ strategyId: enums_1.Strategies.Identifiers.OpenOrderFromCollateral,
364
+ protocol: exports.PROTOCOLS.AaveV3,
365
+ },
366
+ [enums_1.Bundles.MainnetIds.LIQUITY_V2_REPAY]: {
367
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.LIQUITY_V2_REPAY,
368
+ strategyId: enums_1.Strategies.Identifiers.Repay,
369
+ protocol: exports.PROTOCOLS.LiquityV2,
370
+ },
371
+ [enums_1.Bundles.MainnetIds.LIQUITY_V2_BOOST]: {
372
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.LIQUITY_V2_BOOST,
373
+ strategyId: enums_1.Strategies.Identifiers.Boost,
374
+ protocol: exports.PROTOCOLS.LiquityV2,
375
+ },
376
+ [enums_1.Bundles.MainnetIds.LIQUITY_V2_CLOSE]: {
377
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.LIQUITY_V2_CLOSE,
378
+ strategyId: enums_1.Strategies.Identifiers.CloseOnPrice,
379
+ protocol: exports.PROTOCOLS.LiquityV2,
380
+ },
381
+ };
382
+ exports.OPTIMISM_BUNDLES_INFO = {
383
+ [enums_1.Bundles.OptimismIds.AAVE_V3_REPAY]: {
384
+ strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_REPAY,
385
+ strategyId: enums_1.Strategies.Identifiers.Repay,
386
+ protocol: exports.PROTOCOLS.AaveV3,
387
+ },
388
+ [enums_1.Bundles.OptimismIds.AAVE_V3_BOOST]: {
389
+ strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_BOOST,
390
+ strategyId: enums_1.Strategies.Identifiers.Boost,
391
+ protocol: exports.PROTOCOLS.AaveV3,
392
+ },
393
+ [enums_1.Bundles.OptimismIds.AAVE_V3_CLOSE_TO_DEBT]: {
394
+ strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_CLOSE_TO_DEBT,
395
+ strategyId: enums_1.Strategies.Identifiers.CloseToDebt,
396
+ protocol: exports.PROTOCOLS.AaveV3,
397
+ },
398
+ [enums_1.Bundles.OptimismIds.AAVE_V3_CLOSE_TO_COLLATERAL]: {
399
+ strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_CLOSE_TO_COLLATERAL,
400
+ strategyId: enums_1.Strategies.Identifiers.CloseToCollateral,
401
+ protocol: exports.PROTOCOLS.AaveV3,
402
+ },
403
+ [enums_1.Bundles.OptimismIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL]: {
404
+ strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL,
405
+ strategyId: enums_1.Strategies.Identifiers.OpenOrderFromCollateral,
406
+ protocol: exports.PROTOCOLS.AaveV3,
407
+ },
408
+ };
409
+ exports.BASE_BUNDLES_INFO = {
410
+ [enums_1.Bundles.BaseIds.AAVE_V3_REPAY]: {
411
+ strategyOrBundleId: enums_1.Bundles.BaseIds.AAVE_V3_REPAY,
412
+ strategyId: enums_1.Strategies.Identifiers.Repay,
413
+ protocol: exports.PROTOCOLS.AaveV3,
414
+ },
415
+ [enums_1.Bundles.BaseIds.AAVE_V3_BOOST]: {
416
+ strategyOrBundleId: enums_1.Bundles.BaseIds.AAVE_V3_BOOST,
417
+ strategyId: enums_1.Strategies.Identifiers.Boost,
418
+ protocol: exports.PROTOCOLS.AaveV3,
419
+ },
420
+ [enums_1.Bundles.BaseIds.AAVE_V3_CLOSE_TO_DEBT]: {
421
+ strategyOrBundleId: enums_1.Bundles.BaseIds.AAVE_V3_CLOSE_TO_DEBT,
422
+ strategyId: enums_1.Strategies.Identifiers.CloseToDebt,
423
+ protocol: exports.PROTOCOLS.AaveV3,
424
+ },
425
+ [enums_1.Bundles.BaseIds.AAVE_V3_CLOSE_TO_COLLATERAL]: {
426
+ strategyOrBundleId: enums_1.Bundles.BaseIds.AAVE_V3_CLOSE_TO_COLLATERAL,
427
+ strategyId: enums_1.Strategies.Identifiers.CloseToCollateral,
428
+ protocol: exports.PROTOCOLS.AaveV3,
429
+ },
430
+ [enums_1.Bundles.BaseIds.COMP_V3_SW_BOOST_BUNDLE]: {
431
+ strategyOrBundleId: enums_1.Bundles.BaseIds.COMP_V3_SW_BOOST_BUNDLE,
432
+ strategyId: enums_1.Strategies.Identifiers.Boost,
433
+ protocol: exports.PROTOCOLS.CompoundV3,
434
+ },
435
+ [enums_1.Bundles.BaseIds.COMP_V3_SW_REPAY_BUNDLE]: {
436
+ strategyOrBundleId: enums_1.Bundles.BaseIds.COMP_V3_SW_REPAY_BUNDLE,
437
+ strategyId: enums_1.Strategies.Identifiers.Repay,
438
+ protocol: exports.PROTOCOLS.CompoundV3,
439
+ },
440
+ };
441
+ exports.ARBITRUM_BUNDLES_INFO = {
442
+ [enums_1.Bundles.ArbitrumIds.AAVE_V3_REPAY]: {
443
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.AAVE_V3_REPAY,
444
+ strategyId: enums_1.Strategies.Identifiers.Repay,
445
+ protocol: exports.PROTOCOLS.AaveV3,
446
+ },
447
+ [enums_1.Bundles.ArbitrumIds.AAVE_V3_BOOST]: {
448
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.AAVE_V3_BOOST,
449
+ strategyId: enums_1.Strategies.Identifiers.Boost,
450
+ protocol: exports.PROTOCOLS.AaveV3,
451
+ },
452
+ [enums_1.Bundles.ArbitrumIds.AAVE_V3_CLOSE_TO_DEBT]: {
453
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.AAVE_V3_CLOSE_TO_DEBT,
454
+ strategyId: enums_1.Strategies.Identifiers.CloseToDebt,
455
+ protocol: exports.PROTOCOLS.AaveV3,
456
+ },
457
+ [enums_1.Bundles.ArbitrumIds.AAVE_V3_CLOSE_TO_COLLATERAL]: {
458
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.AAVE_V3_CLOSE_TO_COLLATERAL,
459
+ strategyId: enums_1.Strategies.Identifiers.CloseToCollateral,
460
+ protocol: exports.PROTOCOLS.AaveV3,
461
+ },
462
+ [enums_1.Bundles.ArbitrumIds.COMP_V3_SW_BOOST_BUNDLE]: {
463
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.COMP_V3_SW_BOOST_BUNDLE,
464
+ strategyId: enums_1.Strategies.Identifiers.Boost,
465
+ protocol: exports.PROTOCOLS.CompoundV3,
466
+ },
467
+ [enums_1.Bundles.ArbitrumIds.COMP_V3_SW_REPAY_BUNDLE]: {
468
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.COMP_V3_SW_REPAY_BUNDLE,
469
+ strategyId: enums_1.Strategies.Identifiers.Repay,
470
+ protocol: exports.PROTOCOLS.CompoundV3,
471
+ },
472
+ [enums_1.Bundles.ArbitrumIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL]: {
473
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.AAVE_V3_OPEN_ORDER_FROM_COLLATERAL,
474
+ strategyId: enums_1.Strategies.Identifiers.OpenOrderFromCollateral,
475
+ protocol: exports.PROTOCOLS.AaveV3,
476
+ },
477
+ };
478
+ exports.BUNDLES_INFO = {
479
+ [enums_1.ChainId.Ethereum]: exports.MAINNET_BUNDLES_INFO,
480
+ [enums_1.ChainId.Optimism]: exports.OPTIMISM_BUNDLES_INFO,
481
+ [enums_1.ChainId.Arbitrum]: exports.ARBITRUM_BUNDLES_INFO,
482
+ [enums_1.ChainId.Base]: exports.BASE_BUNDLES_INFO,
483
+ };
484
+ exports.BUNDLE_IDS = {
485
+ [enums_1.ChainId.Ethereum]: enums_1.Bundles.MainnetIds,
486
+ [enums_1.ChainId.Optimism]: enums_1.Bundles.OptimismIds,
487
+ [enums_1.ChainId.Arbitrum]: enums_1.Bundles.ArbitrumIds,
488
+ [enums_1.ChainId.Base]: enums_1.Bundles.BaseIds,
489
+ };
package/cjs/index.d.ts ADDED
@@ -0,0 +1,23 @@
1
+ import './configuration';
2
+ import LegacyMakerAutomation from './automation/public/legacy/LegacyMakerAutomation';
3
+ import LegacyAaveAutomation from './automation/public/legacy/LegacyAaveAutomation';
4
+ import LegacyCompoundAutomation from './automation/public/legacy/LegacyCompoundAutomation';
5
+ import EthereumStrategies from './automation/public/EthereumStrategies';
6
+ import OptimismStrategies from './automation/public/OptimismStrategies';
7
+ import ArbitrumStrategies from './automation/public/ArbitrumStrategies';
8
+ import BaseStrategies from './automation/public/BaseStrategies';
9
+ import * as triggerService from './services/triggerService';
10
+ import * as subDataService from './services/subDataService';
11
+ import * as strategySubService from './services/strategySubService';
12
+ import * as strategiesService from './services/strategiesService';
13
+ import * as constants from './constants';
14
+ import * as enums from './types/enums';
15
+ import type * as types from './types';
16
+ import { getRatioStateInfoForAaveCloseStrategy, compareSubHashes, encodeSubId } from './services/utils';
17
+ declare const utils: {
18
+ getRatioStateInfoForAaveCloseStrategy: typeof getRatioStateInfoForAaveCloseStrategy;
19
+ compareSubHashes: typeof compareSubHashes;
20
+ encodeSubId: typeof encodeSubId;
21
+ };
22
+ export { LegacyMakerAutomation, LegacyAaveAutomation, LegacyCompoundAutomation, EthereumStrategies, OptimismStrategies, ArbitrumStrategies, BaseStrategies, triggerService, subDataService, strategySubService, utils, enums, constants, strategiesService, };
23
+ export type { types };
package/cjs/index.js ADDED
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ // TODO
3
+ // [] Check @ts-ignores and PlaceholderType
4
+ // [] Improve typing for subData, trigger and strategySub services
5
+ // [] Make possible to use any provider not only web3 (This requires changes throughout the package)
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || function (mod) {
23
+ if (mod && mod.__esModule) return mod;
24
+ var result = {};
25
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26
+ __setModuleDefault(result, mod);
27
+ return result;
28
+ };
29
+ var __importDefault = (this && this.__importDefault) || function (mod) {
30
+ return (mod && mod.__esModule) ? mod : { "default": mod };
31
+ };
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.strategiesService = exports.constants = exports.enums = exports.utils = exports.strategySubService = exports.subDataService = exports.triggerService = exports.BaseStrategies = exports.ArbitrumStrategies = exports.OptimismStrategies = exports.EthereumStrategies = exports.LegacyCompoundAutomation = exports.LegacyAaveAutomation = exports.LegacyMakerAutomation = void 0;
34
+ require("./configuration");
35
+ const LegacyMakerAutomation_1 = __importDefault(require("./automation/public/legacy/LegacyMakerAutomation"));
36
+ exports.LegacyMakerAutomation = LegacyMakerAutomation_1.default;
37
+ const LegacyAaveAutomation_1 = __importDefault(require("./automation/public/legacy/LegacyAaveAutomation"));
38
+ exports.LegacyAaveAutomation = LegacyAaveAutomation_1.default;
39
+ const LegacyCompoundAutomation_1 = __importDefault(require("./automation/public/legacy/LegacyCompoundAutomation"));
40
+ exports.LegacyCompoundAutomation = LegacyCompoundAutomation_1.default;
41
+ const EthereumStrategies_1 = __importDefault(require("./automation/public/EthereumStrategies"));
42
+ exports.EthereumStrategies = EthereumStrategies_1.default;
43
+ const OptimismStrategies_1 = __importDefault(require("./automation/public/OptimismStrategies"));
44
+ exports.OptimismStrategies = OptimismStrategies_1.default;
45
+ const ArbitrumStrategies_1 = __importDefault(require("./automation/public/ArbitrumStrategies"));
46
+ exports.ArbitrumStrategies = ArbitrumStrategies_1.default;
47
+ const BaseStrategies_1 = __importDefault(require("./automation/public/BaseStrategies"));
48
+ exports.BaseStrategies = BaseStrategies_1.default;
49
+ const triggerService = __importStar(require("./services/triggerService"));
50
+ exports.triggerService = triggerService;
51
+ const subDataService = __importStar(require("./services/subDataService"));
52
+ exports.subDataService = subDataService;
53
+ const strategySubService = __importStar(require("./services/strategySubService"));
54
+ exports.strategySubService = strategySubService;
55
+ const strategiesService = __importStar(require("./services/strategiesService"));
56
+ exports.strategiesService = strategiesService;
57
+ const constants = __importStar(require("./constants"));
58
+ exports.constants = constants;
59
+ const enums = __importStar(require("./types/enums"));
60
+ exports.enums = enums;
61
+ const utils_1 = require("./services/utils");
62
+ const utils = {
63
+ getRatioStateInfoForAaveCloseStrategy: utils_1.getRatioStateInfoForAaveCloseStrategy, compareSubHashes: utils_1.compareSubHashes, encodeSubId: utils_1.encodeSubId,
64
+ };
65
+ exports.utils = utils;
@@ -0,0 +1,12 @@
1
+ import type Web3 from 'web3';
2
+ import type { AbiItem } from 'web3-utils';
3
+ import type { Contract, EthereumAddress } from '../types';
4
+ import type { BaseContract } from '../types/contracts/generated/types';
5
+ import type { Legacy_AuthCheck, SubStorage, UniMulticall, Erc20 } from '../types/contracts/generated';
6
+ import { ChainId } from '../types/enums';
7
+ export declare function getAbiItem(abi: AbiItem[], itemName: string): AbiItem;
8
+ export declare function makeUniMulticallContract(web3: Web3, chainId: ChainId): Contract.WithMeta<UniMulticall>;
9
+ export declare function makeSubStorageContract(web3: Web3, chainId: ChainId): Contract.WithMeta<SubStorage>;
10
+ export declare function makeAuthCheckerContract(web3: Web3, chainId: ChainId): Contract.WithMeta<Legacy_AuthCheck>;
11
+ export declare function makeLegacySubscriptionContract<T extends BaseContract>(web3: Web3, contractJson: Contract.Json): Contract.WithMeta<T>;
12
+ export declare function makeErc20Contract(web3: Web3, tokenAddress: EthereumAddress, chainId: ChainId): Contract.WithMeta<Erc20>;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeErc20Contract = exports.makeLegacySubscriptionContract = exports.makeAuthCheckerContract = exports.makeSubStorageContract = exports.makeUniMulticallContract = exports.getAbiItem = void 0;
4
+ const abis_1 = require("../abis");
5
+ const utils_1 = require("./utils");
6
+ const enums_1 = require("../types/enums");
7
+ function getAbiItem(abi, itemName) {
8
+ const abiItem = abi.find(i => i.name === itemName);
9
+ if ((0, utils_1.isDefined)(abiItem)) {
10
+ return abiItem;
11
+ }
12
+ throw new Error(`Can't find abi item for itemName: ${itemName}`);
13
+ }
14
+ exports.getAbiItem = getAbiItem;
15
+ function makeContract(web3, contractJson, chainId) {
16
+ const { abi } = contractJson;
17
+ let _address = '';
18
+ let _createdBlock = 'earliest';
19
+ if (contractJson.networks) {
20
+ const { address, createdBlock } = contractJson.networks[chainId];
21
+ _address = address;
22
+ if ((0, utils_1.isDefined)(createdBlock)) {
23
+ _createdBlock = createdBlock;
24
+ }
25
+ }
26
+ return {
27
+ abi,
28
+ address: _address,
29
+ createdBlock: _createdBlock,
30
+ contract: new web3.eth.Contract(abi, _address),
31
+ };
32
+ }
33
+ function makeUniMulticallContract(web3, chainId) {
34
+ return makeContract(web3, abis_1.UniMulticallJson, chainId);
35
+ }
36
+ exports.makeUniMulticallContract = makeUniMulticallContract;
37
+ function makeSubStorageContract(web3, chainId) {
38
+ return makeContract(web3, abis_1.SubStorageJson, chainId);
39
+ }
40
+ exports.makeSubStorageContract = makeSubStorageContract;
41
+ function makeAuthCheckerContract(web3, chainId) {
42
+ return makeContract(web3, abis_1.AuthCheckJson, chainId);
43
+ }
44
+ exports.makeAuthCheckerContract = makeAuthCheckerContract;
45
+ function makeLegacySubscriptionContract(web3, contractJson) {
46
+ return makeContract(web3, contractJson, enums_1.ChainId.Ethereum);
47
+ }
48
+ exports.makeLegacySubscriptionContract = makeLegacySubscriptionContract;
49
+ function makeErc20Contract(web3, tokenAddress, chainId) {
50
+ return makeContract(web3, Object.assign(Object.assign({}, abis_1.Erc20Json), { networks: {
51
+ [chainId]: { address: tokenAddress },
52
+ } }), chainId);
53
+ }
54
+ exports.makeErc20Contract = makeErc20Contract;
@@ -0,0 +1,7 @@
1
+ import type Web3 from 'web3';
2
+ import type { PastEventOptions } from 'web3-eth-contract';
3
+ import type { BlockNumber, Multicall, Contract } from '../types';
4
+ import type { BaseContract } from '../types/contracts/generated/types';
5
+ import type { ChainId } from '../types/enums';
6
+ export declare function multicall(web3: Web3, chainId: ChainId, calls: Multicall.Calls[], block?: BlockNumber): Promise<Multicall.Payload>;
7
+ export declare function getEventsFromContract<T extends BaseContract>(contractWithMeta: Contract.WithMeta<T>, contractWithMetaFork: Contract.WithMeta<T> | null, event: string, options?: PastEventOptions): Promise<any[]>;