@mstable/protocol
Version:
mStable Contracts
568 lines (567 loc) • 10.8 kB
JSON
[
{
"inputs": [
{
"internalType": "address",
"name": "_nexus",
"type": "address"
},
{
"internalType": "address[]",
"name": "_mAssets",
"type": "address[]"
},
{
"internalType": "address[]",
"name": "_savingsContracts",
"type": "address[]"
},
{
"internalType": "address[]",
"name": "_revenueRecipients",
"type": "address[]"
},
{
"internalType": "uint256",
"name": "_savingsRate",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_duration",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "mAsset",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "interest",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newTotalSupply",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "apy",
"type": "uint256"
}
],
"name": "InterestCollected",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "mAsset",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amountSent",
"type": "uint256"
}
],
"name": "InterestDistributed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "mAsset",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "LiquidatorDeposited",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "Paused",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "mAsset",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "recipient",
"type": "address"
}
],
"name": "RevenueRecipientSet",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "mAsset",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "recipient",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "RevenueRedistributed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "mAsset",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "savingsContract",
"type": "address"
}
],
"name": "SavingsContractAdded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "mAsset",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "savingsContract",
"type": "address"
}
],
"name": "SavingsContractUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "newSavingsRate",
"type": "uint256"
}
],
"name": "SavingsRateChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "StreamsFrozen",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "Unpaused",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_savingsContract",
"type": "address"
}
],
"name": "addSavingsContract",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
}
],
"name": "collectAndDistributeInterest",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
}
],
"name": "collectAndStreamInterest",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "uint256",
"name": "_liquidated",
"type": "uint256"
}
],
"name": "depositLiquidation",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
}
],
"name": "distributeUnallocatedInterest",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "freezeStreams",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "lastBatchCollected",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "lastCollection",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "lastPeriodStart",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "liqStream",
"outputs": [
{
"internalType": "uint256",
"name": "end",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "rate",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "nexus",
"outputs": [
{
"internalType": "contract INexus",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "pause",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "paused",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "periodYield",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "revenueRecipients",
"outputs": [
{
"internalType": "contract IRevenueRecipient",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "savingsContracts",
"outputs": [
{
"internalType": "contract ISavingsContractV2",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_recipient",
"type": "address"
}
],
"name": "setRevenueRecipient",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_savingsRate",
"type": "uint256"
}
],
"name": "setSavingsRate",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "unpause",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_mAsset",
"type": "address"
},
{
"internalType": "address",
"name": "_savingsContract",
"type": "address"
}
],
"name": "updateSavingsContract",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "yieldStream",
"outputs": [
{
"internalType": "uint256",
"name": "end",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "rate",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
]