-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
- Loading branch information
There are no files selected for viewing
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
// SPDX-License-Identifier: GPL-3.0 | ||
|
||
pragma solidity ^0.8.12; | ||
|
||
struct PerpetualManagerFeeData { | ||
uint64[] xHAFeesDeposit; | ||
uint64[] yHAFeesDeposit; | ||
uint64[] xHAFeesWithdraw; | ||
uint64[] yHAFeesWithdraw; | ||
uint64 haBonusMalusDeposit; | ||
uint64 haBonusMalusWithdraw; | ||
} | ||
|
||
struct PerpetualManagerParamData { | ||
uint64 maintenanceMargin; | ||
uint64 maxLeverage; | ||
uint64 targetHAHedge; | ||
uint64 limitHAHedge; | ||
uint64 lockTime; | ||
} | ||
|
||
struct CollateralAddresses { | ||
address stableMaster; | ||
address poolManager; | ||
address perpetualManager; | ||
address sanToken; | ||
address oracle; | ||
address gauge; | ||
address feeManager; | ||
address[] strategies; | ||
} | ||
|
||
interface IAngleHelper { | ||
function getCollateralAddresses(address agToken, address collateral) | ||
external | ||
view | ||
returns (CollateralAddresses memory addresses); | ||
|
||
function getStablecoinAddresses() external view returns (address[] memory, address[] memory); | ||
|
||
function getPoolManager(address agToken, address collateral) external view returns (address poolManager); | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
import { DeployFunction } from 'hardhat-deploy/types'; | ||
import yargs from 'yargs'; | ||
const argv = yargs.env('').boolean('ci').parseSync(); | ||
|
||
const func: DeployFunction = async ({ deployments, ethers }) => { | ||
const { deploy } = deployments; | ||
const { deployer } = await ethers.getNamedSigners(); | ||
|
||
console.log('Now deploying the implementation for OptimizerAPRStrategy'); | ||
await deploy('OptimizerAPRStrategy_Implementation', { | ||
contract: 'OptimizerAPRStrategy', | ||
from: deployer.address, | ||
args: [], | ||
log: !argv.ci, | ||
}); | ||
|
||
const optimizerAPRStrategyImplementation = (await ethers.getContract('OptimizerAPRStrategy_Implementation')).address; | ||
|
||
console.log(`Successfully deployed the implementation for OptimizerAPR at ${optimizerAPRStrategyImplementation}`); | ||
console.log(''); | ||
}; | ||
|
||
func.tags = ['optimizerAPRImplementation']; | ||
export default func; |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
137 |