@mstable/protocol
Version:
mStable Contracts
489 lines (488 loc) • 9.78 kB
JSON
[
{
"inputs": [
{
"internalType": "address",
"name": "_nexus",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "_tokens",
"type": "address[]"
},
{
"internalType": "address",
"name": "_spender",
"type": "address"
}
],
"name": "approve",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_token",
"type": "address"
},
{
"internalType": "address",
"name": "_spender",
"type": "address"
}
],
"name": "approve",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address[]",
"name": "_bAssets",
"type": "address[]"
},
{
"internalType": "address[]",
"name": "_fPools",
"type": "address[]"
},
{
"internalType": "address[]",
"name": "_fAssets",
"type": "address[]"
},
{
"internalType": "address",
"name": "_save",
"type": "address"
},
{
"internalType": "address",
"name": "_vault",
"type": "address"
}
],
"name": "approve",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_uniswap",
"type": "address"
},
{
"internalType": "uint256",
"name": "_ethAmount",
"type": "uint256"
},
{
"internalType": "address[]",
"name": "_path",
"type": "address[]"
}
],
"name": "estimate_saveViaUniswapETH",
"outputs": [
{
"internalType": "uint256",
"name": "out",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "nexus",
"outputs": [
{
"internalType": "contract INexus",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_save",
"type": "address"
},
{
"internalType": "address",
"name": "_vault",
"type": "address"
},
{
"internalType": "uint256",
"name": "_amount",
"type": "uint256"
}
],
"name": "saveAndStake",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_save",
"type": "address"
},
{
"internalType": "address",
"name": "_vault",
"type": "address"
},
{
"internalType": "uint256",
"name": "_amount",
"type": "uint256"
},
{
"internalType": "address",
"name": "_referrer",
"type": "address"
}
],
"name": "saveAndStake",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_save",
"type": "address"
},
{
"internalType": "address",
"name": "_vault",
"type": "address"
},
{
"internalType": "address",
"name": "_bAsset",
"type": "address"
},
{
"internalType": "uint256",
"name": "_amount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_minOut",
"type": "uint256"
},
{
"internalType": "bool",
"name": "_stake",
"type": "bool"
}
],
"name": "saveViaMint",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_save",
"type": "address"
},
{
"internalType": "address",
"name": "_vault",
"type": "address"
},
{
"internalType": "address",
"name": "_bAsset",
"type": "address"
},
{
"internalType": "uint256",
"name": "_amount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_minOut",
"type": "uint256"
},
{
"internalType": "bool",
"name": "_stake",
"type": "bool"
},
{
"internalType": "address",
"name": "_referrer",
"type": "address"
}
],
"name": "saveViaMint",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_save",
"type": "address"
},
{
"internalType": "address",
"name": "_vault",
"type": "address"
},
{
"internalType": "address",
"name": "_feeder",
"type": "address"
},
{
"internalType": "address",
"name": "_fAsset",
"type": "address"
},
{
"internalType": "uint256",
"name": "_fAssetQuantity",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_minOutputQuantity",
"type": "uint256"
},
{
"internalType": "bool",
"name": "_stake",
"type": "bool"
},
{
"internalType": "address",
"name": "_referrer",
"type": "address"
}
],
"name": "saveViaSwap",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_save",
"type": "address"
},
{
"internalType": "address",
"name": "_vault",
"type": "address"
},
{
"internalType": "address",
"name": "_feeder",
"type": "address"
},
{
"internalType": "address",
"name": "_fAsset",
"type": "address"
},
{
"internalType": "uint256",
"name": "_fAssetQuantity",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_minOutputQuantity",
"type": "uint256"
},
{
"internalType": "bool",
"name": "_stake",
"type": "bool"
}
],
"name": "saveViaSwap",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_save",
"type": "address"
},
{
"internalType": "address",
"name": "_vault",
"type": "address"
},
{
"internalType": "address",
"name": "_uniswap",
"type": "address"
},
{
"internalType": "uint256",
"name": "_amountOutMin",
"type": "uint256"
},
{
"internalType": "address[]",
"name": "_path",
"type": "address[]"
},
{
"internalType": "uint256",
"name": "_minOutMStable",
"type": "uint256"
},
{
"internalType": "bool",
"name": "_stake",
"type": "bool"
},
{
"internalType": "address",
"name": "_referrer",
"type": "address"
}
],
"name": "saveViaUniswapETH",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_save",
"type": "address"
},
{
"internalType": "address",
"name": "_vault",
"type": "address"
},
{
"internalType": "address",
"name": "_uniswap",
"type": "address"
},
{
"internalType": "uint256",
"name": "_amountOutMin",
"type": "uint256"
},
{
"internalType": "address[]",
"name": "_path",
"type": "address[]"
},
{
"internalType": "uint256",
"name": "_minOutMStable",
"type": "uint256"
},
{
"internalType": "bool",
"name": "_stake",
"type": "bool"
}
],
"name": "saveViaUniswapETH",
"outputs": [],
"stateMutability": "payable",
"type": "function"
}
]