UNPKG

@mstable/protocol

Version:
513 lines (512 loc) 11.7 kB
[ { "inputs": [ { "components": [ { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint128", "name": "vaultBalance", "type": "uint128" } ], "internalType": "struct BassetData[]", "name": "_bAssets", "type": "tuple[]" }, { "internalType": "uint8", "name": "_i", "type": "uint8" }, { "internalType": "uint256", "name": "_rawInput", "type": "uint256" }, { "components": [ { "internalType": "uint256", "name": "supply", "type": "uint256" }, { "internalType": "uint256", "name": "a", "type": "uint256" }, { "components": [ { "internalType": "uint128", "name": "min", "type": "uint128" }, { "internalType": "uint128", "name": "max", "type": "uint128" } ], "internalType": "struct WeightLimits", "name": "limits", "type": "tuple" }, { "internalType": "uint256", "name": "recolFee", "type": "uint256" } ], "internalType": "struct InvariantConfig", "name": "_config", "type": "tuple" } ], "name": "computeMint", "outputs": [ { "internalType": "uint256", "name": "mintAmount", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint128", "name": "vaultBalance", "type": "uint128" } ], "internalType": "struct BassetData[]", "name": "_bAssets", "type": "tuple[]" }, { "internalType": "uint8[]", "name": "_indices", "type": "uint8[]" }, { "internalType": "uint256[]", "name": "_rawInputs", "type": "uint256[]" }, { "components": [ { "internalType": "uint256", "name": "supply", "type": "uint256" }, { "internalType": "uint256", "name": "a", "type": "uint256" }, { "components": [ { "internalType": "uint128", "name": "min", "type": "uint128" }, { "internalType": "uint128", "name": "max", "type": "uint128" } ], "internalType": "struct WeightLimits", "name": "limits", "type": "tuple" }, { "internalType": "uint256", "name": "recolFee", "type": "uint256" } ], "internalType": "struct InvariantConfig", "name": "_config", "type": "tuple" } ], "name": "computeMintMulti", "outputs": [ { "internalType": "uint256", "name": "mintAmount", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint128", "name": "vaultBalance", "type": "uint128" } ], "internalType": "struct BassetData[]", "name": "_bAssets", "type": "tuple[]" }, { "components": [ { "internalType": "uint256", "name": "supply", "type": "uint256" }, { "internalType": "uint256", "name": "a", "type": "uint256" }, { "components": [ { "internalType": "uint128", "name": "min", "type": "uint128" }, { "internalType": "uint128", "name": "max", "type": "uint128" } ], "internalType": "struct WeightLimits", "name": "limits", "type": "tuple" }, { "internalType": "uint256", "name": "recolFee", "type": "uint256" } ], "internalType": "struct InvariantConfig", "name": "_config", "type": "tuple" } ], "name": "computePrice", "outputs": [ { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "uint256", "name": "k", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint128", "name": "vaultBalance", "type": "uint128" } ], "internalType": "struct BassetData[]", "name": "_bAssets", "type": "tuple[]" }, { "internalType": "uint8", "name": "_o", "type": "uint8" }, { "internalType": "uint256", "name": "_grossMassetQuantity", "type": "uint256" }, { "components": [ { "internalType": "uint256", "name": "supply", "type": "uint256" }, { "internalType": "uint256", "name": "a", "type": "uint256" }, { "components": [ { "internalType": "uint128", "name": "min", "type": "uint128" }, { "internalType": "uint128", "name": "max", "type": "uint128" } ], "internalType": "struct WeightLimits", "name": "limits", "type": "tuple" }, { "internalType": "uint256", "name": "recolFee", "type": "uint256" } ], "internalType": "struct InvariantConfig", "name": "_config", "type": "tuple" }, { "internalType": "uint256", "name": "_feeRate", "type": "uint256" } ], "name": "computeRedeem", "outputs": [ { "internalType": "uint256", "name": "rawOutputUnits", "type": "uint256" }, { "internalType": "uint256", "name": "scaledFee", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint128", "name": "vaultBalance", "type": "uint128" } ], "internalType": "struct BassetData[]", "name": "_bAssets", "type": "tuple[]" }, { "internalType": "uint8[]", "name": "_indices", "type": "uint8[]" }, { "internalType": "uint256[]", "name": "_rawOutputs", "type": "uint256[]" }, { "components": [ { "internalType": "uint256", "name": "supply", "type": "uint256" }, { "internalType": "uint256", "name": "a", "type": "uint256" }, { "components": [ { "internalType": "uint128", "name": "min", "type": "uint128" }, { "internalType": "uint128", "name": "max", "type": "uint128" } ], "internalType": "struct WeightLimits", "name": "limits", "type": "tuple" }, { "internalType": "uint256", "name": "recolFee", "type": "uint256" } ], "internalType": "struct InvariantConfig", "name": "_config", "type": "tuple" }, { "internalType": "uint256", "name": "_feeRate", "type": "uint256" } ], "name": "computeRedeemExact", "outputs": [ { "internalType": "uint256", "name": "grossMasset", "type": "uint256" }, { "internalType": "uint256", "name": "fee", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint128", "name": "vaultBalance", "type": "uint128" } ], "internalType": "struct BassetData[]", "name": "_bAssets", "type": "tuple[]" }, { "internalType": "uint8", "name": "_i", "type": "uint8" }, { "internalType": "uint8", "name": "_o", "type": "uint8" }, { "internalType": "uint256", "name": "_rawInput", "type": "uint256" }, { "internalType": "uint256", "name": "_feeRate", "type": "uint256" }, { "components": [ { "internalType": "uint256", "name": "supply", "type": "uint256" }, { "internalType": "uint256", "name": "a", "type": "uint256" }, { "components": [ { "internalType": "uint128", "name": "min", "type": "uint128" }, { "internalType": "uint128", "name": "max", "type": "uint128" } ], "internalType": "struct WeightLimits", "name": "limits", "type": "tuple" }, { "internalType": "uint256", "name": "recolFee", "type": "uint256" } ], "internalType": "struct InvariantConfig", "name": "_config", "type": "tuple" } ], "name": "computeSwap", "outputs": [ { "internalType": "uint256", "name": "bAssetOutputQuantity", "type": "uint256" }, { "internalType": "uint256", "name": "scaledSwapFee", "type": "uint256" } ], "stateMutability": "pure", "type": "function" } ]