dsa-governance/deployments/mainnet_1/PayloadIGP12.json

1 line
62 KiB
JSON
Raw Normal View History

2024-03-15 03:46:32 +00:00
{"metadata":"{\"defaultCompiler\":{\"version\":\"0.7.3\"},\"sources\":{\"contracts/payloads/IGP12/PayloadIGP12.sol\":{\"content\":\"pragma solidity >=0.7.0;\\npragma experimental ABIEncoderV2;\\n\\nimport { BigMathMinified } from \\\"./libraries/bigMathMinified.sol\\\";\\nimport { LiquiditySlotsLink } from \\\"./libraries/liquiditySlotsLink.sol\\\";\\n\\ninterface IGovernorBravo {\\n function propose(\\n address[] memory targets,\\n uint[] memory values,\\n string[] memory signatures,\\n bytes[] memory calldatas,\\n string memory description\\n ) external returns (uint);\\n\\n function admin() external view returns (address);\\n\\n function timelock() external view returns (address);\\n\\n function votingDelay() external view returns (uint256);\\n\\n function votingPeriod() external view returns (uint256);\\n}\\n\\ninterface ITimelock {\\n function admin() external view returns (address);\\n}\\n\\ninterface IInstaIndex {\\n function changeMaster(address _newMaster) external;\\n function updateMaster() external;\\n function master() external view returns (address);\\n}\\n\\ninterface AdminModuleStructs {\\n struct AddressBool {\\n address addr;\\n bool value;\\n }\\n\\n struct AddressUint256 {\\n address addr;\\n uint256 value;\\n }\\n\\n struct RateDataV1Params {\\n address token;\\n uint256 kink;\\n uint256 rateAtUtilizationZero;\\n uint256 rateAtUtilizationKink;\\n uint256 rateAtUtilizationMax;\\n }\\n\\n struct RateDataV2Params {\\n address token;\\n uint256 kink1;\\n uint256 kink2;\\n uint256 rateAtUtilizationZero;\\n uint256 rateAtUtilizationKink1;\\n uint256 rateAtUtilizationKink2;\\n uint256 rateAtUtilizationMax;\\n }\\n\\n struct TokenConfig {\\n address token;\\n uint256 fee;\\n uint256 threshold;\\n }\\n\\n struct UserSupplyConfig {\\n address user;\\n address token;\\n uint8 mode;\\n uint256 expandPercent;\\n uint256 expandDuration;\\n uint256 baseWithdrawalLimit;\\n }\\n\\n struct UserBorrowConfig {\\n address user;\\n address token;\\n uint8 mode;\\n uint256 expandPercent;\\n uint256 expandDuration;\\n uint256 baseDebtCeiling;\\n uint256 maxDebtCeiling;\\n }\\n}\\n\\ninterface IFluidLiquidityAdmin {\\n /// @notice adds/removes auths. Auths generally could be contracts which can have restricted actions defined on contract.\\n /// auths can be helpful in reducing governance overhead where it's not needed.\\n /// @param authsStatus_ array of structs setting allowed status for an address.\\n /// status true => add auth, false => remove auth\\n function updateAuths(AdminModuleStructs.AddressBool[] calldata authsStatus_) external;\\n\\n /// @notice adds/removes guardians. Only callable by Governance.\\n /// @param guardiansStatus_ array of structs setting allowed status for an address.\\n /// status true => add guardian, false => remove guardian\\n function updateGuardians(AdminModuleStructs.AddressBool[] calldata guardiansStatus_) external;\\n\\n /// @notice changes the revenue collector address (contract that is sent revenue). Only callable by Governance.\\n /// @param revenueCollector_ new revenue collector address\\n function updateRevenueCollector(address revenueCollector_) external;\\n\\n /// @notice changes current status, e.g. for pausing or unpausing all user operations. Only callable by Auths.\\n /// @param newStatus_ new status\\n /// status = 2 -> pause, status = 1 -> resume.\\n function changeStatus(uint256 newStatus_) external;\\n\\n /// @notice update tokens rate data version 1. Only callable by Auths.\\n /// @param tokensRateData_ array of RateDataV1Params with rate data to set for each token\\n function updateRateDataV1s(AdminModuleStruct