@pendle/core-v2 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/contracts/SuperComposableYield/ISuperComposableYield.sol +14 -0
  2. package/contracts/SuperComposableYield/implementations/IRewardManager.sol +16 -0
  3. package/contracts/SuperComposableYield/implementations/RewardManager.sol +24 -5
  4. package/contracts/SuperComposableYield/implementations/SCYBase.sol +21 -1
  5. package/contracts/core/PendleMarket.sol +10 -18
  6. package/contracts/core/PendleMarketFactory.sol +49 -22
  7. package/contracts/core/PendleRouter.sol +74 -0
  8. package/contracts/core/PendleYieldToken.sol +20 -12
  9. package/contracts/core/{router/PendleRouterStaticUpg.sol → RouterStatic.sol} +6 -6
  10. package/contracts/core/actions/ActionCallback.sol +101 -0
  11. package/contracts/core/{router/PendleRouterCoreUpg.sol → actions/ActionCore.sol} +6 -10
  12. package/contracts/core/{router/PendleRouterYTUpg.sol → actions/ActionYT.sol} +6 -11
  13. package/contracts/core/{router/base/PendleRouterOTBaseUpg.sol → actions/base/ActionSCYAndOTBase.sol} +1 -5
  14. package/contracts/core/{router/base/PendleRouterSCYAndForgeBaseUpg.sol → actions/base/ActionSCYAndYOBase.sol} +6 -8
  15. package/contracts/core/{router/base/PendleRouterYTBaseUpg.sol → actions/base/ActionSCYAndYTBase.sol} +7 -99
  16. package/contracts/core/actions/base/ActionType.sol +11 -0
  17. package/contracts/interfaces/{IPRouterCore.sol → IPActionCore.sol} +1 -1
  18. package/contracts/interfaces/{IPRouterYT.sol → IPActionYT.sol} +1 -3
  19. package/contracts/interfaces/IPAllAction.sol +9 -0
  20. package/contracts/interfaces/IPMarketFactory.sol +11 -0
  21. package/contracts/interfaces/IPYieldToken.sol +21 -3
  22. package/contracts/libraries/math/MarketMathCore.sol +3 -2
  23. package/package.json +1 -1
  24. package/typechain-types/{PendleRouterYTBaseUpg.ts → ActionCallback.ts} +5 -5
  25. package/typechain-types/{PendleRouterCoreUpg.ts → ActionCore.ts} +5 -5
  26. package/typechain-types/{PendleRouterSCYAndForgeBaseUpg.ts → ActionSCYAndYOBase.ts} +5 -6
  27. package/typechain-types/{BoringOwnableData.ts → ActionSCYAndYTBase.ts} +21 -24
  28. package/typechain-types/{PendleRouterStaticUpg.ts → ActionStatic.ts} +5 -5
  29. package/typechain-types/{IPRouterYT.ts → ActionYT.ts} +27 -42
  30. package/typechain-types/IPActionAll.ts +1431 -0
  31. package/typechain-types/{IPRouterCore.ts → IPActionCore.ts} +5 -5
  32. package/typechain-types/{IPRouterView.ts → IPActionStatic.ts} +57 -5
  33. package/typechain-types/{PendleRouterYTUpg.ts → IPActionYT.ts} +5 -97
  34. package/typechain-types/IPAllAction.ts +1431 -0
  35. package/typechain-types/IPMarket.ts +3 -0
  36. package/typechain-types/IPMarketFactory.ts +46 -0
  37. package/typechain-types/IPYieldToken.ts +342 -14
  38. package/typechain-types/IRewardManager.ts +178 -0
  39. package/typechain-types/ISuperComposableYield.ts +97 -2
  40. package/typechain-types/PendleAaveV3SCY.ts +167 -66
  41. package/typechain-types/PendleBenQiErc20SCY.ts +167 -66
  42. package/typechain-types/PendleBtrflyScy.ts +97 -2
  43. package/typechain-types/PendleMarket.ts +3 -59
  44. package/typechain-types/PendleMarketFactory.ts +150 -24
  45. package/typechain-types/{PendleRouterProxy.ts → PendleRouter.ts} +29 -39
  46. package/typechain-types/PendleYearnVaultScy.ts +97 -2
  47. package/typechain-types/PendleYieldToken.ts +116 -101
  48. package/typechain-types/RewardManager.ts +48 -42
  49. package/typechain-types/RouterStatic.ts +828 -0
  50. package/typechain-types/SCYBase.ts +97 -2
  51. package/typechain-types/SCYBaseWithRewards.ts +167 -66
  52. package/typechain-types/factories/ActionCallback__factory.ts +116 -0
  53. package/typechain-types/factories/ActionCore__factory.ts +632 -0
  54. package/typechain-types/factories/{PendleRouterSCYAndForgeBaseUpg__factory.ts → ActionSCYAndYOBase__factory.ts} +8 -12
  55. package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +52 -0
  56. package/typechain-types/factories/ActionStatic__factory.ts +308 -0
  57. package/typechain-types/factories/ActionYT__factory.ts +370 -0
  58. package/typechain-types/factories/IPActionAll__factory.ts +983 -0
  59. package/typechain-types/factories/{IPRouterCore__factory.ts → IPActionCore__factory.ts} +6 -6
  60. package/typechain-types/factories/{IPRouterView__factory.ts → IPActionStatic__factory.ts} +38 -6
  61. package/typechain-types/factories/{IPRouterYT__factory.ts → IPActionYT__factory.ts} +6 -29
  62. package/typechain-types/factories/IPAllAction__factory.ts +983 -0
  63. package/typechain-types/factories/IPMarketFactory__factory.ts +28 -0
  64. package/typechain-types/factories/IPMarket__factory.ts +7 -2
  65. package/typechain-types/factories/IPYieldToken__factory.ts +158 -1
  66. package/typechain-types/factories/IRewardManager__factory.ts +92 -0
  67. package/typechain-types/factories/ISuperComposableYield__factory.ts +68 -0
  68. package/typechain-types/factories/PendleAaveV3SCY__factory.ts +102 -34
  69. package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +102 -34
  70. package/typechain-types/factories/PendleBtrflyScy__factory.ts +69 -1
  71. package/typechain-types/factories/PendleMarketFactory__factory.ts +112 -17
  72. package/typechain-types/factories/PendleMarket__factory.ts +8 -69
  73. package/typechain-types/factories/PendleRouter__factory.ts +282 -0
  74. package/typechain-types/factories/PendleYearnVaultScy__factory.ts +69 -1
  75. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  76. package/typechain-types/factories/PendleYieldToken__factory.ts +58 -58
  77. package/typechain-types/factories/RewardManager__factory.ts +18 -18
  78. package/typechain-types/factories/RouterStatic__factory.ts +883 -0
  79. package/typechain-types/factories/SCYBaseWithRewards__factory.ts +101 -33
  80. package/typechain-types/factories/SCYBase__factory.ts +68 -0
  81. package/typechain-types/hardhat.d.ts +93 -75
  82. package/typechain-types/index.ts +22 -18
  83. package/contracts/core/router/PendleRouterProxy.sol +0 -84
  84. package/contracts/interfaces/IPFlashCallBack.sol +0 -10
  85. package/typechain-types/BoringOwnable.ts +0 -194
  86. package/typechain-types/BoringOwnableUpg.ts +0 -194
  87. package/typechain-types/BoringOwnableUpgData.ts +0 -100
  88. package/typechain-types/IPFlashCallback.ts +0 -115
  89. package/typechain-types/IPermissionsV2.ts +0 -87
  90. package/typechain-types/PendleRouterViewUpg.ts +0 -307
  91. package/typechain-types/PermissionsV2.ts +0 -87
  92. package/typechain-types/factories/BoringOwnableData__factory.ts +0 -90
  93. package/typechain-types/factories/BoringOwnableUpgData__factory.ts +0 -94
  94. package/typechain-types/factories/BoringOwnableUpg__factory.ts +0 -139
  95. package/typechain-types/factories/BoringOwnable__factory.ts +0 -149
  96. package/typechain-types/factories/IPFlashCallback__factory.ts +0 -49
  97. package/typechain-types/factories/IPermissionsV2__factory.ts +0 -39
  98. package/typechain-types/factories/PendleRouterCoreUpg__factory.ts +0 -635
  99. package/typechain-types/factories/PendleRouterProxy__factory.ts +0 -285
  100. package/typechain-types/factories/PendleRouterStaticUpg__factory.ts +0 -315
  101. package/typechain-types/factories/PendleRouterViewUpg__factory.ts +0 -265
  102. package/typechain-types/factories/PendleRouterYTBaseUpg__factory.ts +0 -66
  103. package/typechain-types/factories/PendleRouterYTUpg__factory.ts +0 -422
  104. package/typechain-types/factories/PermissionsV2__factory.ts +0 -36
@@ -0,0 +1,116 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type {
7
+ ActionCallback,
8
+ ActionCallbackInterface,
9
+ } from "../ActionCallback";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "address",
16
+ name: "_marketFactory",
17
+ type: "address",
18
+ },
19
+ ],
20
+ stateMutability: "nonpayable",
21
+ type: "constructor",
22
+ },
23
+ {
24
+ inputs: [],
25
+ name: "marketFactory",
26
+ outputs: [
27
+ {
28
+ internalType: "address",
29
+ name: "",
30
+ type: "address",
31
+ },
32
+ ],
33
+ stateMutability: "view",
34
+ type: "function",
35
+ },
36
+ {
37
+ inputs: [
38
+ {
39
+ internalType: "int256",
40
+ name: "otToAccount",
41
+ type: "int256",
42
+ },
43
+ {
44
+ internalType: "int256",
45
+ name: "scyToAccount",
46
+ type: "int256",
47
+ },
48
+ {
49
+ internalType: "bytes",
50
+ name: "data",
51
+ type: "bytes",
52
+ },
53
+ ],
54
+ name: "swapCallback",
55
+ outputs: [],
56
+ stateMutability: "nonpayable",
57
+ type: "function",
58
+ },
59
+ ];
60
+
61
+ const _bytecode =
62
+ "0x60a060405234801561001057600080fd5b50604051610e94380380610e9483398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b608051610e04610090600039600081816040015260a60152610e046000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306ae70951461003b578063fa483e7214610078575b600080fd5b6100627f000000000000000000000000000000000000000000000000000000000000000081565b60405161006f9190610a05565b60405180910390f35b61008b610086366004610a19565b61008d565b005b6040516358e6309f60e01b815233906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358e6309f906100db908490600401610a05565b60206040518083038186803b1580156100f357600080fd5b505afa158015610107573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012b9190610a98565b61016d5760405162461bcd60e51b815260206004820152600e60248201526d1253959053125117d3505492d15560921b60448201526064015b60405180910390fd5b600061017b83850185610ae4565b509050600281600381111561019257610192610ba5565b14156101a8576101a3338585610254565b61024c565b60018160038111156101bc576101bc610ba5565b14156101cf576101a3338787878761035f565b60038160038111156101e3576101e3610ba5565b1480610200575060008160038111156101fe576101fe610ba5565b145b15610211576101a333868686610541565b60405162461bcd60e51b815260206004820152601060248201526f756e6b6e6f776e20737761705479706560801b6044820152606401610164565b505050505050565b6000836001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b15801561028f57600080fd5b505afa1580156102a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c79190610bd3565b9250600091506102db905083850185610c20565b604051630aa1fb9760e41b81529092506001600160a01b038416915063aa1fb9709061030d9088908590600401610c57565b602060405180830381600087803b15801561032757600080fd5b505af115801561033b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024c9190610c71565b60008061036e83850185610c8a565b9250925050600080886001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b1580156103af57600080fd5b505afa1580156103c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e79190610bd3565b925050915060006103ff6103fa8a6106ab565b6106bc565b9050600061040c896106bc565b9050600061048c856001600160a01b031663f65d6fc86040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561044e57600080fd5b505af1158015610462573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104869190610c71565b846106cf565b9050600061049a82846106f5565b90506104b16001600160a01b03871689878461070c565b846001600160a01b031663aa1fb9708e896040518363ffffffff1660e01b81526004016104df929190610c57565b602060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105319190610c71565b5050505050505050505050505050565b600061054f82840184610c20565b915050600080866001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b15801561058e57600080fd5b505afa1580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c69190610bd3565b925050915060006105d96103fa886106ab565b90506000826001600160a01b03166380a7c9ac306040518263ffffffff1660e01b81526004016106099190610a05565b602060405180830381600087803b15801561062357600080fd5b505af1158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190610c71565b90506106716001600160a01b0385168a8461077d565b6001600160a01b03851630146106a0576106a08561068f8484610cde565b6001600160a01b038716919061077d565b505050505050505050565b60006106b682610cf5565b92915050565b6000808212156106cb57600080fd5b5090565b6000826106e4670de0b6b3a764000084610d12565b6106ee9190610d31565b9392505050565b6000818310156107065760006106ee565b50900390565b6040516001600160a01b03808516602483015283166044820152606481018290526107779085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526107b2565b50505050565b6040516001600160a01b0383166024820152604481018290526107ad90849063a9059cbb60e01b90606401610740565b505050565b6000610807826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166108849092919063ffffffff16565b8051909150156107ad57808060200190518101906108259190610a98565b6107ad5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610164565b6060610893848460008561089b565b949350505050565b6060824710156108fc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610164565b6001600160a01b0385163b6109535760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610164565b600080866001600160a01b0316858760405161096f9190610d7f565b60006040518083038185875af1925050503d80600081146109ac576040519150601f19603f3d011682016040523d82523d6000602084013e6109b1565b606091505b50915091506109c18282866109cc565b979650505050505050565b606083156109db5750816106ee565b8251156109eb5782518084602001fd5b8160405162461bcd60e51b81526004016101649190610d9b565b6001600160a01b0391909116815260200190565b60008060008060608587031215610a2f57600080fd5b843593506020850135925060408501356001600160401b0380821115610a5457600080fd5b818701915087601f830112610a6857600080fd5b813581811115610a7757600080fd5b886020828501011115610a8957600080fd5b95989497505060200194505050565b600060208284031215610aaa57600080fd5b815180151581146106ee57600080fd5b803560048110610ac957600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610af757600080fd5b610b0083610aba565b915060208301356001600160401b0380821115610b1c57600080fd5b818501915085601f830112610b3057600080fd5b813581811115610b4257610b42610ace565b604051601f8201601f19908116603f01168101908382118183101715610b6a57610b6a610ace565b81604052828152886020848701011115610b8357600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b0381168114610bd057600080fd5b50565b600080600060608486031215610be857600080fd5b8351610bf381610bbb565b6020850151909350610c0481610bbb565b6040850151909250610c1581610bbb565b809150509250925092565b60008060408385031215610c3357600080fd5b610c3c83610aba565b91506020830135610c4c81610bbb565b809150509250929050565b6001600160a01b0392831681529116602082015260400190565b600060208284031215610c8357600080fd5b5051919050565b600080600060608486031215610c9f57600080fd5b610ca884610aba565b92506020840135610cb881610bbb565b91506040840135610c1581610bbb565b634e487b7160e01b600052601160045260246000fd5b600082821015610cf057610cf0610cc8565b500390565b6000600160ff1b821415610d0b57610d0b610cc8565b5060000390565b6000816000190483118215151615610d2c57610d2c610cc8565b500290565b600082610d4e57634e487b7160e01b600052601260045260246000fd5b500490565b60005b83811015610d6e578181015183820152602001610d56565b838111156107775750506000910152565b60008251610d91818460208701610d53565b9190910192915050565b6020815260008251806020840152610dba816040850160208701610d53565b601f01601f1916919091016040019291505056fea2646970667358221220fad1139516a811a2838b9edbcd07431428fae734a9c56cbe726b57ddd903316f64736f6c63430008090033";
63
+
64
+ type ActionCallbackConstructorParams =
65
+ | [signer?: Signer]
66
+ | ConstructorParameters<typeof ContractFactory>;
67
+
68
+ const isSuperArgs = (
69
+ xs: ActionCallbackConstructorParams
70
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
71
+
72
+ export class ActionCallback__factory extends ContractFactory {
73
+ constructor(...args: ActionCallbackConstructorParams) {
74
+ if (isSuperArgs(args)) {
75
+ super(...args);
76
+ } else {
77
+ super(_abi, _bytecode, args[0]);
78
+ }
79
+ this.contractName = "ActionCallback";
80
+ }
81
+
82
+ deploy(
83
+ _marketFactory: string,
84
+ overrides?: Overrides & { from?: string | Promise<string> }
85
+ ): Promise<ActionCallback> {
86
+ return super.deploy(
87
+ _marketFactory,
88
+ overrides || {}
89
+ ) as Promise<ActionCallback>;
90
+ }
91
+ getDeployTransaction(
92
+ _marketFactory: string,
93
+ overrides?: Overrides & { from?: string | Promise<string> }
94
+ ): TransactionRequest {
95
+ return super.getDeployTransaction(_marketFactory, overrides || {});
96
+ }
97
+ attach(address: string): ActionCallback {
98
+ return super.attach(address) as ActionCallback;
99
+ }
100
+ connect(signer: Signer): ActionCallback__factory {
101
+ return super.connect(signer) as ActionCallback__factory;
102
+ }
103
+ static readonly contractName: "ActionCallback";
104
+ public readonly contractName: "ActionCallback";
105
+ static readonly bytecode = _bytecode;
106
+ static readonly abi = _abi;
107
+ static createInterface(): ActionCallbackInterface {
108
+ return new utils.Interface(_abi) as ActionCallbackInterface;
109
+ }
110
+ static connect(
111
+ address: string,
112
+ signerOrProvider: Signer | Provider
113
+ ): ActionCallback {
114
+ return new Contract(address, _abi, signerOrProvider) as ActionCallback;
115
+ }
116
+ }