@gearbox-protocol/sdk 18.2.0-next.13 → 18.2.0-next.15

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 (79) hide show
  1. package/dist/cjs/onchain/index.js +18 -0
  2. package/dist/cjs/onchain/market/adapters/abi/adapters/iTreehouseFastlaneAdapter.js +113 -0
  3. package/dist/cjs/onchain/market/adapters/abi/adapters/iTreehouseRedemptionGatewayAdapter.js +258 -0
  4. package/dist/cjs/onchain/market/adapters/abi/adapters/iTreehouseRouterAdapter.js +161 -0
  5. package/dist/cjs/onchain/market/adapters/abi/adapters/index.js +6 -0
  6. package/dist/cjs/onchain/market/adapters/abi/index.js +13 -0
  7. package/dist/cjs/onchain/market/adapters/abi/treehouse/iTreehouseFastlane.js +39 -0
  8. package/dist/cjs/onchain/market/adapters/abi/treehouse/iTreehouseRedemptionGateway.js +230 -0
  9. package/dist/cjs/onchain/market/adapters/abi/treehouse/iTreehouseRouter.js +29 -0
  10. package/dist/cjs/onchain/market/adapters/abi/treehouse/index.js +7 -0
  11. package/dist/cjs/onchain/market/adapters/contracts/TreehouseFastlaneAdapterContract.js +72 -0
  12. package/dist/cjs/onchain/market/adapters/contracts/TreehouseRedemptionGatewayAdapterContract.js +117 -0
  13. package/dist/cjs/onchain/market/adapters/contracts/TreehouseRouterAdapterContract.js +61 -0
  14. package/dist/cjs/onchain/market/adapters/contracts/index.js +6 -0
  15. package/dist/cjs/onchain/market/adapters/createAdapter.js +6 -0
  16. package/dist/cjs/onchain/market/adapters/index.js +18 -0
  17. package/dist/cjs/onchain/market/index.js +18 -0
  18. package/dist/cjs/permissionless/api/index.js +2 -1
  19. package/dist/cjs/permissionless/api/oracles/PermissionlessOracles.js +40 -5
  20. package/dist/cjs/permissionless/api/oracles/index.js +2 -1
  21. package/dist/cjs/permissionless/api/oracles/score/formula.js +19 -24
  22. package/dist/cjs/permissionless/api/oracles/score/index.js +1 -1
  23. package/dist/cjs/permissionless/api/oracles/score/run.js +186 -105
  24. package/dist/cjs/permissionless/api/oracles/stress/index.js +1 -0
  25. package/dist/cjs/permissionless/api/oracles/stress/run.js +63 -13
  26. package/dist/cjs/permissionless/index.js +2 -1
  27. package/dist/esm/onchain/index.js +10 -1
  28. package/dist/esm/onchain/market/adapters/abi/adapters/iTreehouseFastlaneAdapter.js +112 -0
  29. package/dist/esm/onchain/market/adapters/abi/adapters/iTreehouseRedemptionGatewayAdapter.js +257 -0
  30. package/dist/esm/onchain/market/adapters/abi/adapters/iTreehouseRouterAdapter.js +160 -0
  31. package/dist/esm/onchain/market/adapters/abi/adapters/index.js +4 -1
  32. package/dist/esm/onchain/market/adapters/abi/index.js +8 -1
  33. package/dist/esm/onchain/market/adapters/abi/treehouse/iTreehouseFastlane.js +38 -0
  34. package/dist/esm/onchain/market/adapters/abi/treehouse/iTreehouseRedemptionGateway.js +229 -0
  35. package/dist/esm/onchain/market/adapters/abi/treehouse/iTreehouseRouter.js +28 -0
  36. package/dist/esm/onchain/market/adapters/abi/treehouse/index.js +4 -0
  37. package/dist/esm/onchain/market/adapters/contracts/TreehouseFastlaneAdapterContract.js +71 -0
  38. package/dist/esm/onchain/market/adapters/contracts/TreehouseRedemptionGatewayAdapterContract.js +116 -0
  39. package/dist/esm/onchain/market/adapters/contracts/TreehouseRouterAdapterContract.js +60 -0
  40. package/dist/esm/onchain/market/adapters/contracts/index.js +4 -1
  41. package/dist/esm/onchain/market/adapters/createAdapter.js +6 -0
  42. package/dist/esm/onchain/market/adapters/index.js +10 -1
  43. package/dist/esm/onchain/market/index.js +10 -1
  44. package/dist/esm/permissionless/api/index.js +4 -4
  45. package/dist/esm/permissionless/api/oracles/PermissionlessOracles.js +41 -6
  46. package/dist/esm/permissionless/api/oracles/index.js +4 -4
  47. package/dist/esm/permissionless/api/oracles/score/formula.js +20 -24
  48. package/dist/esm/permissionless/api/oracles/score/index.js +3 -3
  49. package/dist/esm/permissionless/api/oracles/score/run.js +187 -107
  50. package/dist/esm/permissionless/api/oracles/stress/index.js +2 -2
  51. package/dist/esm/permissionless/api/oracles/stress/run.js +64 -15
  52. package/dist/esm/permissionless/index.js +4 -4
  53. package/dist/types/onchain/index.d.ts +10 -1
  54. package/dist/types/onchain/market/adapters/abi/adapters/iTreehouseFastlaneAdapter.d.ts +101 -0
  55. package/dist/types/onchain/market/adapters/abi/adapters/iTreehouseRedemptionGatewayAdapter.d.ts +237 -0
  56. package/dist/types/onchain/market/adapters/abi/adapters/iTreehouseRouterAdapter.d.ts +146 -0
  57. package/dist/types/onchain/market/adapters/abi/adapters/index.d.ts +4 -1
  58. package/dist/types/onchain/market/adapters/abi/index.d.ts +8 -1
  59. package/dist/types/onchain/market/adapters/abi/treehouse/iTreehouseFastlane.d.ts +33 -0
  60. package/dist/types/onchain/market/adapters/abi/treehouse/iTreehouseRedemptionGateway.d.ts +207 -0
  61. package/dist/types/onchain/market/adapters/abi/treehouse/iTreehouseRouter.d.ts +27 -0
  62. package/dist/types/onchain/market/adapters/abi/treehouse/index.d.ts +4 -0
  63. package/dist/types/onchain/market/adapters/contracts/TreehouseFastlaneAdapterContract.d.ts +156 -0
  64. package/dist/types/onchain/market/adapters/contracts/TreehouseRedemptionGatewayAdapterContract.d.ts +481 -0
  65. package/dist/types/onchain/market/adapters/contracts/TreehouseRouterAdapterContract.d.ts +193 -0
  66. package/dist/types/onchain/market/adapters/contracts/index.d.ts +4 -1
  67. package/dist/types/onchain/market/adapters/index.d.ts +10 -1
  68. package/dist/types/onchain/market/index.d.ts +10 -1
  69. package/dist/types/permissionless/api/index.d.ts +5 -5
  70. package/dist/types/permissionless/api/oracles/PermissionlessOracles.d.ts +30 -6
  71. package/dist/types/permissionless/api/oracles/index.d.ts +5 -5
  72. package/dist/types/permissionless/api/oracles/score/formula.d.ts +14 -17
  73. package/dist/types/permissionless/api/oracles/score/index.d.ts +4 -4
  74. package/dist/types/permissionless/api/oracles/score/run.d.ts +28 -10
  75. package/dist/types/permissionless/api/oracles/score/types.d.ts +33 -28
  76. package/dist/types/permissionless/api/oracles/stress/index.d.ts +2 -2
  77. package/dist/types/permissionless/api/oracles/stress/run.d.ts +11 -0
  78. package/dist/types/permissionless/index.d.ts +5 -5
  79. package/package.json +1 -1
@@ -0,0 +1,160 @@
1
+ //#region src/onchain/market/adapters/abi/adapters/iTreehouseRouterAdapter.ts
2
+ const iTreehouseRouterAdapterAbi = [
3
+ {
4
+ type: "function",
5
+ name: "allowedAssets",
6
+ inputs: [],
7
+ outputs: [{
8
+ name: "",
9
+ type: "address[]",
10
+ internalType: "address[]"
11
+ }],
12
+ stateMutability: "view"
13
+ },
14
+ {
15
+ type: "function",
16
+ name: "contractType",
17
+ inputs: [],
18
+ outputs: [{
19
+ name: "",
20
+ type: "bytes32",
21
+ internalType: "bytes32"
22
+ }],
23
+ stateMutability: "view"
24
+ },
25
+ {
26
+ type: "function",
27
+ name: "creditManager",
28
+ inputs: [],
29
+ outputs: [{
30
+ name: "",
31
+ type: "address",
32
+ internalType: "address"
33
+ }],
34
+ stateMutability: "view"
35
+ },
36
+ {
37
+ type: "function",
38
+ name: "deposit",
39
+ inputs: [{
40
+ name: "token",
41
+ type: "address",
42
+ internalType: "address"
43
+ }, {
44
+ name: "amount",
45
+ type: "uint256",
46
+ internalType: "uint256"
47
+ }],
48
+ outputs: [{
49
+ name: "",
50
+ type: "bool",
51
+ internalType: "bool"
52
+ }],
53
+ stateMutability: "nonpayable"
54
+ },
55
+ {
56
+ type: "function",
57
+ name: "depositDiff",
58
+ inputs: [{
59
+ name: "token",
60
+ type: "address",
61
+ internalType: "address"
62
+ }, {
63
+ name: "leftoverAmount",
64
+ type: "uint256",
65
+ internalType: "uint256"
66
+ }],
67
+ outputs: [{
68
+ name: "",
69
+ type: "bool",
70
+ internalType: "bool"
71
+ }],
72
+ stateMutability: "nonpayable"
73
+ },
74
+ {
75
+ type: "function",
76
+ name: "isAssetAllowed",
77
+ inputs: [{
78
+ name: "asset",
79
+ type: "address",
80
+ internalType: "address"
81
+ }],
82
+ outputs: [{
83
+ name: "",
84
+ type: "bool",
85
+ internalType: "bool"
86
+ }],
87
+ stateMutability: "view"
88
+ },
89
+ {
90
+ type: "function",
91
+ name: "serialize",
92
+ inputs: [],
93
+ outputs: [{
94
+ name: "serializedData",
95
+ type: "bytes",
96
+ internalType: "bytes"
97
+ }],
98
+ stateMutability: "view"
99
+ },
100
+ {
101
+ type: "function",
102
+ name: "setAssetStatusBatch",
103
+ inputs: [{
104
+ name: "assets",
105
+ type: "address[]",
106
+ internalType: "address[]"
107
+ }, {
108
+ name: "allowed",
109
+ type: "bool[]",
110
+ internalType: "bool[]"
111
+ }],
112
+ outputs: [],
113
+ stateMutability: "nonpayable"
114
+ },
115
+ {
116
+ type: "function",
117
+ name: "targetContract",
118
+ inputs: [],
119
+ outputs: [{
120
+ name: "",
121
+ type: "address",
122
+ internalType: "address"
123
+ }],
124
+ stateMutability: "view"
125
+ },
126
+ {
127
+ type: "function",
128
+ name: "version",
129
+ inputs: [],
130
+ outputs: [{
131
+ name: "",
132
+ type: "uint256",
133
+ internalType: "uint256"
134
+ }],
135
+ stateMutability: "view"
136
+ },
137
+ {
138
+ type: "event",
139
+ name: "SetAssetStatus",
140
+ inputs: [{
141
+ name: "asset",
142
+ type: "address",
143
+ indexed: true,
144
+ internalType: "address"
145
+ }, {
146
+ name: "allowed",
147
+ type: "bool",
148
+ indexed: false,
149
+ internalType: "bool"
150
+ }],
151
+ anonymous: false
152
+ },
153
+ {
154
+ type: "error",
155
+ name: "InvalidAssetException",
156
+ inputs: []
157
+ }
158
+ ];
159
+ //#endregion
160
+ export { iTreehouseRouterAdapterAbi };
@@ -26,6 +26,9 @@ import { iSecuritizeOnRampAdapterV310Abi } from "./iSecuritizeOnRampAdapterV310.
26
26
  import { iSecuritizeRedemptionGatewayAdapterV311Abi } from "./iSecuritizeRedemptionGatewayAdapterV311.js";
27
27
  import { iStakingRewardsAdapterAbi } from "./iStakingRewardsAdapter.js";
28
28
  import { iTraderJoeRouterAdapterAbi } from "./iTraderJoeRouterAdapter.js";
29
+ import { iTreehouseFastlaneAdapterAbi } from "./iTreehouseFastlaneAdapter.js";
30
+ import { iTreehouseRedemptionGatewayAdapterAbi } from "./iTreehouseRedemptionGatewayAdapter.js";
31
+ import { iTreehouseRouterAdapterAbi } from "./iTreehouseRouterAdapter.js";
29
32
  import { iUniswapV2AdapterAbi } from "./iUniswapV2Adapter.js";
30
33
  import { iUniswapV3AdapterAbi } from "./iUniswapV3Adapter.js";
31
34
  import { iUniswapV4AdapterAbi, iUniswapV4GatewayAbi } from "./iUniswapV4Adapter.js";
@@ -33,4 +36,4 @@ import { iUpshiftVaultAdapterAbi, iUpshiftVaultGatewayAbi } from "./iUpshiftVaul
33
36
  import { iVelodromeV2RouterAdapterAbi } from "./iVelodromeV2RouterAdapter.js";
34
37
  import { iwstEthv1AdapterAbi } from "./iwstEthv1Adapter.js";
35
38
  import { mellowDvvAdapterAbi } from "./mellowDvvAdapter.js";
36
- export { erc4626ReferralAdapterAbi, iBalancerV3RouterAdapterAbi, iBalancerV3WrapperAdapterAbi, iCamelotV3AdapterAbi, iConvexV1BaseRewardPoolAdapterAbi, iConvexV1BoosterAdapterAbi, iCurveV1StableNgAdapterAbi, iCurveV1_2AssetsAdapterAbi, iCurveV1_3AssetsAdapterAbi, iCurveV1_4AssetsAdapterAbi, iDaiUsdsAdapterAbi, iFluidDexAdapterAbi, iInfinifiGatewayAdapterAbi, iInfinifiUnwindingGatewayAbi, iInfinifiUnwindingGatewayAdapterAbi, iKelpLrtDepositPoolAdapterAbi, iKelpLrtDepositPoolGatewayAbi, iKelpLrtWithdrawalManagerAdapterAbi, iKelpLrtWithdrawalManagerGatewayAbi, iLidoV1AdapterAbi, iMellow4626VaultAdapterAbi, iMellowClaimerAdapterAbi, iMellowWrapperAdapterAbi, iMidasGatewayAdapterV311Abi, iMidasIssuanceVaultAdapterV310Abi, iMidasRedemptionVaultAdapterV310Abi, iMidasRedemptionVaultGatewayV310Abi, iPendleRouterAdapterAbi, iSecuritizeOnRampAdapterV310Abi, iSecuritizeRedemptionGatewayAdapterV311Abi, iStakingRewardsAdapterAbi, iTraderJoeRouterAdapterAbi, iUniswapV2AdapterAbi, iUniswapV3AdapterAbi, iUniswapV4AdapterAbi, iUniswapV4GatewayAbi, iUpshiftVaultAdapterAbi, iUpshiftVaultGatewayAbi, iVelodromeV2RouterAdapterAbi, iwstEthv1AdapterAbi, mellowDvvAdapterAbi };
39
+ export { erc4626ReferralAdapterAbi, iBalancerV3RouterAdapterAbi, iBalancerV3WrapperAdapterAbi, iCamelotV3AdapterAbi, iConvexV1BaseRewardPoolAdapterAbi, iConvexV1BoosterAdapterAbi, iCurveV1StableNgAdapterAbi, iCurveV1_2AssetsAdapterAbi, iCurveV1_3AssetsAdapterAbi, iCurveV1_4AssetsAdapterAbi, iDaiUsdsAdapterAbi, iFluidDexAdapterAbi, iInfinifiGatewayAdapterAbi, iInfinifiUnwindingGatewayAbi, iInfinifiUnwindingGatewayAdapterAbi, iKelpLrtDepositPoolAdapterAbi, iKelpLrtDepositPoolGatewayAbi, iKelpLrtWithdrawalManagerAdapterAbi, iKelpLrtWithdrawalManagerGatewayAbi, iLidoV1AdapterAbi, iMellow4626VaultAdapterAbi, iMellowClaimerAdapterAbi, iMellowWrapperAdapterAbi, iMidasGatewayAdapterV311Abi, iMidasIssuanceVaultAdapterV310Abi, iMidasRedemptionVaultAdapterV310Abi, iMidasRedemptionVaultGatewayV310Abi, iPendleRouterAdapterAbi, iSecuritizeOnRampAdapterV310Abi, iSecuritizeRedemptionGatewayAdapterV311Abi, iStakingRewardsAdapterAbi, iTraderJoeRouterAdapterAbi, iTreehouseFastlaneAdapterAbi, iTreehouseRedemptionGatewayAdapterAbi, iTreehouseRouterAdapterAbi, iUniswapV2AdapterAbi, iUniswapV3AdapterAbi, iUniswapV4AdapterAbi, iUniswapV4GatewayAbi, iUpshiftVaultAdapterAbi, iUpshiftVaultGatewayAbi, iVelodromeV2RouterAdapterAbi, iwstEthv1AdapterAbi, mellowDvvAdapterAbi };
@@ -27,6 +27,9 @@ import { iSecuritizeOnRampAdapterV310Abi } from "./adapters/iSecuritizeOnRampAda
27
27
  import { iSecuritizeRedemptionGatewayAdapterV311Abi } from "./adapters/iSecuritizeRedemptionGatewayAdapterV311.js";
28
28
  import { iStakingRewardsAdapterAbi } from "./adapters/iStakingRewardsAdapter.js";
29
29
  import { iTraderJoeRouterAdapterAbi } from "./adapters/iTraderJoeRouterAdapter.js";
30
+ import { iTreehouseFastlaneAdapterAbi } from "./adapters/iTreehouseFastlaneAdapter.js";
31
+ import { iTreehouseRedemptionGatewayAdapterAbi } from "./adapters/iTreehouseRedemptionGatewayAdapter.js";
32
+ import { iTreehouseRouterAdapterAbi } from "./adapters/iTreehouseRouterAdapter.js";
30
33
  import { iUniswapV2AdapterAbi } from "./adapters/iUniswapV2Adapter.js";
31
34
  import { iUniswapV3AdapterAbi } from "./adapters/iUniswapV3Adapter.js";
32
35
  import { iUniswapV4AdapterAbi, iUniswapV4GatewayAbi } from "./adapters/iUniswapV4Adapter.js";
@@ -43,5 +46,9 @@ import { iSecuritizeOnRampAbi } from "./securitize/iSecuritizeOnRamp.js";
43
46
  import { iSecuritizeRedemptionGatewayV311Abi } from "./securitize/iSecuritizeRedemptionGatewayV311.js";
44
47
  import "./securitize/index.js";
45
48
  import { iBalancerV3RouterAbi, iBalancerV3WrapperAbi, iBaseRewardPoolAbi, iBoosterAbi, iCamelotV3RouterAbi, iCurvePoolAbi, iCurvePoolStableNGAbi, iCurvePool_2Abi, iCurvePool_3Abi, iCurvePool_4Abi, iDaiUsdsAbi, iERC4626Abi, iERC4626ReferralAbi, iFluidDexAbi, iInfinifiGatewayAbi, iKelpLRTDepositPoolGatewayAbi, iKelpLRTWithdrawalManagerGatewayAbi, iMellowClaimerAbi, iMellowWrapperAbi, iMidasIssuanceVaultV310Abi, iPendleRouterAbi, iStakingRewardsAbi, iTraderJoeRouterAbi, iUniswapV2Router02Abi, iUniswapV3Abi, iVelodromeV2RouterAbi, iwstETHAbi, lidoV1_WETHGatewayAbi } from "./targetContractAbi.js";
49
+ import { iTreehouseFastlaneAbi } from "./treehouse/iTreehouseFastlane.js";
50
+ import { iTreehouseRedemptionGatewayAbi } from "./treehouse/iTreehouseRedemptionGateway.js";
51
+ import { iTreehouseRouterAbi } from "./treehouse/iTreehouseRouter.js";
52
+ import "./treehouse/index.js";
46
53
  import { getAdapterActionAbi, getAdapterDeployParamsAbi, getAdapterType, hasAdapterDeployParamsAbi, parseAdapterAction, parseAdapterDeployParams } from "./utils.js";
47
- export { adapterActionAbi, adapterActionSelectors, adapterActionSignatures, adapterConstructorAbi, erc4626ReferralAdapterAbi, getAdapterActionAbi, getAdapterDeployParamsAbi, getAdapterType, hasAdapterDeployParamsAbi, iBalancerV3RouterAbi, iBalancerV3RouterAdapterAbi, iBalancerV3WrapperAbi, iBalancerV3WrapperAdapterAbi, iBaseOnRampAbi, iBaseRewardPoolAbi, iBoosterAbi, iCamelotV3AdapterAbi, iCamelotV3RouterAbi, iConvexV1BaseRewardPoolAdapterAbi, iConvexV1BoosterAdapterAbi, iCurvePoolAbi, iCurvePoolStableNGAbi, iCurvePool_2Abi, iCurvePool_3Abi, iCurvePool_4Abi, iCurveV1StableNgAdapterAbi, iCurveV1_2AssetsAdapterAbi, iCurveV1_3AssetsAdapterAbi, iCurveV1_4AssetsAdapterAbi, iDaiUsdsAbi, iDaiUsdsAdapterAbi, iERC4626Abi, iERC4626ReferralAbi, iFluidDexAbi, iFluidDexAdapterAbi, iInfinifiGatewayAbi, iInfinifiGatewayAdapterAbi, iInfinifiUnwindingGatewayAbi, iInfinifiUnwindingGatewayAdapterAbi, iKelpLRTDepositPoolGatewayAbi, iKelpLRTWithdrawalManagerGatewayAbi, iKelpLrtDepositPoolAdapterAbi, iKelpLrtDepositPoolGatewayAbi, iKelpLrtWithdrawalManagerAdapterAbi, iKelpLrtWithdrawalManagerGatewayAbi, iLidoV1AdapterAbi, iMellow4626VaultAdapterAbi, iMellowClaimerAbi, iMellowClaimerAdapterAbi, iMellowWrapperAbi, iMellowWrapperAdapterAbi, iMidasGatewayAdapterV311Abi, iMidasGatewayV311Abi, iMidasIssuanceVaultAdapterV310Abi, iMidasIssuanceVaultV310Abi, iMidasRedemptionVaultAdapterV310Abi, iMidasRedemptionVaultGatewayV310Abi, iPendleRouterAbi, iPendleRouterAdapterAbi, iSecuritizeOnRampAbi, iSecuritizeOnRampAdapterV310Abi, iSecuritizeRedemptionGatewayAdapterV311Abi, iSecuritizeRedemptionGatewayV311Abi, iStakingRewardsAbi, iStakingRewardsAdapterAbi, iTraderJoeRouterAbi, iTraderJoeRouterAdapterAbi, iUniswapV2AdapterAbi, iUniswapV2Router02Abi, iUniswapV3Abi, iUniswapV3AdapterAbi, iUniswapV4AdapterAbi, iUniswapV4GatewayAbi, iUpshiftVaultAdapterAbi, iUpshiftVaultGatewayAbi, iVelodromeV2RouterAbi, iVelodromeV2RouterAdapterAbi, iwstETHAbi, iwstEthv1AdapterAbi, lidoV1_WETHGatewayAbi, mellowDvvAdapterAbi, parseAdapterAction, parseAdapterDeployParams };
54
+ export { adapterActionAbi, adapterActionSelectors, adapterActionSignatures, adapterConstructorAbi, erc4626ReferralAdapterAbi, getAdapterActionAbi, getAdapterDeployParamsAbi, getAdapterType, hasAdapterDeployParamsAbi, iBalancerV3RouterAbi, iBalancerV3RouterAdapterAbi, iBalancerV3WrapperAbi, iBalancerV3WrapperAdapterAbi, iBaseOnRampAbi, iBaseRewardPoolAbi, iBoosterAbi, iCamelotV3AdapterAbi, iCamelotV3RouterAbi, iConvexV1BaseRewardPoolAdapterAbi, iConvexV1BoosterAdapterAbi, iCurvePoolAbi, iCurvePoolStableNGAbi, iCurvePool_2Abi, iCurvePool_3Abi, iCurvePool_4Abi, iCurveV1StableNgAdapterAbi, iCurveV1_2AssetsAdapterAbi, iCurveV1_3AssetsAdapterAbi, iCurveV1_4AssetsAdapterAbi, iDaiUsdsAbi, iDaiUsdsAdapterAbi, iERC4626Abi, iERC4626ReferralAbi, iFluidDexAbi, iFluidDexAdapterAbi, iInfinifiGatewayAbi, iInfinifiGatewayAdapterAbi, iInfinifiUnwindingGatewayAbi, iInfinifiUnwindingGatewayAdapterAbi, iKelpLRTDepositPoolGatewayAbi, iKelpLRTWithdrawalManagerGatewayAbi, iKelpLrtDepositPoolAdapterAbi, iKelpLrtDepositPoolGatewayAbi, iKelpLrtWithdrawalManagerAdapterAbi, iKelpLrtWithdrawalManagerGatewayAbi, iLidoV1AdapterAbi, iMellow4626VaultAdapterAbi, iMellowClaimerAbi, iMellowClaimerAdapterAbi, iMellowWrapperAbi, iMellowWrapperAdapterAbi, iMidasGatewayAdapterV311Abi, iMidasGatewayV311Abi, iMidasIssuanceVaultAdapterV310Abi, iMidasIssuanceVaultV310Abi, iMidasRedemptionVaultAdapterV310Abi, iMidasRedemptionVaultGatewayV310Abi, iPendleRouterAbi, iPendleRouterAdapterAbi, iSecuritizeOnRampAbi, iSecuritizeOnRampAdapterV310Abi, iSecuritizeRedemptionGatewayAdapterV311Abi, iSecuritizeRedemptionGatewayV311Abi, iStakingRewardsAbi, iStakingRewardsAdapterAbi, iTraderJoeRouterAbi, iTraderJoeRouterAdapterAbi, iTreehouseFastlaneAbi, iTreehouseFastlaneAdapterAbi, iTreehouseRedemptionGatewayAbi, iTreehouseRedemptionGatewayAdapterAbi, iTreehouseRouterAbi, iTreehouseRouterAdapterAbi, iUniswapV2AdapterAbi, iUniswapV2Router02Abi, iUniswapV3Abi, iUniswapV3AdapterAbi, iUniswapV4AdapterAbi, iUniswapV4GatewayAbi, iUpshiftVaultAdapterAbi, iUpshiftVaultGatewayAbi, iVelodromeV2RouterAbi, iVelodromeV2RouterAdapterAbi, iwstETHAbi, iwstEthv1AdapterAbi, lidoV1_WETHGatewayAbi, mellowDvvAdapterAbi, parseAdapterAction, parseAdapterDeployParams };
@@ -0,0 +1,38 @@
1
+ //#region src/onchain/market/adapters/abi/treehouse/iTreehouseFastlane.ts
2
+ const iTreehouseFastlaneAbi = [
3
+ {
4
+ type: "function",
5
+ name: "TASSET",
6
+ inputs: [],
7
+ outputs: [{
8
+ name: "",
9
+ type: "address",
10
+ internalType: "address"
11
+ }],
12
+ stateMutability: "view"
13
+ },
14
+ {
15
+ type: "function",
16
+ name: "UNDERLYING",
17
+ inputs: [],
18
+ outputs: [{
19
+ name: "",
20
+ type: "address",
21
+ internalType: "address"
22
+ }],
23
+ stateMutability: "view"
24
+ },
25
+ {
26
+ type: "function",
27
+ name: "redeemAndFinalize",
28
+ inputs: [{
29
+ name: "_shares",
30
+ type: "uint96",
31
+ internalType: "uint96"
32
+ }],
33
+ outputs: [],
34
+ stateMutability: "nonpayable"
35
+ }
36
+ ];
37
+ //#endregion
38
+ export { iTreehouseFastlaneAbi };
@@ -0,0 +1,229 @@
1
+ //#region src/onchain/market/adapters/abi/treehouse/iTreehouseRedemptionGateway.ts
2
+ const iTreehouseRedemptionGatewayAbi = [
3
+ {
4
+ type: "function",
5
+ name: "contractType",
6
+ inputs: [],
7
+ outputs: [{
8
+ name: "",
9
+ type: "bytes32",
10
+ internalType: "bytes32"
11
+ }],
12
+ stateMutability: "view"
13
+ },
14
+ {
15
+ type: "function",
16
+ name: "finalizeRedeem",
17
+ inputs: [{
18
+ name: "redeemer",
19
+ type: "address",
20
+ internalType: "address"
21
+ }],
22
+ outputs: [],
23
+ stateMutability: "nonpayable"
24
+ },
25
+ {
26
+ type: "function",
27
+ name: "masterRedeemer",
28
+ inputs: [],
29
+ outputs: [{
30
+ name: "",
31
+ type: "address",
32
+ internalType: "address"
33
+ }],
34
+ stateMutability: "view"
35
+ },
36
+ {
37
+ type: "function",
38
+ name: "pendingAndClaimableAmounts",
39
+ inputs: [{
40
+ name: "account",
41
+ type: "address",
42
+ internalType: "address"
43
+ }],
44
+ outputs: [{
45
+ name: "pendingAmount",
46
+ type: "uint256",
47
+ internalType: "uint256"
48
+ }, {
49
+ name: "claimableAmount",
50
+ type: "uint256",
51
+ internalType: "uint256"
52
+ }],
53
+ stateMutability: "view"
54
+ },
55
+ {
56
+ type: "function",
57
+ name: "pendingRedeemers",
58
+ inputs: [{
59
+ name: "account",
60
+ type: "address",
61
+ internalType: "address"
62
+ }],
63
+ outputs: [{
64
+ name: "redeemers",
65
+ type: "address[]",
66
+ internalType: "address[]"
67
+ }],
68
+ stateMutability: "view"
69
+ },
70
+ {
71
+ type: "function",
72
+ name: "phantomToken",
73
+ inputs: [],
74
+ outputs: [{
75
+ name: "",
76
+ type: "address",
77
+ internalType: "address"
78
+ }],
79
+ stateMutability: "view"
80
+ },
81
+ {
82
+ type: "function",
83
+ name: "redeem",
84
+ inputs: [{
85
+ name: "shares",
86
+ type: "uint256",
87
+ internalType: "uint256"
88
+ }, {
89
+ name: "extraData",
90
+ type: "bytes",
91
+ internalType: "bytes"
92
+ }],
93
+ outputs: [],
94
+ stateMutability: "nonpayable"
95
+ },
96
+ {
97
+ type: "function",
98
+ name: "redeemers",
99
+ inputs: [{
100
+ name: "account",
101
+ type: "address",
102
+ internalType: "address"
103
+ }],
104
+ outputs: [{
105
+ name: "redeemers",
106
+ type: "address[]",
107
+ internalType: "address[]"
108
+ }],
109
+ stateMutability: "view"
110
+ },
111
+ {
112
+ type: "function",
113
+ name: "redemptionLogger",
114
+ inputs: [],
115
+ outputs: [{
116
+ name: "",
117
+ type: "address",
118
+ internalType: "address"
119
+ }],
120
+ stateMutability: "view"
121
+ },
122
+ {
123
+ type: "function",
124
+ name: "redemptionV3",
125
+ inputs: [],
126
+ outputs: [{
127
+ name: "",
128
+ type: "address",
129
+ internalType: "address"
130
+ }],
131
+ stateMutability: "view"
132
+ },
133
+ {
134
+ type: "function",
135
+ name: "rescueToken",
136
+ inputs: [{
137
+ name: "redeemer",
138
+ type: "address",
139
+ internalType: "address"
140
+ }, {
141
+ name: "token",
142
+ type: "address",
143
+ internalType: "address"
144
+ }],
145
+ outputs: [],
146
+ stateMutability: "nonpayable"
147
+ },
148
+ {
149
+ type: "function",
150
+ name: "tAsset",
151
+ inputs: [],
152
+ outputs: [{
153
+ name: "",
154
+ type: "address",
155
+ internalType: "address"
156
+ }],
157
+ stateMutability: "view"
158
+ },
159
+ {
160
+ type: "function",
161
+ name: "transferMaster",
162
+ inputs: [],
163
+ outputs: [{
164
+ name: "",
165
+ type: "address",
166
+ internalType: "address"
167
+ }],
168
+ stateMutability: "view"
169
+ },
170
+ {
171
+ type: "function",
172
+ name: "transferRedeemer",
173
+ inputs: [{
174
+ name: "redeemer",
175
+ type: "address",
176
+ internalType: "address"
177
+ }, {
178
+ name: "newAccount",
179
+ type: "address",
180
+ internalType: "address"
181
+ }],
182
+ outputs: [],
183
+ stateMutability: "nonpayable"
184
+ },
185
+ {
186
+ type: "function",
187
+ name: "vaultUnderlying",
188
+ inputs: [],
189
+ outputs: [{
190
+ name: "",
191
+ type: "address",
192
+ internalType: "address"
193
+ }],
194
+ stateMutability: "view"
195
+ },
196
+ {
197
+ type: "function",
198
+ name: "version",
199
+ inputs: [],
200
+ outputs: [{
201
+ name: "",
202
+ type: "uint256",
203
+ internalType: "uint256"
204
+ }],
205
+ stateMutability: "view"
206
+ },
207
+ {
208
+ type: "error",
209
+ name: "MaxPendingRedeemersPerAccountException",
210
+ inputs: []
211
+ },
212
+ {
213
+ type: "error",
214
+ name: "RedeemerNotOwnedByAccountException",
215
+ inputs: []
216
+ },
217
+ {
218
+ type: "error",
219
+ name: "RedeemerStillPendingException",
220
+ inputs: []
221
+ },
222
+ {
223
+ type: "error",
224
+ name: "RedeemerTransferNotAllowedException",
225
+ inputs: []
226
+ }
227
+ ];
228
+ //#endregion
229
+ export { iTreehouseRedemptionGatewayAbi };
@@ -0,0 +1,28 @@
1
+ //#region src/onchain/market/adapters/abi/treehouse/iTreehouseRouter.ts
2
+ const iTreehouseRouterAbi = [{
3
+ type: "function",
4
+ name: "TASSET",
5
+ inputs: [],
6
+ outputs: [{
7
+ name: "",
8
+ type: "address",
9
+ internalType: "address"
10
+ }],
11
+ stateMutability: "view"
12
+ }, {
13
+ type: "function",
14
+ name: "deposit",
15
+ inputs: [{
16
+ name: "token",
17
+ type: "address",
18
+ internalType: "address"
19
+ }, {
20
+ name: "amount",
21
+ type: "uint256",
22
+ internalType: "uint256"
23
+ }],
24
+ outputs: [],
25
+ stateMutability: "nonpayable"
26
+ }];
27
+ //#endregion
28
+ export { iTreehouseRouterAbi };
@@ -0,0 +1,4 @@
1
+ import { iTreehouseFastlaneAbi } from "./iTreehouseFastlane.js";
2
+ import { iTreehouseRedemptionGatewayAbi } from "./iTreehouseRedemptionGateway.js";
3
+ import { iTreehouseRouterAbi } from "./iTreehouseRouter.js";
4
+ export { iTreehouseFastlaneAbi, iTreehouseRedemptionGatewayAbi, iTreehouseRouterAbi };
@@ -0,0 +1,71 @@
1
+ import { MissingSerializedParamsError } from "../../../base/errors.js";
2
+ import "../../../base/index.js";
3
+ import { iTreehouseFastlaneAdapterAbi } from "../abi/adapters/iTreehouseFastlaneAdapter.js";
4
+ import "../abi/adapters/index.js";
5
+ import { iTreehouseFastlaneAbi } from "../abi/treehouse/iTreehouseFastlane.js";
6
+ import "../abi/treehouse/index.js";
7
+ import { AbstractAdapterContract } from "./AbstractAdapter.js";
8
+ import { decodeAbiParameters } from "viem";
9
+ //#region src/onchain/market/adapters/contracts/TreehouseFastlaneAdapterContract.ts
10
+ const abi = iTreehouseFastlaneAdapterAbi;
11
+ const protocolAbi = iTreehouseFastlaneAbi;
12
+ var TreehouseFastlaneAdapterContract = class extends AbstractAdapterContract {
13
+ #tAsset;
14
+ #vaultUnderlying;
15
+ constructor(sdk, args) {
16
+ super(sdk, {
17
+ ...args,
18
+ abi,
19
+ protocolAbi
20
+ });
21
+ if (args.baseParams.serializedParams) {
22
+ const decoded = decodeAbiParameters([
23
+ {
24
+ type: "address",
25
+ name: "creditManager"
26
+ },
27
+ {
28
+ type: "address",
29
+ name: "targetContract"
30
+ },
31
+ {
32
+ type: "address",
33
+ name: "tAsset"
34
+ },
35
+ {
36
+ type: "address",
37
+ name: "vaultUnderlying"
38
+ }
39
+ ], args.baseParams.serializedParams);
40
+ this.#tAsset = decoded[2];
41
+ this.#vaultUnderlying = decoded[3];
42
+ }
43
+ }
44
+ get tAsset() {
45
+ if (!this.#tAsset) throw new MissingSerializedParamsError("tAsset");
46
+ return this.#tAsset;
47
+ }
48
+ get vaultUnderlying() {
49
+ if (!this.#vaultUnderlying) throw new MissingSerializedParamsError("vaultUnderlying");
50
+ return this.#vaultUnderlying;
51
+ }
52
+ stateHuman(raw) {
53
+ return {
54
+ ...super.stateHuman(raw),
55
+ tAsset: this.#tAsset ? this.labelAddress(this.#tAsset) : void 0,
56
+ vaultUnderlying: this.#vaultUnderlying ? this.labelAddress(this.#vaultUnderlying) : void 0
57
+ };
58
+ }
59
+ applyBalanceChanges(balances, decoded) {
60
+ switch (decoded.functionName) {
61
+ case "redeemAndFinalizeDiff": {
62
+ const [leftoverShares] = decoded.args;
63
+ this.setLeftover(balances, this.tAsset, leftoverShares);
64
+ break;
65
+ }
66
+ default: super.applyBalanceChanges(balances, decoded);
67
+ }
68
+ }
69
+ };
70
+ //#endregion
71
+ export { TreehouseFastlaneAdapterContract };
@@ -0,0 +1,116 @@
1
+ import { MissingSerializedParamsError } from "../../../base/errors.js";
2
+ import "../../../base/index.js";
3
+ import { iTreehouseRedemptionGatewayAdapterAbi } from "../abi/adapters/iTreehouseRedemptionGatewayAdapter.js";
4
+ import "../abi/adapters/index.js";
5
+ import { iTreehouseRedemptionGatewayAbi } from "../abi/treehouse/iTreehouseRedemptionGateway.js";
6
+ import "../abi/treehouse/index.js";
7
+ import { AbstractAdapterContract } from "./AbstractAdapter.js";
8
+ import { decodeAbiParameters, decodeFunctionData } from "viem";
9
+ //#region src/onchain/market/adapters/contracts/TreehouseRedemptionGatewayAdapterContract.ts
10
+ const abi = iTreehouseRedemptionGatewayAdapterAbi;
11
+ const protocolAbi = iTreehouseRedemptionGatewayAbi;
12
+ var TreehouseRedemptionGatewayAdapterContract = class extends AbstractAdapterContract {
13
+ #tAsset;
14
+ #vaultUnderlying;
15
+ #phantomToken;
16
+ constructor(sdk, args) {
17
+ super(sdk, {
18
+ ...args,
19
+ abi,
20
+ protocolAbi
21
+ });
22
+ if (args.baseParams.serializedParams) {
23
+ const decoded = decodeAbiParameters([
24
+ {
25
+ type: "address",
26
+ name: "creditManager"
27
+ },
28
+ {
29
+ type: "address",
30
+ name: "targetContract"
31
+ },
32
+ {
33
+ type: "address",
34
+ name: "tAsset"
35
+ },
36
+ {
37
+ type: "address",
38
+ name: "vaultUnderlying"
39
+ },
40
+ {
41
+ type: "address",
42
+ name: "phantomToken"
43
+ }
44
+ ], args.baseParams.serializedParams);
45
+ this.#tAsset = decoded[2];
46
+ this.#vaultUnderlying = decoded[3];
47
+ this.#phantomToken = decoded[4];
48
+ }
49
+ }
50
+ get tAsset() {
51
+ if (!this.#tAsset) throw new MissingSerializedParamsError("tAsset");
52
+ return this.#tAsset;
53
+ }
54
+ get vaultUnderlying() {
55
+ if (!this.#vaultUnderlying) throw new MissingSerializedParamsError("vaultUnderlying");
56
+ return this.#vaultUnderlying;
57
+ }
58
+ get phantomToken() {
59
+ if (!this.#phantomToken) throw new MissingSerializedParamsError("phantomToken");
60
+ return this.#phantomToken;
61
+ }
62
+ stateHuman(raw) {
63
+ return {
64
+ ...super.stateHuman(raw),
65
+ tAsset: this.#tAsset ? this.labelAddress(this.#tAsset) : void 0,
66
+ vaultUnderlying: this.#vaultUnderlying ? this.labelAddress(this.#vaultUnderlying) : void 0,
67
+ phantomToken: this.#phantomToken ? this.labelAddress(this.#phantomToken) : void 0
68
+ };
69
+ }
70
+ /**
71
+ * `redeem` (the only request call the withdrawal compressor emits) spends
72
+ * the tAsset and mints the redemption phantom token; the vault underlying is
73
+ * received when the redemption is finalized. The 2-arg overload carries the
74
+ * intent `extraData`.
75
+ */
76
+ parseDelayedWithdrawalRequest(calldata) {
77
+ const decoded = decodeFunctionData({
78
+ abi: this.abi,
79
+ data: calldata
80
+ });
81
+ if (decoded.functionName !== "redeem") return;
82
+ const [, extraData] = decoded.args;
83
+ return {
84
+ phantomToken: this.phantomToken,
85
+ claimToken: this.vaultUnderlying,
86
+ extraData
87
+ };
88
+ }
89
+ /**
90
+ * `finalizeRedeem(address redeemer)` claims a matured redemption from a
91
+ * redeemer contract.
92
+ */
93
+ parseDelayedWithdrawalClaim(calldata) {
94
+ const decoded = decodeFunctionData({
95
+ abi: this.abi,
96
+ data: calldata
97
+ });
98
+ if (decoded.functionName !== "finalizeRedeem") return;
99
+ const [redeemer] = decoded.args;
100
+ return { redeemer };
101
+ }
102
+ applyBalanceChanges(balances, decoded) {
103
+ switch (decoded.functionName) {
104
+ case "redeemDiff": {
105
+ const [leftoverShares] = decoded.args;
106
+ this.setLeftover(balances, this.tAsset, leftoverShares);
107
+ break;
108
+ }
109
+ case "redeem": break;
110
+ case "finalizeRedeem": break;
111
+ default: super.applyBalanceChanges(balances, decoded);
112
+ }
113
+ }
114
+ };
115
+ //#endregion
116
+ export { TreehouseRedemptionGatewayAdapterContract };