@gearbox-protocol/sdk 3.0.0-next.55 → 3.0.0-next.56

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 (158) hide show
  1. package/contracts/index.sol +5 -0
  2. package/lib/core/creditAccount.d.ts +1 -2
  3. package/lib/core/creditAccount.js +0 -7
  4. package/lib/core/creditManager.js +1 -1
  5. package/lib/core/trade.d.ts +9 -8
  6. package/lib/core/trade.js +25 -22
  7. package/lib/parsers/convexBaseRewardPoolAdapterParser.js +10 -8
  8. package/lib/parsers/convexBaseRewardPoolAdapterParser.spec.js +9 -6
  9. package/lib/parsers/convexBoosterAdapterParser.js +6 -6
  10. package/lib/parsers/convexBoosterAdapterParser.spec.js +4 -4
  11. package/lib/parsers/curveAdapterParser.js +10 -10
  12. package/lib/parsers/curveAdapterParser.spec.js +6 -2
  13. package/lib/parsers/lidoAdapterParser.js +3 -2
  14. package/lib/parsers/lidoAdapterParser.spec.js +2 -2
  15. package/lib/parsers/uniV2AdapterParser.js +4 -3
  16. package/lib/parsers/uniV2AdapterParser.spec.js +3 -2
  17. package/lib/parsers/uniV3AdapterParser.js +8 -6
  18. package/lib/parsers/uniV3AdapterParser.spec.js +3 -2
  19. package/lib/parsers/wstETHAdapterParser.js +6 -4
  20. package/lib/parsers/wstETHAdapterParser.spec.js +4 -4
  21. package/lib/parsers/yearnAdapterParser.spec.js +4 -4
  22. package/lib/parsers/yearnV2AdapterParser.js +13 -3
  23. package/lib/pathfinder/core.d.ts +8 -9
  24. package/lib/pathfinder/pathfinder.d.ts +37 -10
  25. package/lib/pathfinder/pathfinder.js +45 -33
  26. package/lib/pathfinder/pathfinder.spec.js +4 -2
  27. package/lib/payload/creditAccount.d.ts +1 -2
  28. package/lib/types/IAaveV2_LendingPoolAdapter.d.ts +171 -0
  29. package/lib/types/IAaveV2_WrappedATokenAdapter.d.ts +290 -0
  30. package/lib/types/IBalancerV2Vault.sol/IBalancerV2Vault.d.ts +308 -0
  31. package/lib/types/IBalancerV2Vault.sol/IBalancerV2VaultGetters.d.ts +112 -0
  32. package/lib/types/IBalancerV2Vault.sol/index.d.ts +2 -0
  33. package/lib/types/IBalancerV2Vault.sol/index.js +2 -0
  34. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.d.ts +466 -0
  35. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter.js +2 -0
  36. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.d.ts +43 -0
  37. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents.js +2 -0
  38. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.d.ts +27 -0
  39. package/lib/types/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions.js +2 -0
  40. package/lib/types/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  41. package/lib/types/IBalancerV2VaultAdapter.sol/index.js +2 -0
  42. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.d.ts +216 -0
  43. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter.js +2 -0
  44. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.d.ts +27 -0
  45. package/lib/types/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions.js +2 -0
  46. package/lib/types/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  47. package/lib/types/ICompoundV2_CTokenAdapter.sol/index.js +2 -0
  48. package/lib/types/IConvexV1BaseRewardPoolAdapter.d.ts +30 -30
  49. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.d.ts +21 -17
  50. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.d.ts +45 -85
  51. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.d.ts +24 -26
  52. package/lib/types/ICreditFacadeV3Multicall.d.ts +32 -40
  53. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.d.ts +99 -71
  54. package/lib/types/ICurveV1Adapter.d.ts +41 -105
  55. package/lib/types/ICurveV1_2AssetsAdapter.d.ts +41 -105
  56. package/lib/types/ICurveV1_3AssetsAdapter.d.ts +41 -105
  57. package/lib/types/ICurveV1_4AssetsAdapter.d.ts +41 -105
  58. package/lib/types/IDataCompressorV2_10.d.ts +1 -27
  59. package/lib/types/IDataCompressorV3_00.d.ts +1 -27
  60. package/lib/types/IERC4626Adapter.d.ts +238 -0
  61. package/lib/types/IERC4626Adapter.js +2 -0
  62. package/lib/types/ILidoV1Adapter.d.ts +9 -9
  63. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3.d.ts +39 -14
  64. package/lib/types/IPriceOracleV3.sol/IPriceOracleV3Events.d.ts +5 -3
  65. package/lib/types/IUniswapV2Adapter.sol/IUniswapV2Adapter.d.ts +10 -9
  66. package/lib/types/IUniswapV3Adapter.sol/IUniswapV3Adapter.d.ts +27 -21
  67. package/lib/types/IYearnV2Adapter.d.ts +22 -22
  68. package/lib/types/IwstETHV1Adapter.d.ts +17 -17
  69. package/lib/types/factories/IAaveV2_LendingPoolAdapter__factory.d.ts +158 -0
  70. package/lib/types/factories/IAaveV2_LendingPoolAdapter__factory.js +215 -0
  71. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.d.ts +252 -0
  72. package/lib/types/factories/IAaveV2_WrappedATokenAdapter__factory.js +341 -0
  73. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.d.ts +78 -0
  74. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2VaultGetters__factory.js +111 -0
  75. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.d.ts +360 -0
  76. package/lib/types/factories/IBalancerV2Vault.sol/IBalancerV2Vault__factory.js +475 -0
  77. package/lib/types/factories/IBalancerV2Vault.sol/index.d.ts +2 -0
  78. package/lib/types/factories/IBalancerV2Vault.sol/index.js +10 -0
  79. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.d.ts +23 -0
  80. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterEvents__factory.js +38 -0
  81. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.d.ts +12 -0
  82. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapterExceptions__factory.js +24 -0
  83. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.d.ts +514 -0
  84. package/lib/types/factories/IBalancerV2VaultAdapter.sol/IBalancerV2VaultAdapter__factory.js +675 -0
  85. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.d.ts +3 -0
  86. package/lib/types/factories/IBalancerV2VaultAdapter.sol/index.js +12 -0
  87. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.d.ts +196 -0
  88. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_CTokenAdapter__factory.js +267 -0
  89. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.d.ts +16 -0
  90. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/ICompoundV2_Exceptions__factory.js +30 -0
  91. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.d.ts +2 -0
  92. package/lib/types/factories/ICompoundV2_CTokenAdapter.sol/index.js +10 -0
  93. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.d.ts +18 -6
  94. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.js +22 -6
  95. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.d.ts +10 -2
  96. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.js +12 -2
  97. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.d.ts +13 -18
  98. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.js +14 -20
  99. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.d.ts +13 -70
  100. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.js +14 -86
  101. package/lib/types/factories/ICreditFacadeV3Multicall__factory.d.ts +22 -24
  102. package/lib/types/factories/ICreditFacadeV3Multicall__factory.js +28 -31
  103. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.d.ts +153 -135
  104. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.js +191 -168
  105. package/lib/types/factories/ICurveV1Adapter__factory.d.ts +13 -71
  106. package/lib/types/factories/ICurveV1Adapter__factory.js +14 -91
  107. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.d.ts +13 -71
  108. package/lib/types/factories/ICurveV1_2AssetsAdapter__factory.js +14 -91
  109. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.d.ts +13 -71
  110. package/lib/types/factories/ICurveV1_3AssetsAdapter__factory.js +14 -91
  111. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.d.ts +13 -71
  112. package/lib/types/factories/ICurveV1_4AssetsAdapter__factory.js +14 -91
  113. package/lib/types/factories/IDataCompressorV2_10__factory.d.ts +0 -42
  114. package/lib/types/factories/IDataCompressorV2_10__factory.js +0 -54
  115. package/lib/types/factories/IDataCompressorV3_00__factory.d.ts +0 -84
  116. package/lib/types/factories/IDataCompressorV3_00__factory.js +0 -108
  117. package/lib/types/factories/IERC4626Adapter__factory.d.ts +220 -0
  118. package/lib/types/factories/IERC4626Adapter__factory.js +297 -0
  119. package/lib/types/factories/ILidoV1Adapter__factory.d.ts +6 -2
  120. package/lib/types/factories/ILidoV1Adapter__factory.js +8 -2
  121. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.d.ts +5 -0
  122. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3Events__factory.js +6 -0
  123. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.d.ts +45 -0
  124. package/lib/types/factories/IPriceOracleV3.sol/IPriceOracleV3__factory.js +59 -0
  125. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.d.ts +5 -1
  126. package/lib/types/factories/IUniswapV2Adapter.sol/IUniswapV2Adapter__factory.js +6 -1
  127. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.d.ts +12 -4
  128. package/lib/types/factories/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.js +14 -4
  129. package/lib/types/factories/IYearnV2Adapter__factory.d.ts +21 -13
  130. package/lib/types/factories/IYearnV2Adapter__factory.js +27 -15
  131. package/lib/types/factories/IwstETHV1Adapter__factory.d.ts +12 -4
  132. package/lib/types/factories/IwstETHV1Adapter__factory.js +16 -4
  133. package/lib/types/factories/index.d.ts +7 -2
  134. package/lib/types/factories/index.js +12 -5
  135. package/lib/types/factories/{IRouter__factory.d.ts → interfaces/IRouter__factory.d.ts} +61 -6
  136. package/lib/types/factories/{IRouter__factory.js → interfaces/IRouter__factory.js} +77 -6
  137. package/lib/types/factories/interfaces/index.d.ts +1 -0
  138. package/lib/types/factories/interfaces/index.js +8 -0
  139. package/lib/types/index.d.ts +39 -17
  140. package/lib/types/index.js +39 -23
  141. package/lib/types/{IRouter.d.ts → interfaces/IRouter.d.ts} +37 -34
  142. package/lib/types/interfaces/IRouter.js +2 -0
  143. package/lib/types/interfaces/index.d.ts +1 -0
  144. package/lib/types/interfaces/index.js +2 -0
  145. package/package.json +6 -6
  146. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3.d.ts +0 -370
  147. package/lib/types/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.d.ts +0 -133
  148. package/lib/types/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  149. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.d.ts +0 -143
  150. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events__factory.js +0 -188
  151. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.d.ts +0 -366
  152. package/lib/types/factories/IWithdrawalManagerV3.sol/IWithdrawalManagerV3__factory.js +0 -479
  153. package/lib/types/factories/IWithdrawalManagerV3.sol/index.d.ts +0 -2
  154. package/lib/types/factories/IWithdrawalManagerV3.sol/index.js +0 -10
  155. /package/lib/types/{IRouter.js → IAaveV2_LendingPoolAdapter.js} +0 -0
  156. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3.js → IAaveV2_WrappedATokenAdapter.js} +0 -0
  157. /package/lib/types/{IWithdrawalManagerV3.sol/IWithdrawalManagerV3Events.js → IBalancerV2Vault.sol/IBalancerV2Vault.js} +0 -0
  158. /package/lib/types/{IWithdrawalManagerV3.sol/index.js → IBalancerV2Vault.sol/IBalancerV2VaultGetters.js} +0 -0
@@ -0,0 +1,238 @@
1
+ import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers";
2
+ import type { FunctionFragment, Result } from "@ethersproject/abi";
3
+ import type { Listener, Provider } from "@ethersproject/providers";
4
+ import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "./common";
5
+ export interface IERC4626AdapterInterface extends utils.Interface {
6
+ functions: {
7
+ "_gearboxAdapterType()": FunctionFragment;
8
+ "_gearboxAdapterVersion()": FunctionFragment;
9
+ "addressProvider()": FunctionFragment;
10
+ "asset()": FunctionFragment;
11
+ "assetMask()": FunctionFragment;
12
+ "creditManager()": FunctionFragment;
13
+ "deposit(uint256,address)": FunctionFragment;
14
+ "depositDiff(uint256)": FunctionFragment;
15
+ "mint(uint256,address)": FunctionFragment;
16
+ "redeem(uint256,address,address)": FunctionFragment;
17
+ "redeemDiff(uint256)": FunctionFragment;
18
+ "sharesMask()": FunctionFragment;
19
+ "targetContract()": FunctionFragment;
20
+ "withdraw(uint256,address,address)": FunctionFragment;
21
+ };
22
+ getFunction(nameOrSignatureOrTopic: "_gearboxAdapterType" | "_gearboxAdapterVersion" | "addressProvider" | "asset" | "assetMask" | "creditManager" | "deposit" | "depositDiff" | "mint" | "redeem" | "redeemDiff" | "sharesMask" | "targetContract" | "withdraw"): FunctionFragment;
23
+ encodeFunctionData(functionFragment: "_gearboxAdapterType", values?: undefined): string;
24
+ encodeFunctionData(functionFragment: "_gearboxAdapterVersion", values?: undefined): string;
25
+ encodeFunctionData(functionFragment: "addressProvider", values?: undefined): string;
26
+ encodeFunctionData(functionFragment: "asset", values?: undefined): string;
27
+ encodeFunctionData(functionFragment: "assetMask", values?: undefined): string;
28
+ encodeFunctionData(functionFragment: "creditManager", values?: undefined): string;
29
+ encodeFunctionData(functionFragment: "deposit", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
30
+ encodeFunctionData(functionFragment: "depositDiff", values: [PromiseOrValue<BigNumberish>]): string;
31
+ encodeFunctionData(functionFragment: "mint", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
32
+ encodeFunctionData(functionFragment: "redeem", values: [
33
+ PromiseOrValue<BigNumberish>,
34
+ PromiseOrValue<string>,
35
+ PromiseOrValue<string>
36
+ ]): string;
37
+ encodeFunctionData(functionFragment: "redeemDiff", values: [PromiseOrValue<BigNumberish>]): string;
38
+ encodeFunctionData(functionFragment: "sharesMask", values?: undefined): string;
39
+ encodeFunctionData(functionFragment: "targetContract", values?: undefined): string;
40
+ encodeFunctionData(functionFragment: "withdraw", values: [
41
+ PromiseOrValue<BigNumberish>,
42
+ PromiseOrValue<string>,
43
+ PromiseOrValue<string>
44
+ ]): string;
45
+ decodeFunctionResult(functionFragment: "_gearboxAdapterType", data: BytesLike): Result;
46
+ decodeFunctionResult(functionFragment: "_gearboxAdapterVersion", data: BytesLike): Result;
47
+ decodeFunctionResult(functionFragment: "addressProvider", data: BytesLike): Result;
48
+ decodeFunctionResult(functionFragment: "asset", data: BytesLike): Result;
49
+ decodeFunctionResult(functionFragment: "assetMask", data: BytesLike): Result;
50
+ decodeFunctionResult(functionFragment: "creditManager", data: BytesLike): Result;
51
+ decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result;
52
+ decodeFunctionResult(functionFragment: "depositDiff", data: BytesLike): Result;
53
+ decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result;
54
+ decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result;
55
+ decodeFunctionResult(functionFragment: "redeemDiff", data: BytesLike): Result;
56
+ decodeFunctionResult(functionFragment: "sharesMask", data: BytesLike): Result;
57
+ decodeFunctionResult(functionFragment: "targetContract", data: BytesLike): Result;
58
+ decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
59
+ events: {};
60
+ }
61
+ export interface IERC4626Adapter extends BaseContract {
62
+ connect(signerOrProvider: Signer | Provider | string): this;
63
+ attach(addressOrName: string): this;
64
+ deployed(): Promise<this>;
65
+ interface: IERC4626AdapterInterface;
66
+ queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
67
+ listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
68
+ listeners(eventName?: string): Array<Listener>;
69
+ removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
70
+ removeAllListeners(eventName?: string): this;
71
+ off: OnEvent<this>;
72
+ on: OnEvent<this>;
73
+ once: OnEvent<this>;
74
+ removeListener: OnEvent<this>;
75
+ functions: {
76
+ _gearboxAdapterType(overrides?: CallOverrides): Promise<[number]>;
77
+ _gearboxAdapterVersion(overrides?: CallOverrides): Promise<[number]>;
78
+ addressProvider(overrides?: CallOverrides): Promise<[string]>;
79
+ asset(overrides?: CallOverrides): Promise<[string]>;
80
+ assetMask(overrides?: CallOverrides): Promise<[BigNumber]>;
81
+ creditManager(overrides?: CallOverrides): Promise<[string]>;
82
+ deposit(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: Overrides & {
83
+ from?: PromiseOrValue<string>;
84
+ }): Promise<ContractTransaction>;
85
+ depositDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
86
+ from?: PromiseOrValue<string>;
87
+ }): Promise<ContractTransaction>;
88
+ mint(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: Overrides & {
89
+ from?: PromiseOrValue<string>;
90
+ }): Promise<ContractTransaction>;
91
+ redeem(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: Overrides & {
92
+ from?: PromiseOrValue<string>;
93
+ }): Promise<ContractTransaction>;
94
+ redeemDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
95
+ from?: PromiseOrValue<string>;
96
+ }): Promise<ContractTransaction>;
97
+ sharesMask(overrides?: CallOverrides): Promise<[BigNumber]>;
98
+ targetContract(overrides?: CallOverrides): Promise<[string]>;
99
+ withdraw(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: Overrides & {
100
+ from?: PromiseOrValue<string>;
101
+ }): Promise<ContractTransaction>;
102
+ };
103
+ _gearboxAdapterType(overrides?: CallOverrides): Promise<number>;
104
+ _gearboxAdapterVersion(overrides?: CallOverrides): Promise<number>;
105
+ addressProvider(overrides?: CallOverrides): Promise<string>;
106
+ asset(overrides?: CallOverrides): Promise<string>;
107
+ assetMask(overrides?: CallOverrides): Promise<BigNumber>;
108
+ creditManager(overrides?: CallOverrides): Promise<string>;
109
+ deposit(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: Overrides & {
110
+ from?: PromiseOrValue<string>;
111
+ }): Promise<ContractTransaction>;
112
+ depositDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
113
+ from?: PromiseOrValue<string>;
114
+ }): Promise<ContractTransaction>;
115
+ mint(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: Overrides & {
116
+ from?: PromiseOrValue<string>;
117
+ }): Promise<ContractTransaction>;
118
+ redeem(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: Overrides & {
119
+ from?: PromiseOrValue<string>;
120
+ }): Promise<ContractTransaction>;
121
+ redeemDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
122
+ from?: PromiseOrValue<string>;
123
+ }): Promise<ContractTransaction>;
124
+ sharesMask(overrides?: CallOverrides): Promise<BigNumber>;
125
+ targetContract(overrides?: CallOverrides): Promise<string>;
126
+ withdraw(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: Overrides & {
127
+ from?: PromiseOrValue<string>;
128
+ }): Promise<ContractTransaction>;
129
+ callStatic: {
130
+ _gearboxAdapterType(overrides?: CallOverrides): Promise<number>;
131
+ _gearboxAdapterVersion(overrides?: CallOverrides): Promise<number>;
132
+ addressProvider(overrides?: CallOverrides): Promise<string>;
133
+ asset(overrides?: CallOverrides): Promise<string>;
134
+ assetMask(overrides?: CallOverrides): Promise<BigNumber>;
135
+ creditManager(overrides?: CallOverrides): Promise<string>;
136
+ deposit(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
137
+ BigNumber,
138
+ BigNumber
139
+ ] & {
140
+ tokensToEnable: BigNumber;
141
+ tokensToDisable: BigNumber;
142
+ }>;
143
+ depositDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
144
+ BigNumber,
145
+ BigNumber
146
+ ] & {
147
+ tokensToEnable: BigNumber;
148
+ tokensToDisable: BigNumber;
149
+ }>;
150
+ mint(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
151
+ BigNumber,
152
+ BigNumber
153
+ ] & {
154
+ tokensToEnable: BigNumber;
155
+ tokensToDisable: BigNumber;
156
+ }>;
157
+ redeem(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
158
+ BigNumber,
159
+ BigNumber
160
+ ] & {
161
+ tokensToEnable: BigNumber;
162
+ tokensToDisable: BigNumber;
163
+ }>;
164
+ redeemDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
165
+ BigNumber,
166
+ BigNumber
167
+ ] & {
168
+ tokensToEnable: BigNumber;
169
+ tokensToDisable: BigNumber;
170
+ }>;
171
+ sharesMask(overrides?: CallOverrides): Promise<BigNumber>;
172
+ targetContract(overrides?: CallOverrides): Promise<string>;
173
+ withdraw(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
174
+ BigNumber,
175
+ BigNumber
176
+ ] & {
177
+ tokensToEnable: BigNumber;
178
+ tokensToDisable: BigNumber;
179
+ }>;
180
+ };
181
+ filters: {};
182
+ estimateGas: {
183
+ _gearboxAdapterType(overrides?: CallOverrides): Promise<BigNumber>;
184
+ _gearboxAdapterVersion(overrides?: CallOverrides): Promise<BigNumber>;
185
+ addressProvider(overrides?: CallOverrides): Promise<BigNumber>;
186
+ asset(overrides?: CallOverrides): Promise<BigNumber>;
187
+ assetMask(overrides?: CallOverrides): Promise<BigNumber>;
188
+ creditManager(overrides?: CallOverrides): Promise<BigNumber>;
189
+ deposit(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: Overrides & {
190
+ from?: PromiseOrValue<string>;
191
+ }): Promise<BigNumber>;
192
+ depositDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
193
+ from?: PromiseOrValue<string>;
194
+ }): Promise<BigNumber>;
195
+ mint(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: Overrides & {
196
+ from?: PromiseOrValue<string>;
197
+ }): Promise<BigNumber>;
198
+ redeem(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: Overrides & {
199
+ from?: PromiseOrValue<string>;
200
+ }): Promise<BigNumber>;
201
+ redeemDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
202
+ from?: PromiseOrValue<string>;
203
+ }): Promise<BigNumber>;
204
+ sharesMask(overrides?: CallOverrides): Promise<BigNumber>;
205
+ targetContract(overrides?: CallOverrides): Promise<BigNumber>;
206
+ withdraw(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: Overrides & {
207
+ from?: PromiseOrValue<string>;
208
+ }): Promise<BigNumber>;
209
+ };
210
+ populateTransaction: {
211
+ _gearboxAdapterType(overrides?: CallOverrides): Promise<PopulatedTransaction>;
212
+ _gearboxAdapterVersion(overrides?: CallOverrides): Promise<PopulatedTransaction>;
213
+ addressProvider(overrides?: CallOverrides): Promise<PopulatedTransaction>;
214
+ asset(overrides?: CallOverrides): Promise<PopulatedTransaction>;
215
+ assetMask(overrides?: CallOverrides): Promise<PopulatedTransaction>;
216
+ creditManager(overrides?: CallOverrides): Promise<PopulatedTransaction>;
217
+ deposit(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: Overrides & {
218
+ from?: PromiseOrValue<string>;
219
+ }): Promise<PopulatedTransaction>;
220
+ depositDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
221
+ from?: PromiseOrValue<string>;
222
+ }): Promise<PopulatedTransaction>;
223
+ mint(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: Overrides & {
224
+ from?: PromiseOrValue<string>;
225
+ }): Promise<PopulatedTransaction>;
226
+ redeem(shares: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: Overrides & {
227
+ from?: PromiseOrValue<string>;
228
+ }): Promise<PopulatedTransaction>;
229
+ redeemDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
230
+ from?: PromiseOrValue<string>;
231
+ }): Promise<PopulatedTransaction>;
232
+ sharesMask(overrides?: CallOverrides): Promise<PopulatedTransaction>;
233
+ targetContract(overrides?: CallOverrides): Promise<PopulatedTransaction>;
234
+ withdraw(assets: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, overrides?: Overrides & {
235
+ from?: PromiseOrValue<string>;
236
+ }): Promise<PopulatedTransaction>;
237
+ };
238
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -11,13 +11,13 @@ export interface ILidoV1AdapterInterface extends utils.Interface {
11
11
  "stETH()": FunctionFragment;
12
12
  "stETHTokenMask()": FunctionFragment;
13
13
  "submit(uint256)": FunctionFragment;
14
- "submitAll()": FunctionFragment;
14
+ "submitDiff(uint256)": FunctionFragment;
15
15
  "targetContract()": FunctionFragment;
16
16
  "treasury()": FunctionFragment;
17
17
  "weth()": FunctionFragment;
18
18
  "wethTokenMask()": FunctionFragment;
19
19
  };
20
- getFunction(nameOrSignatureOrTopic: "_gearboxAdapterType" | "_gearboxAdapterVersion" | "addressProvider" | "creditManager" | "stETH" | "stETHTokenMask" | "submit" | "submitAll" | "targetContract" | "treasury" | "weth" | "wethTokenMask"): FunctionFragment;
20
+ getFunction(nameOrSignatureOrTopic: "_gearboxAdapterType" | "_gearboxAdapterVersion" | "addressProvider" | "creditManager" | "stETH" | "stETHTokenMask" | "submit" | "submitDiff" | "targetContract" | "treasury" | "weth" | "wethTokenMask"): FunctionFragment;
21
21
  encodeFunctionData(functionFragment: "_gearboxAdapterType", values?: undefined): string;
22
22
  encodeFunctionData(functionFragment: "_gearboxAdapterVersion", values?: undefined): string;
23
23
  encodeFunctionData(functionFragment: "addressProvider", values?: undefined): string;
@@ -25,7 +25,7 @@ export interface ILidoV1AdapterInterface extends utils.Interface {
25
25
  encodeFunctionData(functionFragment: "stETH", values?: undefined): string;
26
26
  encodeFunctionData(functionFragment: "stETHTokenMask", values?: undefined): string;
27
27
  encodeFunctionData(functionFragment: "submit", values: [PromiseOrValue<BigNumberish>]): string;
28
- encodeFunctionData(functionFragment: "submitAll", values?: undefined): string;
28
+ encodeFunctionData(functionFragment: "submitDiff", values: [PromiseOrValue<BigNumberish>]): string;
29
29
  encodeFunctionData(functionFragment: "targetContract", values?: undefined): string;
30
30
  encodeFunctionData(functionFragment: "treasury", values?: undefined): string;
31
31
  encodeFunctionData(functionFragment: "weth", values?: undefined): string;
@@ -37,7 +37,7 @@ export interface ILidoV1AdapterInterface extends utils.Interface {
37
37
  decodeFunctionResult(functionFragment: "stETH", data: BytesLike): Result;
38
38
  decodeFunctionResult(functionFragment: "stETHTokenMask", data: BytesLike): Result;
39
39
  decodeFunctionResult(functionFragment: "submit", data: BytesLike): Result;
40
- decodeFunctionResult(functionFragment: "submitAll", data: BytesLike): Result;
40
+ decodeFunctionResult(functionFragment: "submitDiff", data: BytesLike): Result;
41
41
  decodeFunctionResult(functionFragment: "targetContract", data: BytesLike): Result;
42
42
  decodeFunctionResult(functionFragment: "treasury", data: BytesLike): Result;
43
43
  decodeFunctionResult(functionFragment: "weth", data: BytesLike): Result;
@@ -68,7 +68,7 @@ export interface ILidoV1Adapter extends BaseContract {
68
68
  submit(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
69
69
  from?: PromiseOrValue<string>;
70
70
  }): Promise<ContractTransaction>;
71
- submitAll(overrides?: Overrides & {
71
+ submitDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
72
72
  from?: PromiseOrValue<string>;
73
73
  }): Promise<ContractTransaction>;
74
74
  targetContract(overrides?: CallOverrides): Promise<[string]>;
@@ -85,7 +85,7 @@ export interface ILidoV1Adapter extends BaseContract {
85
85
  submit(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
86
86
  from?: PromiseOrValue<string>;
87
87
  }): Promise<ContractTransaction>;
88
- submitAll(overrides?: Overrides & {
88
+ submitDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
89
89
  from?: PromiseOrValue<string>;
90
90
  }): Promise<ContractTransaction>;
91
91
  targetContract(overrides?: CallOverrides): Promise<string>;
@@ -106,7 +106,7 @@ export interface ILidoV1Adapter extends BaseContract {
106
106
  tokensToEnable: BigNumber;
107
107
  tokensToDisable: BigNumber;
108
108
  }>;
109
- submitAll(overrides?: CallOverrides): Promise<[
109
+ submitDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
110
110
  BigNumber,
111
111
  BigNumber
112
112
  ] & {
@@ -129,7 +129,7 @@ export interface ILidoV1Adapter extends BaseContract {
129
129
  submit(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
130
130
  from?: PromiseOrValue<string>;
131
131
  }): Promise<BigNumber>;
132
- submitAll(overrides?: Overrides & {
132
+ submitDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
133
133
  from?: PromiseOrValue<string>;
134
134
  }): Promise<BigNumber>;
135
135
  targetContract(overrides?: CallOverrides): Promise<BigNumber>;
@@ -147,7 +147,7 @@ export interface ILidoV1Adapter extends BaseContract {
147
147
  submit(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
148
148
  from?: PromiseOrValue<string>;
149
149
  }): Promise<PopulatedTransaction>;
150
- submitAll(overrides?: Overrides & {
150
+ submitDiff(leftoverAmount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
151
151
  from?: PromiseOrValue<string>;
152
152
  }): Promise<PopulatedTransaction>;
153
153
  targetContract(overrides?: CallOverrides): Promise<PopulatedTransaction>;
@@ -9,15 +9,17 @@ export interface IPriceOracleV3Interface extends utils.Interface {
9
9
  "convertToUSD(uint256,address)": FunctionFragment;
10
10
  "getPrice(address)": FunctionFragment;
11
11
  "getPriceRaw(address,bool)": FunctionFragment;
12
+ "getPriceSafe(address)": FunctionFragment;
12
13
  "priceFeedParams(address)": FunctionFragment;
13
14
  "priceFeeds(address)": FunctionFragment;
14
15
  "priceFeedsRaw(address,bool)": FunctionFragment;
15
- "setPriceFeed(address,address,uint32)": FunctionFragment;
16
+ "safeConvertToUSD(uint256,address)": FunctionFragment;
17
+ "setPriceFeed(address,address,uint32,bool)": FunctionFragment;
16
18
  "setReservePriceFeed(address,address,uint32)": FunctionFragment;
17
19
  "setReservePriceFeedStatus(address,bool)": FunctionFragment;
18
20
  "version()": FunctionFragment;
19
21
  };
20
- getFunction(nameOrSignatureOrTopic: "convert" | "convertFromUSD" | "convertToUSD" | "getPrice" | "getPriceRaw" | "priceFeedParams" | "priceFeeds" | "priceFeedsRaw" | "setPriceFeed" | "setReservePriceFeed" | "setReservePriceFeedStatus" | "version"): FunctionFragment;
22
+ getFunction(nameOrSignatureOrTopic: "convert" | "convertFromUSD" | "convertToUSD" | "getPrice" | "getPriceRaw" | "getPriceSafe" | "priceFeedParams" | "priceFeeds" | "priceFeedsRaw" | "safeConvertToUSD" | "setPriceFeed" | "setReservePriceFeed" | "setReservePriceFeedStatus" | "version"): FunctionFragment;
21
23
  encodeFunctionData(functionFragment: "convert", values: [
22
24
  PromiseOrValue<BigNumberish>,
23
25
  PromiseOrValue<string>,
@@ -27,13 +29,16 @@ export interface IPriceOracleV3Interface extends utils.Interface {
27
29
  encodeFunctionData(functionFragment: "convertToUSD", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
28
30
  encodeFunctionData(functionFragment: "getPrice", values: [PromiseOrValue<string>]): string;
29
31
  encodeFunctionData(functionFragment: "getPriceRaw", values: [PromiseOrValue<string>, PromiseOrValue<boolean>]): string;
32
+ encodeFunctionData(functionFragment: "getPriceSafe", values: [PromiseOrValue<string>]): string;
30
33
  encodeFunctionData(functionFragment: "priceFeedParams", values: [PromiseOrValue<string>]): string;
31
34
  encodeFunctionData(functionFragment: "priceFeeds", values: [PromiseOrValue<string>]): string;
32
35
  encodeFunctionData(functionFragment: "priceFeedsRaw", values: [PromiseOrValue<string>, PromiseOrValue<boolean>]): string;
36
+ encodeFunctionData(functionFragment: "safeConvertToUSD", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
33
37
  encodeFunctionData(functionFragment: "setPriceFeed", values: [
34
38
  PromiseOrValue<string>,
35
39
  PromiseOrValue<string>,
36
- PromiseOrValue<BigNumberish>
40
+ PromiseOrValue<BigNumberish>,
41
+ PromiseOrValue<boolean>
37
42
  ]): string;
38
43
  encodeFunctionData(functionFragment: "setReservePriceFeed", values: [
39
44
  PromiseOrValue<string>,
@@ -47,15 +52,17 @@ export interface IPriceOracleV3Interface extends utils.Interface {
47
52
  decodeFunctionResult(functionFragment: "convertToUSD", data: BytesLike): Result;
48
53
  decodeFunctionResult(functionFragment: "getPrice", data: BytesLike): Result;
49
54
  decodeFunctionResult(functionFragment: "getPriceRaw", data: BytesLike): Result;
55
+ decodeFunctionResult(functionFragment: "getPriceSafe", data: BytesLike): Result;
50
56
  decodeFunctionResult(functionFragment: "priceFeedParams", data: BytesLike): Result;
51
57
  decodeFunctionResult(functionFragment: "priceFeeds", data: BytesLike): Result;
52
58
  decodeFunctionResult(functionFragment: "priceFeedsRaw", data: BytesLike): Result;
59
+ decodeFunctionResult(functionFragment: "safeConvertToUSD", data: BytesLike): Result;
53
60
  decodeFunctionResult(functionFragment: "setPriceFeed", data: BytesLike): Result;
54
61
  decodeFunctionResult(functionFragment: "setReservePriceFeed", data: BytesLike): Result;
55
62
  decodeFunctionResult(functionFragment: "setReservePriceFeedStatus", data: BytesLike): Result;
56
63
  decodeFunctionResult(functionFragment: "version", data: BytesLike): Result;
57
64
  events: {
58
- "SetPriceFeed(address,address,uint32,bool)": EventFragment;
65
+ "SetPriceFeed(address,address,uint32,bool,bool)": EventFragment;
59
66
  "SetReservePriceFeed(address,address,uint32,bool)": EventFragment;
60
67
  "SetReservePriceFeedStatus(address,bool)": EventFragment;
61
68
  };
@@ -68,11 +75,13 @@ export interface SetPriceFeedEventObject {
68
75
  priceFeed: string;
69
76
  stalenessPeriod: number;
70
77
  skipCheck: boolean;
78
+ trusted: boolean;
71
79
  }
72
80
  export type SetPriceFeedEvent = TypedEvent<[
73
81
  string,
74
82
  string,
75
83
  number,
84
+ boolean,
76
85
  boolean
77
86
  ], SetPriceFeedEventObject>;
78
87
  export type SetPriceFeedEventFilter = TypedEventFilter<SetPriceFeedEvent>;
@@ -118,22 +127,26 @@ export interface IPriceOracleV3 extends BaseContract {
118
127
  convertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
119
128
  getPrice(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
120
129
  getPriceRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[BigNumber]>;
130
+ getPriceSafe(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
121
131
  priceFeedParams(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
122
132
  string,
123
133
  number,
124
134
  boolean,
125
- number
135
+ number,
136
+ boolean
126
137
  ] & {
127
138
  priceFeed: string;
128
139
  stalenessPeriod: number;
129
140
  skipCheck: boolean;
130
141
  decimals: number;
142
+ trusted: boolean;
131
143
  }>;
132
144
  priceFeeds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[string] & {
133
145
  priceFeed: string;
134
146
  }>;
135
147
  priceFeedsRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[string]>;
136
- setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
148
+ safeConvertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
149
+ setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, trusted: PromiseOrValue<boolean>, overrides?: Overrides & {
137
150
  from?: PromiseOrValue<string>;
138
151
  }): Promise<ContractTransaction>;
139
152
  setReservePriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -149,20 +162,24 @@ export interface IPriceOracleV3 extends BaseContract {
149
162
  convertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
150
163
  getPrice(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
151
164
  getPriceRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
165
+ getPriceSafe(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
152
166
  priceFeedParams(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
153
167
  string,
154
168
  number,
155
169
  boolean,
156
- number
170
+ number,
171
+ boolean
157
172
  ] & {
158
173
  priceFeed: string;
159
174
  stalenessPeriod: number;
160
175
  skipCheck: boolean;
161
176
  decimals: number;
177
+ trusted: boolean;
162
178
  }>;
163
179
  priceFeeds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<string>;
164
180
  priceFeedsRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<string>;
165
- setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
181
+ safeConvertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
182
+ setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, trusted: PromiseOrValue<boolean>, overrides?: Overrides & {
166
183
  from?: PromiseOrValue<string>;
167
184
  }): Promise<ContractTransaction>;
168
185
  setReservePriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -178,27 +195,31 @@ export interface IPriceOracleV3 extends BaseContract {
178
195
  convertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
179
196
  getPrice(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
180
197
  getPriceRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
198
+ getPriceSafe(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
181
199
  priceFeedParams(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
182
200
  string,
183
201
  number,
184
202
  boolean,
185
- number
203
+ number,
204
+ boolean
186
205
  ] & {
187
206
  priceFeed: string;
188
207
  stalenessPeriod: number;
189
208
  skipCheck: boolean;
190
209
  decimals: number;
210
+ trusted: boolean;
191
211
  }>;
192
212
  priceFeeds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<string>;
193
213
  priceFeedsRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<string>;
194
- setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
214
+ safeConvertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
215
+ setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, trusted: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
195
216
  setReservePriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
196
217
  setReservePriceFeedStatus(token: PromiseOrValue<string>, active: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
197
218
  version(overrides?: CallOverrides): Promise<BigNumber>;
198
219
  };
199
220
  filters: {
200
- "SetPriceFeed(address,address,uint32,bool)"(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null): SetPriceFeedEventFilter;
201
- SetPriceFeed(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null): SetPriceFeedEventFilter;
221
+ "SetPriceFeed(address,address,uint32,bool,bool)"(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null, trusted?: null): SetPriceFeedEventFilter;
222
+ SetPriceFeed(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null, trusted?: null): SetPriceFeedEventFilter;
202
223
  "SetReservePriceFeed(address,address,uint32,bool)"(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null): SetReservePriceFeedEventFilter;
203
224
  SetReservePriceFeed(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null): SetReservePriceFeedEventFilter;
204
225
  "SetReservePriceFeedStatus(address,bool)"(token?: PromiseOrValue<string> | null, active?: null): SetReservePriceFeedStatusEventFilter;
@@ -210,10 +231,12 @@ export interface IPriceOracleV3 extends BaseContract {
210
231
  convertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
211
232
  getPrice(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
212
233
  getPriceRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
234
+ getPriceSafe(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
213
235
  priceFeedParams(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
214
236
  priceFeeds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
215
237
  priceFeedsRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
216
- setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
238
+ safeConvertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
239
+ setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, trusted: PromiseOrValue<boolean>, overrides?: Overrides & {
217
240
  from?: PromiseOrValue<string>;
218
241
  }): Promise<BigNumber>;
219
242
  setReservePriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -230,10 +253,12 @@ export interface IPriceOracleV3 extends BaseContract {
230
253
  convertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
231
254
  getPrice(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
232
255
  getPriceRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
256
+ getPriceSafe(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
233
257
  priceFeedParams(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
234
258
  priceFeeds(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
235
259
  priceFeedsRaw(token: PromiseOrValue<string>, reserve: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
236
- setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
260
+ safeConvertToUSD(amount: PromiseOrValue<BigNumberish>, token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
261
+ setPriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, trusted: PromiseOrValue<boolean>, overrides?: Overrides & {
237
262
  from?: PromiseOrValue<string>;
238
263
  }): Promise<PopulatedTransaction>;
239
264
  setReservePriceFeed(token: PromiseOrValue<string>, priceFeed: PromiseOrValue<string>, stalenessPeriod: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -5,7 +5,7 @@ import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrVal
5
5
  export interface IPriceOracleV3EventsInterface extends utils.Interface {
6
6
  functions: {};
7
7
  events: {
8
- "SetPriceFeed(address,address,uint32,bool)": EventFragment;
8
+ "SetPriceFeed(address,address,uint32,bool,bool)": EventFragment;
9
9
  "SetReservePriceFeed(address,address,uint32,bool)": EventFragment;
10
10
  "SetReservePriceFeedStatus(address,bool)": EventFragment;
11
11
  };
@@ -18,11 +18,13 @@ export interface SetPriceFeedEventObject {
18
18
  priceFeed: string;
19
19
  stalenessPeriod: number;
20
20
  skipCheck: boolean;
21
+ trusted: boolean;
21
22
  }
22
23
  export type SetPriceFeedEvent = TypedEvent<[
23
24
  string,
24
25
  string,
25
26
  number,
27
+ boolean,
26
28
  boolean
27
29
  ], SetPriceFeedEventObject>;
28
30
  export type SetPriceFeedEventFilter = TypedEventFilter<SetPriceFeedEvent>;
@@ -65,8 +67,8 @@ export interface IPriceOracleV3Events extends BaseContract {
65
67
  functions: {};
66
68
  callStatic: {};
67
69
  filters: {
68
- "SetPriceFeed(address,address,uint32,bool)"(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null): SetPriceFeedEventFilter;
69
- SetPriceFeed(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null): SetPriceFeedEventFilter;
70
+ "SetPriceFeed(address,address,uint32,bool,bool)"(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null, trusted?: null): SetPriceFeedEventFilter;
71
+ SetPriceFeed(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null, trusted?: null): SetPriceFeedEventFilter;
70
72
  "SetReservePriceFeed(address,address,uint32,bool)"(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null): SetReservePriceFeedEventFilter;
71
73
  SetReservePriceFeed(token?: PromiseOrValue<string> | null, priceFeed?: PromiseOrValue<string> | null, stalenessPeriod?: null, skipCheck?: null): SetReservePriceFeedEventFilter;
72
74
  "SetReservePriceFeedStatus(address,bool)"(token?: PromiseOrValue<string> | null, active?: null): SetReservePriceFeedStatusEventFilter;
@@ -20,19 +20,20 @@ export interface IUniswapV2AdapterInterface extends utils.Interface {
20
20
  "creditManager()": FunctionFragment;
21
21
  "isPairAllowed(address,address)": FunctionFragment;
22
22
  "setPairStatusBatch((address,address,bool)[])": FunctionFragment;
23
- "swapAllTokensForTokens(uint256,address[],uint256)": FunctionFragment;
23
+ "swapDiffTokensForTokens(uint256,uint256,address[],uint256)": FunctionFragment;
24
24
  "swapExactTokensForTokens(uint256,uint256,address[],address,uint256)": FunctionFragment;
25
25
  "swapTokensForExactTokens(uint256,uint256,address[],address,uint256)": FunctionFragment;
26
26
  "targetContract()": FunctionFragment;
27
27
  };
28
- getFunction(nameOrSignatureOrTopic: "_gearboxAdapterType" | "_gearboxAdapterVersion" | "addressProvider" | "creditManager" | "isPairAllowed" | "setPairStatusBatch" | "swapAllTokensForTokens" | "swapExactTokensForTokens" | "swapTokensForExactTokens" | "targetContract"): FunctionFragment;
28
+ getFunction(nameOrSignatureOrTopic: "_gearboxAdapterType" | "_gearboxAdapterVersion" | "addressProvider" | "creditManager" | "isPairAllowed" | "setPairStatusBatch" | "swapDiffTokensForTokens" | "swapExactTokensForTokens" | "swapTokensForExactTokens" | "targetContract"): FunctionFragment;
29
29
  encodeFunctionData(functionFragment: "_gearboxAdapterType", values?: undefined): string;
30
30
  encodeFunctionData(functionFragment: "_gearboxAdapterVersion", values?: undefined): string;
31
31
  encodeFunctionData(functionFragment: "addressProvider", values?: undefined): string;
32
32
  encodeFunctionData(functionFragment: "creditManager", values?: undefined): string;
33
33
  encodeFunctionData(functionFragment: "isPairAllowed", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
34
34
  encodeFunctionData(functionFragment: "setPairStatusBatch", values: [UniswapV2PairStatusStruct[]]): string;
35
- encodeFunctionData(functionFragment: "swapAllTokensForTokens", values: [
35
+ encodeFunctionData(functionFragment: "swapDiffTokensForTokens", values: [
36
+ PromiseOrValue<BigNumberish>,
36
37
  PromiseOrValue<BigNumberish>,
37
38
  PromiseOrValue<string>[],
38
39
  PromiseOrValue<BigNumberish>
@@ -58,7 +59,7 @@ export interface IUniswapV2AdapterInterface extends utils.Interface {
58
59
  decodeFunctionResult(functionFragment: "creditManager", data: BytesLike): Result;
59
60
  decodeFunctionResult(functionFragment: "isPairAllowed", data: BytesLike): Result;
60
61
  decodeFunctionResult(functionFragment: "setPairStatusBatch", data: BytesLike): Result;
61
- decodeFunctionResult(functionFragment: "swapAllTokensForTokens", data: BytesLike): Result;
62
+ decodeFunctionResult(functionFragment: "swapDiffTokensForTokens", data: BytesLike): Result;
62
63
  decodeFunctionResult(functionFragment: "swapExactTokensForTokens", data: BytesLike): Result;
63
64
  decodeFunctionResult(functionFragment: "swapTokensForExactTokens", data: BytesLike): Result;
64
65
  decodeFunctionResult(functionFragment: "targetContract", data: BytesLike): Result;
@@ -101,7 +102,7 @@ export interface IUniswapV2Adapter extends BaseContract {
101
102
  setPairStatusBatch(pairs: UniswapV2PairStatusStruct[], overrides?: Overrides & {
102
103
  from?: PromiseOrValue<string>;
103
104
  }): Promise<ContractTransaction>;
104
- swapAllTokensForTokens(rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
105
+ swapDiffTokensForTokens(leftoverAmount: PromiseOrValue<BigNumberish>, rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
105
106
  from?: PromiseOrValue<string>;
106
107
  }): Promise<ContractTransaction>;
107
108
  swapExactTokensForTokens(amountIn: PromiseOrValue<BigNumberish>, amountOutMin: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], arg3: PromiseOrValue<string>, deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -120,7 +121,7 @@ export interface IUniswapV2Adapter extends BaseContract {
120
121
  setPairStatusBatch(pairs: UniswapV2PairStatusStruct[], overrides?: Overrides & {
121
122
  from?: PromiseOrValue<string>;
122
123
  }): Promise<ContractTransaction>;
123
- swapAllTokensForTokens(rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
124
+ swapDiffTokensForTokens(leftoverAmount: PromiseOrValue<BigNumberish>, rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
124
125
  from?: PromiseOrValue<string>;
125
126
  }): Promise<ContractTransaction>;
126
127
  swapExactTokensForTokens(amountIn: PromiseOrValue<BigNumberish>, amountOutMin: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], arg3: PromiseOrValue<string>, deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -137,7 +138,7 @@ export interface IUniswapV2Adapter extends BaseContract {
137
138
  creditManager(overrides?: CallOverrides): Promise<string>;
138
139
  isPairAllowed(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
139
140
  setPairStatusBatch(pairs: UniswapV2PairStatusStruct[], overrides?: CallOverrides): Promise<void>;
140
- swapAllTokensForTokens(rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
141
+ swapDiffTokensForTokens(leftoverAmount: PromiseOrValue<BigNumberish>, rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
141
142
  BigNumber,
142
143
  BigNumber
143
144
  ] & {
@@ -173,7 +174,7 @@ export interface IUniswapV2Adapter extends BaseContract {
173
174
  setPairStatusBatch(pairs: UniswapV2PairStatusStruct[], overrides?: Overrides & {
174
175
  from?: PromiseOrValue<string>;
175
176
  }): Promise<BigNumber>;
176
- swapAllTokensForTokens(rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
177
+ swapDiffTokensForTokens(leftoverAmount: PromiseOrValue<BigNumberish>, rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
177
178
  from?: PromiseOrValue<string>;
178
179
  }): Promise<BigNumber>;
179
180
  swapExactTokensForTokens(amountIn: PromiseOrValue<BigNumberish>, amountOutMin: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], arg3: PromiseOrValue<string>, deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -193,7 +194,7 @@ export interface IUniswapV2Adapter extends BaseContract {
193
194
  setPairStatusBatch(pairs: UniswapV2PairStatusStruct[], overrides?: Overrides & {
194
195
  from?: PromiseOrValue<string>;
195
196
  }): Promise<PopulatedTransaction>;
196
- swapAllTokensForTokens(rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
197
+ swapDiffTokensForTokens(leftoverAmount: PromiseOrValue<BigNumberish>, rateMinRAY: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
197
198
  from?: PromiseOrValue<string>;
198
199
  }): Promise<PopulatedTransaction>;
199
200
  swapExactTokensForTokens(amountIn: PromiseOrValue<BigNumberish>, amountOutMin: PromiseOrValue<BigNumberish>, path: PromiseOrValue<string>[], arg3: PromiseOrValue<string>, deadline: PromiseOrValue<BigNumberish>, overrides?: Overrides & {