Created
June 25, 2024 12:08
-
-
Save mcevoyinit/0660818e968a6a46603e06fa80b20d40 to your computer and use it in GitHub Desktop.
ethena_minting_v2_abi.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[ | |
{ | |
"inputs": [ | |
{ | |
"internalType": "contract IUSDe", | |
"name": "_usde", | |
"type": "address" | |
}, | |
{ | |
"internalType": "contract IWETH9", | |
"name": "_weth", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address[]", | |
"name": "_assets", | |
"type": "address[]" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "enum IEthenaMinting.TokenType", | |
"name": "tokenType", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "isActive", | |
"type": "bool" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "maxMintPerBlock", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "maxRedeemPerBlock", | |
"type": "uint128" | |
} | |
], | |
"internalType": "struct IEthenaMinting.TokenConfig[]", | |
"name": "_tokenConfig", | |
"type": "tuple[]" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "uint128", | |
"name": "globalMaxMintPerBlock", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "globalMaxRedeemPerBlock", | |
"type": "uint128" | |
} | |
], | |
"internalType": "struct IEthenaMinting.GlobalConfig", | |
"name": "_globalConfig", | |
"type": "tuple" | |
}, | |
{ | |
"internalType": "address[]", | |
"name": "_custodians", | |
"type": "address[]" | |
}, | |
{ | |
"internalType": "address", | |
"name": "_admin", | |
"type": "address" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [], | |
"name": "BenefactorNotWhitelisted", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "BeneficiaryNotApproved", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "DelegationNotInitiated", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "GlobalMaxMintPerBlockExceeded", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "GlobalMaxRedeemPerBlockExceeded", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidAddress", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidAdminChange", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidAmount", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidAssetAddress", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidBenefactorAddress", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidBeneficiaryAddress", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidCustodianAddress", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidEIP1271Signature", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidEIP712Signature", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidNonce", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidOrder", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidRoute", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidStablePrice", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidUSDeAddress", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "InvalidZeroAddress", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "MaxMintPerBlockExceeded", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "MaxRedeemPerBlockExceeded", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "NoAssetsProvided", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "NotPendingAdmin", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "SignatureExpired", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "TransferFailed", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "UnknownSignatureType", | |
"type": "error" | |
}, | |
{ | |
"inputs": [], | |
"name": "UnsupportedAsset", | |
"type": "error" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "oldAdmin", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "newAdmin", | |
"type": "address" | |
} | |
], | |
"name": "AdminTransferRequested", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "oldAdmin", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "newAdmin", | |
"type": "address" | |
} | |
], | |
"name": "AdminTransferred", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
} | |
], | |
"name": "AssetAdded", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
} | |
], | |
"name": "AssetRemoved", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
} | |
], | |
"name": "BenefactorAdded", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
} | |
], | |
"name": "BenefactorRemoved", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
} | |
], | |
"name": "BeneficiaryAdded", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
} | |
], | |
"name": "BeneficiaryRemoved", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "custodian", | |
"type": "address" | |
} | |
], | |
"name": "CustodianAddressAdded", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "custodian", | |
"type": "address" | |
} | |
], | |
"name": "CustodianAddressRemoved", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "wallet", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "amount", | |
"type": "uint256" | |
} | |
], | |
"name": "CustodyTransfer", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "signer", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "delegator", | |
"type": "address" | |
} | |
], | |
"name": "DelegatedSignerAdded", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "signer", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "delegator", | |
"type": "address" | |
} | |
], | |
"name": "DelegatedSignerInitiated", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "signer", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "delegator", | |
"type": "address" | |
} | |
], | |
"name": "DelegatedSignerRemoved", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "oldMaxMintPerBlock", | |
"type": "uint256" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "newMaxMintPerBlock", | |
"type": "uint256" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
} | |
], | |
"name": "MaxMintPerBlockChanged", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "oldMaxRedeemPerBlock", | |
"type": "uint256" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "newMaxRedeemPerBlock", | |
"type": "uint256" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
} | |
], | |
"name": "MaxRedeemPerBlockChanged", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "string", | |
"name": "order_id", | |
"type": "string" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "address", | |
"name": "minter", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "address", | |
"name": "collateral_asset", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "collateral_amount", | |
"type": "uint256" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "usde_amount", | |
"type": "uint256" | |
} | |
], | |
"name": "Mint", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": false, | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"name": "Received", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "string", | |
"name": "order_id", | |
"type": "string" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "address", | |
"name": "redeemer", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "address", | |
"name": "collateral_asset", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "collateral_amount", | |
"type": "uint256" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "usde_amount", | |
"type": "uint256" | |
} | |
], | |
"name": "Redeem", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "bytes32", | |
"name": "role", | |
"type": "bytes32" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "bytes32", | |
"name": "previousAdminRole", | |
"type": "bytes32" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "bytes32", | |
"name": "newAdminRole", | |
"type": "bytes32" | |
} | |
], | |
"name": "RoleAdminChanged", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "bytes32", | |
"name": "role", | |
"type": "bytes32" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "account", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "sender", | |
"type": "address" | |
} | |
], | |
"name": "RoleGranted", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "bytes32", | |
"name": "role", | |
"type": "bytes32" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "account", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "sender", | |
"type": "address" | |
} | |
], | |
"name": "RoleRevoked", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "token", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"internalType": "uint256", | |
"name": "tokenType", | |
"type": "uint256" | |
} | |
], | |
"name": "TokenTypeSet", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "USDe", | |
"type": "address" | |
} | |
], | |
"name": "USDeSet", | |
"type": "event" | |
}, | |
{ | |
"inputs": [], | |
"name": "DEFAULT_ADMIN_ROLE", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "acceptAdmin", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "custodian", | |
"type": "address" | |
} | |
], | |
"name": "addCustodianAddress", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "enum IEthenaMinting.TokenType", | |
"name": "tokenType", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "isActive", | |
"type": "bool" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "maxMintPerBlock", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "maxRedeemPerBlock", | |
"type": "uint128" | |
} | |
], | |
"internalType": "struct IEthenaMinting.TokenConfig", | |
"name": "_tokenConfig", | |
"type": "tuple" | |
} | |
], | |
"name": "addSupportedAsset", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
} | |
], | |
"name": "addWhitelistedBenefactor", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "_delegatedBy", | |
"type": "address" | |
} | |
], | |
"name": "confirmDelegatedSigner", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"name": "delegatedSigner", | |
"outputs": [ | |
{ | |
"internalType": "enum IEthenaMinting.DelegatedSignerStatus", | |
"name": "", | |
"type": "uint8" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "disableMintRedeem", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"components": [ | |
{ | |
"internalType": "string", | |
"name": "order_id", | |
"type": "string" | |
}, | |
{ | |
"internalType": "enum IEthenaMinting.OrderType", | |
"name": "order_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "uint120", | |
"name": "expiry", | |
"type": "uint120" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "nonce", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "collateral_asset", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "collateral_amount", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "usde_amount", | |
"type": "uint128" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Order", | |
"name": "order", | |
"type": "tuple" | |
} | |
], | |
"name": "encodeOrder", | |
"outputs": [ | |
{ | |
"internalType": "bytes", | |
"name": "", | |
"type": "bytes" | |
} | |
], | |
"stateMutability": "pure", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "getDomainSeparator", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "role", | |
"type": "bytes32" | |
} | |
], | |
"name": "getRoleAdmin", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "globalConfig", | |
"outputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "globalMaxMintPerBlock", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "globalMaxRedeemPerBlock", | |
"type": "uint128" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "role", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "address", | |
"name": "account", | |
"type": "address" | |
} | |
], | |
"name": "grantRole", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "role", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "address", | |
"name": "account", | |
"type": "address" | |
} | |
], | |
"name": "hasRole", | |
"outputs": [ | |
{ | |
"internalType": "bool", | |
"name": "", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"components": [ | |
{ | |
"internalType": "string", | |
"name": "order_id", | |
"type": "string" | |
}, | |
{ | |
"internalType": "enum IEthenaMinting.OrderType", | |
"name": "order_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "uint120", | |
"name": "expiry", | |
"type": "uint120" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "nonce", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "collateral_asset", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "collateral_amount", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "usde_amount", | |
"type": "uint128" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Order", | |
"name": "order", | |
"type": "tuple" | |
} | |
], | |
"name": "hashOrder", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
} | |
], | |
"name": "isApprovedBeneficiary", | |
"outputs": [ | |
{ | |
"internalType": "bool", | |
"name": "", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "custodian", | |
"type": "address" | |
} | |
], | |
"name": "isCustodianAddress", | |
"outputs": [ | |
{ | |
"internalType": "bool", | |
"name": "", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
} | |
], | |
"name": "isSupportedAsset", | |
"outputs": [ | |
{ | |
"internalType": "bool", | |
"name": "", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
} | |
], | |
"name": "isWhitelistedBenefactor", | |
"outputs": [ | |
{ | |
"internalType": "bool", | |
"name": "", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"components": [ | |
{ | |
"internalType": "string", | |
"name": "order_id", | |
"type": "string" | |
}, | |
{ | |
"internalType": "enum IEthenaMinting.OrderType", | |
"name": "order_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "uint120", | |
"name": "expiry", | |
"type": "uint120" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "nonce", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "collateral_asset", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "collateral_amount", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "usde_amount", | |
"type": "uint128" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Order", | |
"name": "order", | |
"type": "tuple" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "address[]", | |
"name": "addresses", | |
"type": "address[]" | |
}, | |
{ | |
"internalType": "uint128[]", | |
"name": "ratios", | |
"type": "uint128[]" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Route", | |
"name": "route", | |
"type": "tuple" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "enum IEthenaMinting.SignatureType", | |
"name": "signature_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "bytes", | |
"name": "signature_bytes", | |
"type": "bytes" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Signature", | |
"name": "signature", | |
"type": "tuple" | |
} | |
], | |
"name": "mint", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"components": [ | |
{ | |
"internalType": "string", | |
"name": "order_id", | |
"type": "string" | |
}, | |
{ | |
"internalType": "enum IEthenaMinting.OrderType", | |
"name": "order_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "uint120", | |
"name": "expiry", | |
"type": "uint120" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "nonce", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "collateral_asset", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "collateral_amount", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "usde_amount", | |
"type": "uint128" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Order", | |
"name": "order", | |
"type": "tuple" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "address[]", | |
"name": "addresses", | |
"type": "address[]" | |
}, | |
{ | |
"internalType": "uint128[]", | |
"name": "ratios", | |
"type": "uint128[]" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Route", | |
"name": "route", | |
"type": "tuple" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "enum IEthenaMinting.SignatureType", | |
"name": "signature_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "bytes", | |
"name": "signature_bytes", | |
"type": "bytes" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Signature", | |
"name": "signature", | |
"type": "tuple" | |
} | |
], | |
"name": "mintWETH", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "owner", | |
"outputs": [ | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"components": [ | |
{ | |
"internalType": "string", | |
"name": "order_id", | |
"type": "string" | |
}, | |
{ | |
"internalType": "enum IEthenaMinting.OrderType", | |
"name": "order_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "uint120", | |
"name": "expiry", | |
"type": "uint120" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "nonce", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "collateral_asset", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "collateral_amount", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "usde_amount", | |
"type": "uint128" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Order", | |
"name": "order", | |
"type": "tuple" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "enum IEthenaMinting.SignatureType", | |
"name": "signature_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "bytes", | |
"name": "signature_bytes", | |
"type": "bytes" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Signature", | |
"name": "signature", | |
"type": "tuple" | |
} | |
], | |
"name": "redeem", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "collateralManager", | |
"type": "address" | |
} | |
], | |
"name": "removeCollateralManagerRole", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "custodian", | |
"type": "address" | |
} | |
], | |
"name": "removeCustodianAddress", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "_removedSigner", | |
"type": "address" | |
} | |
], | |
"name": "removeDelegatedSigner", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "minter", | |
"type": "address" | |
} | |
], | |
"name": "removeMinterRole", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "redeemer", | |
"type": "address" | |
} | |
], | |
"name": "removeRedeemerRole", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
} | |
], | |
"name": "removeSupportedAsset", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
} | |
], | |
"name": "removeWhitelistedBenefactor", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "role", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "address", | |
"name": "account", | |
"type": "address" | |
} | |
], | |
"name": "renounceRole", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "role", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "address", | |
"name": "account", | |
"type": "address" | |
} | |
], | |
"name": "revokeRole", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "status", | |
"type": "bool" | |
} | |
], | |
"name": "setApprovedBeneficiary", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "_delegateTo", | |
"type": "address" | |
} | |
], | |
"name": "setDelegatedSigner", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "_globalMaxMintPerBlock", | |
"type": "uint128" | |
} | |
], | |
"name": "setGlobalMaxMintPerBlock", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "_globalMaxRedeemPerBlock", | |
"type": "uint128" | |
} | |
], | |
"name": "setGlobalMaxRedeemPerBlock", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "_maxMintPerBlock", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
} | |
], | |
"name": "setMaxMintPerBlock", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "_maxRedeemPerBlock", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
} | |
], | |
"name": "setMaxRedeemPerBlock", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "_stablesDeltaLimit", | |
"type": "uint128" | |
} | |
], | |
"name": "setStablesDeltaLimit", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
}, | |
{ | |
"internalType": "enum IEthenaMinting.TokenType", | |
"name": "tokenType", | |
"type": "uint8" | |
} | |
], | |
"name": "setTokenType", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "stablesDeltaLimit", | |
"outputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "", | |
"type": "uint128" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes4", | |
"name": "interfaceId", | |
"type": "bytes4" | |
} | |
], | |
"name": "supportsInterface", | |
"outputs": [ | |
{ | |
"internalType": "bool", | |
"name": "", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"name": "tokenConfig", | |
"outputs": [ | |
{ | |
"internalType": "enum IEthenaMinting.TokenType", | |
"name": "tokenType", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "bool", | |
"name": "isActive", | |
"type": "bool" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "maxMintPerBlock", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "maxRedeemPerBlock", | |
"type": "uint128" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"name": "totalPerBlock", | |
"outputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "mintedPerBlock", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "redeemedPerBlock", | |
"type": "uint128" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"name": "totalPerBlockPerAsset", | |
"outputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "mintedPerBlock", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "redeemedPerBlock", | |
"type": "uint128" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "newAdmin", | |
"type": "address" | |
} | |
], | |
"name": "transferAdmin", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "wallet", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "asset", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "amount", | |
"type": "uint128" | |
} | |
], | |
"name": "transferToCustody", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "usde", | |
"outputs": [ | |
{ | |
"internalType": "contract IUSDe", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "sender", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "nonce", | |
"type": "uint128" | |
} | |
], | |
"name": "verifyNonce", | |
"outputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"components": [ | |
{ | |
"internalType": "string", | |
"name": "order_id", | |
"type": "string" | |
}, | |
{ | |
"internalType": "enum IEthenaMinting.OrderType", | |
"name": "order_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "uint120", | |
"name": "expiry", | |
"type": "uint120" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "nonce", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "address", | |
"name": "benefactor", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "beneficiary", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "collateral_asset", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "collateral_amount", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "usde_amount", | |
"type": "uint128" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Order", | |
"name": "order", | |
"type": "tuple" | |
}, | |
{ | |
"components": [ | |
{ | |
"internalType": "enum IEthenaMinting.SignatureType", | |
"name": "signature_type", | |
"type": "uint8" | |
}, | |
{ | |
"internalType": "bytes", | |
"name": "signature_bytes", | |
"type": "bytes" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Signature", | |
"name": "signature", | |
"type": "tuple" | |
} | |
], | |
"name": "verifyOrder", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "taker_order_hash", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"components": [ | |
{ | |
"internalType": "address[]", | |
"name": "addresses", | |
"type": "address[]" | |
}, | |
{ | |
"internalType": "uint128[]", | |
"name": "ratios", | |
"type": "uint128[]" | |
} | |
], | |
"internalType": "struct IEthenaMinting.Route", | |
"name": "route", | |
"type": "tuple" | |
} | |
], | |
"name": "verifyRoute", | |
"outputs": [ | |
{ | |
"internalType": "bool", | |
"name": "", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint128", | |
"name": "collateralAmount", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "uint128", | |
"name": "usdeAmount", | |
"type": "uint128" | |
}, | |
{ | |
"internalType": "address", | |
"name": "collateralAsset", | |
"type": "address" | |
}, | |
{ | |
"internalType": "enum IEthenaMinting.OrderType", | |
"name": "orderType", | |
"type": "uint8" | |
} | |
], | |
"name": "verifyStablesLimit", | |
"outputs": [ | |
{ | |
"internalType": "bool", | |
"name": "", | |
"type": "bool" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"stateMutability": "payable", | |
"type": "receive" | |
} | |
] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment