UNPKG

@ensuro/price-risk-module

Version:

Price Risk Module for the Ensuro Protocol

319 lines (318 loc) 6.9 kB
{ "_format": "hh-sol-artifact-1", "contractName": "IPriceRiskModule", "sourceName": "contracts/interfaces/IPriceRiskModule.sol", "abi": [ { "inputs": [], "name": "activeExposure", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "exposureLimit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxDuration", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxPayoutPerPolicy", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "minDuration", "outputs": [ { "internalType": "uint40", "name": "", "type": "uint40" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "triggerPrice", "type": "uint256" }, { "internalType": "bool", "name": "lower", "type": "bool" }, { "internalType": "uint256", "name": "payout", "type": "uint256" }, { "internalType": "uint40", "name": "expiration", "type": "uint40" }, { "internalType": "address", "name": "onBehalfOf", "type": "address" } ], "name": "newPolicy", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "oracle", "outputs": [ { "internalType": "contract IPriceOracle", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "params", "outputs": [ { "components": [ { "internalType": "uint256", "name": "moc", "type": "uint256" }, { "internalType": "uint256", "name": "jrCollRatio", "type": "uint256" }, { "internalType": "uint256", "name": "collRatio", "type": "uint256" }, { "internalType": "uint256", "name": "ensuroPpFee", "type": "uint256" }, { "internalType": "uint256", "name": "ensuroCocFee", "type": "uint256" }, { "internalType": "uint256", "name": "jrRoc", "type": "uint256" }, { "internalType": "uint256", "name": "srRoc", "type": "uint256" } ], "internalType": "struct IRiskModule.Params", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "policyId", "type": "uint256" } ], "name": "policyCanBeTriggered", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "premiumsAccount", "outputs": [ { "internalType": "contract IPremiumsAccount", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "triggerPrice", "type": "uint256" }, { "internalType": "bool", "name": "lower", "type": "bool" }, { "internalType": "uint256", "name": "payout", "type": "uint256" }, { "internalType": "uint40", "name": "expiration", "type": "uint40" } ], "name": "pricePolicy", "outputs": [ { "internalType": "uint256", "name": "premium", "type": "uint256" }, { "components": [ { "internalType": "uint64", "name": "lossProb", "type": "uint64" }, { "internalType": "uint64", "name": "jrCollRatio", "type": "uint64" }, { "internalType": "uint64", "name": "collRatio", "type": "uint64" } ], "internalType": "struct IPriceRiskModule.SlotPricing", "name": "price", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "payout", "type": "uint256" } ], "name": "releaseExposure", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "policyId", "type": "uint256" } ], "name": "triggerPolicy", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "wallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ], "bytecode": "0x", "deployedBytecode": "0x", "linkReferences": {}, "deployedLinkReferences": {} }