UNPKG

@verified-network/verified-sdk

Version:

An SDK to develop applications on the Verified Network

937 lines 5.33 MB
{ "contractName": "Liquidity", "abi": [ { "inputs": [ { "internalType": "uint256", "name": "_cap", "type": "uint256" }, { "internalType": "uint256", "name": "_limit", "type": "uint256" }, { "internalType": "uint256", "name": "_share", "type": "uint256" }, { "internalType": "address", "name": "_vitta", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "platform", "type": "address" }, { "indexed": true, "internalType": "address", "name": "investor", "type": "address" }, { "indexed": false, "internalType": "address", "name": "vitta", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "prorataStake", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } ], "name": "InvestorReturns", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "investor", "type": "address" }, { "indexed": false, "internalType": "address", "name": "token", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "tokenAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "LPToIssue", "type": "uint256" } ], "name": "IssuedVitta", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "platform", "type": "address" }, { "indexed": true, "internalType": "address", "name": "manager", "type": "address" }, { "indexed": false, "internalType": "address", "name": "token", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "distribution", "type": "uint256" } ], "name": "ManagerReturns", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "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": "platform", "type": "address" }, { "indexed": false, "internalType": "address", "name": "manager", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "LPToken", "type": "uint256" }, { "indexed": false, "internalType": "address", "name": "token", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "tokenAmount", "type": "uint256" } ], "name": "PlatformLiquidity", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "platform", "type": "address" }, { "indexed": false, "internalType": "address", "name": "manager", "type": "address" } ], "name": "PlatformManagers", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "platform", "type": "address" }, { "indexed": false, "internalType": "address", "name": "vitta", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "distribution", "type": "uint256" } ], "name": "PlatformReturns", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "platform", "type": "address" }, { "indexed": false, "internalType": "bytes32", "name": "platformName", "type": "bytes32" } ], "name": "RegisterPlatform", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "investor", "type": "address" }, { "indexed": false, "internalType": "address", "name": "token", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "tokenAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "timestamp", "type": "uint256" } ], "name": "RequestIssue", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "token", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "RequestRate", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "token", "type": "address" }, { "indexed": false, "internalType": "string", "name": "tokenName", "type": "string" } ], "name": "SupportToken", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Unpaused", "type": "event" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive", "payable": true }, { "inputs": [ { "internalType": "uint256", "name": "_cap", "type": "uint256" }, { "internalType": "uint256", "name": "_limit", "type": "uint256" } ], "name": "createSupply", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "string", "name": "_name", "type": "string" } ], "name": "supportTokens", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" } ], "name": "checkSupportForToken", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [], "name": "getSupportedTokens", "outputs": [ { "components": [ { "internalType": "string", "name": "tokenName", "type": "string" }, { "internalType": "address", "name": "tokenAddress", "type": "address" } ], "internalType": "struct ILiquidity.token[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" } ], "name": "removeToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_liquidityPlatform", "type": "address" }, { "internalType": "bytes32", "name": "_platformName", "type": "bytes32" } ], "name": "registerPlatform", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getPlatforms", "outputs": [ { "components": [ { "internalType": "bytes32", "name": "platformName", "type": "bytes32" }, { "internalType": "address", "name": "platformAddress", "type": "address" } ], "internalType": "struct ILiquidity.platform[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [ { "internalType": "address", "name": "_platform", "type": "address" }, { "internalType": "address", "name": "_manager", "type": "address" } ], "name": "addManager", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_platform", "type": "address" }, { "internalType": "address", "name": "_manager", "type": "address" } ], "name": "removeManager", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_platform", "type": "address" } ], "name": "getManagers", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "buy", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getInvestors", "outputs": [ { "components": [ { "internalType": "string", "name": "assetInvested", "type": "string" }, { "internalType": "address", "name": "investorAddress", "type": "address" } ], "internalType": "struct ILiquidity.provider[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [ { "internalType": "address", "name": "_investor", "type": "address" }, { "internalType": "address", "name": "_token", "type": "address" } ], "name": "getInvestment", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [ { "internalType": "address", "name": "_investor", "type": "address" }, { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "uint256", "name": "_tokenAmount", "type": "uint256" }, { "internalType": "uint256", "name": "_LPToIssue", "type": "uint256" } ], "name": "issue", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_platform", "type": "address" }, { "internalType": "address", "name": "_manager", "type": "address" }, { "internalType": "uint256", "name": "_liquidity", "type": "uint256" }, { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "uint256", "name": "_tokenAmount", "type": "uint256" } ], "name": "provideLiquidity", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_distribution", "type": "uint256" }, { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "address", "name": "_manager", "type": "address" } ], "name": "distribute", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_platform", "type": "address" } ], "name": "getPlatformPerformance", "outputs": [ { "internalType": "uint256", "name": "platformLiquidityProvided", "type": "uint256" }, { "internalType": "uint256", "name": "platformCommissionsEarned", "type": "uint256" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [ { "internalType": "address", "name": "_platform", "type": "address" }, { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "address", "name": "_manager", "type": "address" } ], "name": "getManagerPerformance", "outputs": [ { "internalType": "uint256", "name": "managerLiquidityProvided", "type": "uint256" }, { "internalType": "uint256", "name": "managerCommissionsEarned", "type": "uint256" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [ { "internalType": "uint256", "name": "_distribution", "type": "uint256" }, { "internalType": "address", "name": "_platform", "type": "address" } ], "name": "payOut", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "investor", "type": "address" } ], "name": "balance", "outputs": [ { "internalType": "uint256", "name": "investorBalance", "type": "uint256" } ], "stateMutability": "view", "type": "function", "constant": true }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_oracle", "type": "address" } ], "name": "setOracle", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "rate", "type": "uint256" } ], "name": "setExchangeRate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_treasurer", "type": "address" } ], "name": "setTreasurer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_share", "type": "uint256" } ], "name": "setLiquidityShare", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "metadata": "{\"compiler\":{\"version\":\"0.8.0+commit.c7dfd78e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_cap\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_limit\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_share\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_vitta\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"platform\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"investor\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"vitta\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"prorataStake\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"InvestorReturns\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"investor\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokenAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"LPToIssue\",\"type\":\"uint256\"}],\"name\":\"IssuedVitta\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"platform\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"manager\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"distribution\",\"type\":\"uint256\"}],\"name\":\"ManagerReturns\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"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\":\"platform\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"manager\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"LPToken\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokenAmount\",\"type\":\"uint256\"}],\"name\":\"PlatformLiquidity\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"platform\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"manager\",\"type\":\"address\"}],\"name\":\"PlatformManagers\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"platform\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"vitta\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"distribution\",\"type\":\"uint256\"}],\"name\":\"PlatformReturns\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"platform\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"platformName\",\"type\":\"bytes32\"}],\"name\":\"RegisterPlatform\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"investor\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokenAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"RequestIssue\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"RequestRate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"tokenName\",\"type\":\"string\"}],\"name\":\"SupportToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"Unpaused\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_platform\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_manager\",\"type\":\"address\"}],\"name\":\"addManager\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"investor\",\"type\":\"address\"}],\"name\":\"balance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"investorBalance\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"buy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"checkSupportForToken\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_cap\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_limit\",\"type\":\"uint256\"}],\"name\":\"createSupply\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_distribution\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_manager\",\"type\":\"address\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_investor\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"getInvestment\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getInvestors\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"assetInvested\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"investorAddress\",\"type\":\"address\"}],\"internalType\":\"struct ILiquidity.provider[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_platform\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_manager\",\"type\":\"address\"}],\"name\":\"getManagerPerformance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"managerLiquidityProvided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"managerCommissionsEarned\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_platform\",\"type\":\"address\"}],\"name\":\"getManagers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_platform\",\"type\":\"address\"}],\"name\":\"getPlatformPerformance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"platformLiquidityProvided\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"platformCommissionsEarned\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPlatforms\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"platformName\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"platformAddress\",\"type\":\"address\"}],\"internalType\":\"struct ILiquidity.platform[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getSupportedTokens\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"tokenName\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"tokenAddress\",\"type\":\"address\"}],\"internalType\":\"struct ILiquidity.token[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_investor\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_tokenAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_LPToIssue\",\"type\":\"uint256\"}],\"name\":\"issue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"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\":\"uint256\",\"name\":\"_distribution\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_platform\",\"type\":\"address\"}],\"name\":\"payOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_platform\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_manager\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_liquidity\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_tokenAmount\",\"type\":\"uint256\"}],\"name\":\"provideLiquidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_liquidityPlatform\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"_platformName\",\"type\":\"bytes32\"}],\"name\":\"registerPlatform\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_platform\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_manager\",\"type\":\"address\"}],\"name\":\"removeManager\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"removeToken\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"rate\",\"type\":\"uint256\"}],\"name\":\"setExchangeRate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_share\",\"type\":\"uint256\"}],\"name\":\"setLiquidityShare\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_oracle\",\"type\":\"address\"}],\"name\":\"setOracle\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_treasurer\",\"type\":\"address\"}],\"name\":\"setTreasurer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"}],\"name\":\"supportTokens\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unpause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"addManager(address,address)\":{\"params\":{\"_manager\":\"address of asset manager\",\"_platform\":\"address of market making platform (eg, Balancer)\"}},\"buy(address,uint256)\":{\"params\":{\"_amount\":\"amount of token that is transferred from investor to this VITTA issuing contract's account for the investor\",\"_token\":\"address of token used by investor to buy the VITTA\"}},\"checkSupportForToken(address)\":{\"params\":{\"_token\":\"token that is supported for investment\"}},\"constructor\":{\"params\":{\"_cap\":\"investment limit for each investor\",\"_limit\":\"time limit for issue close\",\"_vitta\":\"address of Verified liquidity token\"}},\"createSupply(uint256,uint256)\":{\"params\":{\"_cap\":\"investment limit for each investor\",\"_limit\":\"time limit for issue close \"}},\"distribute(uint256,address,address)\":{\"params\":{\"_distribution\":\"amount of VITTA to mint and distribute pro rata to liquidity providers\",\"_manager\":\"address of asset manager earning the paid out return on investment \",\"_token\":\"address of token in which distribution is made by market maker \"}},\"getInvestment(address,address)\":{\"params\":{\"_investor\":\"address of investor\",\"_token\":\"address of token invested by investor\"}},\"getManagerPerformance(address,address,address)\":{\"params\":{\"_manager\":\"address of asset manager on platform\",\"_platform\":\"address of platform\",\"_token\":\"address of token\"}},\"getManagers(address)\":{\"params\":{\"_platform\":\"address of market making platform\"}},\"getPlatformPerformance(address)\":{\"params\":{\"_platform\":\"address of market making platform\"}},\"issue(address,address,uint256,uint256)\":{\"params\":{\"_LPToIssue\":\"amount of VITTA to issue to investor \",\"_investor\":\"address of investor\",\"_token\":\"address of token invested in VITTA\",\"_tokenAmount\":\"amount of token invested in VITTA\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"paused()\":{\"details\":\"Returns true if the contract is paused, and false otherwise.\"},\"payOut(uint256,address)\":{\"params\":{\"_distribution\":\"amount of VITTA to mint and distribute pro rata to liquidity providers \",\"_platform\":\"address of platform on which commission is earned based on which distribution is made\"}},\"provideLiquidity(address,address,uint256,address,uint256)\":{\"params\":{\"_liquidity\":\"amount of VITTA tokens to allot to an asset manager\",\"_manager\":\"address of asset manager to whom liquidity has to be provided\",\"_platform\":\"address of platform on which liquidity has to be provided\",\"_token\":\"address of token allotted to asset manager\",\"_tokenAmount\":\"amount of token allotted to asset manager\"}},\"registerPlatform(address,bytes32)\":{\"params\":{\"_liquidityPlatform\":\"address of the market making platform\",\"_platformName\":\"name of market making platform\"}},\"removeManager(address,address)\":{\"params\":{\"_manager\":\"address of asset manager\",\"_platform\":\"address of market making platform\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"supportTokens(address,string)\":{\"params\":{\"_name\":\"name of token supported\",\"_token\":\"address of token supported\"}},\"transfer(address,address,uint256)\":{\"params\":{\"amount\":\"amount of vitta transferred\",\"recipient\":\"transferee of vitta\",\"sender\":\"transferor of Vitta\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"addManager(address,address)\":{\"notice\":\"Adds asset manager for managing liquidity\"},\"buy(address,uint256)\":{\"notice\":\"Used by external apps (eg, exchange, wallet) to buy Verified Liquidity token \"},\"checkSupportForToken(address)\":{\"notice\":\"Checks if a specified token is supported for investing in the Verified Liquidity token\"},\"constructor\":{\"notice\":\"Constructor for the Verified Liquidity manager\"},\"createSupply(uint256,uint256)\":{\"notice\":\"Updates investment and time limits for Verified Liquidity token after initial issue with constructor defined parameters\"},\"distribute(uint256,address,address)\":{\"notice\":\"Pay out of income by Market maker contracts to VITTA Liquidity providers\"},\"getInvestment(address,address)\":{\"notice\":\"Fetches investment detail for specific investor in VITTA\"},\"getInvestors()\":{\"notice\":\"Fetches investors in VITTA\"},\"getManagerPerformance(address,address,address)\":{\"notice\":\"Fetches performance of asset managers\"},\"getManagers(address)\":{\"notice\":\"Gets asset managers for managing liquidity\"},\"getPlatformPerformance(address)\":{\"notice\":\"Fetches performance of market platform platform\"},\"getPlatforms()\":{\"notice\":\"Gets list of registered platforms\"},\"getSupportedTokens()\":{\"notice\":\"Returns list of supported tokens\"},\"issue(address,address,uint256,uint256)\":{\"notice\":\"Used by admin to issue VITTA to investors or refund paid in tokens to investors if investment cap is breached\"},\"pause()\":{\"notice\":\"Pauses this contract\"},\"payOut(uint256,address)\":{\"notice\":\"Pay out income to VITTA Liquidity providers\"},\"provideLiquidity(address,address,uint256,address,uint256)\":{\"notice\":\"Provides staked VITTA to asset managers based on prior liquidity consumed and commission earned \"},\"registerPlatform(address,bytes32)\":{\"notice\":\"Registers a liquidity platform (eg, DEX) where Verified Liquidity tokens can be used to underwrite investments\"},\"removeManager(address,address)\":{\"notice\":\"Removes asset manager for managing liquidity on platform\"},\"removeToken(address)\":{\"notice\":\"Removes a supported token\"},\"supportTokens(address,string)\":{\"notice\":\"Specifies list of supported tokens that can be invested in the Verified Liquidity token\"},\"transfer(address,address,uint256)\":{\"notice\":\"Adjust stakes for every transfer of Vitta\"},\"unpause()\":{\"notice\":\"Unpauses this contract\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Liquidity.sol\":\"Liquidity\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0x6bb804a310218875e89d12c053e94a13a4607cdf7cc2052f3e52bd32a0dc50a1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b2ebbbe6d0011175bd9e7268b83de3f9c2f9d8d4cbfbaef12aff977d7d727163\",\"dweb:/ipfs/Qmd5c7Vxtis9wzkDNhxwc6A2QT5H9xn9kfjhx7qx44vpro\"]},\"@openzeppelin/contracts/security/Pausable.sol\":{\"keccak256\":\"0xa35b1f2a670cd2a701a52c398032c9fed72df1909fe394d77ceacbf074e8937b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72b957861691ebdaa78c52834465c4f8296480fe4f1a12ba72dc6c0c8ac076dd\",\"dweb:/ipfs/QmVz1sHCwgEivHPRDswdt9tdvky7EnWqFmbuk1wFE55VMG\"]},\"@openzeppelin/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xf0a4351c95ac31eff95e701b66558a49f9893c4af30eead285db0eb8ee277b6d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e5a06c1bf98b9de02e2aaed77936ed5cf5fbf4c6f3decbd82a7b7de3608914d3\",\"dweb:/ipfs/QmTJuQxe5NBpCvqzp2HsZyzEwm7hvmjanczvhGZM9tSoVU\"]},\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x027b891937d20ccf213fdb9c31531574256de774bda99d3a70ecef6e1913ed2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://087318b21c528119f649899f5b5580566dd8d7b0303d4904bd0e8580c3545f14\",\"dweb:/ipfs/Qmbn5Mj7aUn8hJuQ8VrQjjEXRsXyJKykgnjR9p4C3nfLtL\"]},\"@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x83fe24f5c04a56091e50f4a345ff504c8bff658a76d4c43b16878c8f940c53b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d4c3df1a7ca104b633a7d81c6c6f5192367d150cd5a32cba81f7f27012729013\",\"dweb:/ipfs/QmSim72e3ZVsfgZt8UceCvbiSuMRHR6WDsiamqNzZahGSY\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0x90565a39ae45c80f0468dc96c7b20d0afc3055f344c8203a0c9258239f350b9f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26e8b38a7ac8e7b4463af00cf7fff1bf48ae9875765bf4f7751e100124d0bc8c\",\"dweb:/ipfs/QmWcsmkVr24xmmjfnBQZoemFniXjj3vwT78Cz6uqZW1Hux\"]},\"@openzeppelin/contracts/utils/math/SafeMath.sol\":{\"keccak256\":\"0x8666f020bd8fc9dc14f07e2ebc52b5f236ab4cdde7c77679b08cb2f94730043b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://163776cbf565c722232393aa2d62cbe8a2ffb5805986abf4906c00e1e07450a6\",\"dweb:/ipfs/QmPZoN9T3cb6o8bGhjBPZcz7im8T8DWhpr3tjLwhJJHx9N\"]},\"project:/contracts/Liquidity.sol\":{\"keccak256\":\"0xf3ed421960e2e89572e1b6111b5419822ad2b9feb26aeb6f5d2a5747eefa39fb\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://8b2d6242dc2a4cd4426ceb63e92a98