UNPKG

@etherisc/depeg-contracts

Version:

Etherisc's smart contracts for a depeg insurance for stable coins.

2,232 lines (2,231 loc) 3.42 MB
{ "abi": [ { "inputs": [ { "internalType": "bytes32", "name": "productName", "type": "bytes32" }, { "internalType": "address", "name": "priceDataProvider", "type": "address" }, { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "address", "name": "registry", "type": "address" }, { "internalType": "uint256", "name": "riskpoolId", "type": "uint256" }, { "internalType": "address", "name": "depegMessageHelper", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentApproved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentArchived", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "componentName", "type": "bytes32" }, { "indexed": false, "internalType": "enum IComponent.ComponentType", "name": "componentType", "type": "uint8" }, { "indexed": false, "internalType": "address", "name": "componentAddress", "type": "address" }, { "indexed": false, "internalType": "address", "name": "registryAddress", "type": "address" } ], "name": "LogComponentCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentDeclined", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentPaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "componentName", "type": "bytes32" }, { "indexed": false, "internalType": "enum IComponent.ComponentType", "name": "componentType", "type": "uint8" }, { "indexed": false, "internalType": "address", "name": "componentAddress", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentProposed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentResumed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" }, { "indexed": false, "internalType": "enum IComponent.ComponentState", "name": "stateOld", "type": "uint8" }, { "indexed": false, "internalType": "enum IComponent.ComponentState", "name": "stateNew", "type": "uint8" } ], "name": "LogComponentStateChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentSuspended", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentUnpaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "address", "name": "policyHolder", "type": "address" }, { "indexed": false, "internalType": "address", "name": "protectedWallet", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "protectedBalance", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "sumInsuredAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "premiumAmount", "type": "uint256" } ], "name": "LogDepegApplicationCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "claimId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "claimAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "accountBalance", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "payoutAmount", "type": "uint256" } ], "name": "LogDepegClaimConfirmed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "claimId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "claimAmount", "type": "uint256" } ], "name": "LogDepegClaimCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "wallet", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "balance", "type": "uint256" } ], "name": "LogDepegDepegBalanceAdded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "wallet", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "balance", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "depeggedBlockNumber", "type": "uint256" } ], "name": "LogDepegDepegBalanceError", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "claimId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "payoutId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "payoutAmount", "type": "uint256" } ], "name": "LogDepegPayoutProcessed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "LogDepegPolicyClosed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "address", "name": "policyHolder", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "sumInsuredAmount", "type": "uint256" } ], "name": "LogDepegPolicyCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "LogDepegPolicyExpired", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "priceId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "price", "type": "uint256" }, { "indexed": false, "internalType": "enum IPriceDataProvider.EventType", "name": "eventType", "type": "uint8" }, { "indexed": false, "internalType": "uint256", "name": "triggeredAt", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "depeggedAt", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "createdAt", "type": "uint256" } ], "name": "LogDepegPriceEvent", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "protectedAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "amountLeftToProcess", "type": "uint256" } ], "name": "LogDepegProcessedAmountReduction", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "priceId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "deactivatedAt", "type": "uint256" } ], "name": "LogDepegProductDeactivated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "priceId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "pausedAt", "type": "uint256" } ], "name": "LogDepegProductPaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "reactivatedAt", "type": "uint256" } ], "name": "LogDepegProductReactivated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "priceId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "unpausedAt", "type": "uint256" } ], "name": "LogDepegProductUnpaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "protectedAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "depegBalance", "type": "uint256" } ], "name": "LogDepegProtectedAmountReduction", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "LogProductApproved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "productAddress", "type": "address" } ], "name": "LogProductCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "LogProductDeclined", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "LogProductProposed", "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" }, { "inputs": [], "name": "CLAIM_GRACE_PERIOD", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "CLAIM_ID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "GANACHE", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAINNET", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "NAME", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "POLICY_FLOW", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "VERSION", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "wallet", "type": "address" }, { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, { "internalType": "uint256", "name": "balance", "type": "uint256" } ], "internalType": "struct DepegProduct.DepegBalance[]", "name": "depegBalances", "type": "tuple[]" } ], "name": "addDepegBalances", "outputs": [ { "internalType": "uint256", "name": "balanceOkCases", "type": "uint256" }, { "internalType": "uint256", "name": "balanceErrorCases", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "applications", "outputs": [ { "internalType": "uint256", "name": "applicationCount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "protectedWallet", "type": "address" }, { "internalType": "uint256", "name": "protectedBalance", "type": "uint256" }, { "internalType": "uint256", "name": "duration", "type": "uint256" }, { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "applyForPolicyWithBundle", "outputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "policyHolder", "type": "address" }, { "internalType": "address", "name": "protectedWallet", "type": "address" }, { "internalType": "uint256", "name": "protectedBalance", "type": "uint256" }, { "internalType": "uint256", "name": "duration", "type": "uint256" }, { "internalType": "uint256", "name": "bundleId", "type": "uint256" }, { "internalType": "bytes32", "name": "signatureId", "type": "bytes32" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "name": "applyForPolicyWithBundleAndSignature", "outputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "approvalCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "archiveCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenAmount", "type": "uint256" } ], "name": "calculateClaimAmount", "outputs": [ { "internalType": "uint256", "name": "claimAmount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "calculateFee", "outputs": [ { "internalType": "uint256", "name": "feeAmount", "type": "uint256" }, { "internalType": "uint256", "name": "totalAmount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "sumInsured", "type": "uint256" }, { "internalType": "uint256", "name": "duration", "type": "uint256" }, { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "calculateNetPremium", "outputs": [ { "internalType": "uint256", "name": "netPremium", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "netPremium", "type": "uint256" } ], "name": "calculatePremium", "outputs": [ { "internalType": "uint256", "name": "premiumAmount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "close", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "wallet", "type": "address" }, { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, { "internalType": "uint256", "name": "balance", "type": "uint256" } ], "name": "createDepegBalance", "outputs": [ { "components": [ { "internalType": "address", "name": "wallet", "type": "address" }, { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, { "internalType": "uint256", "name": "balance", "type": "uint256" } ], "internalType": "struct DepegProduct.DepegBalance", "name": "depegBalance", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "createDepegClaim", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "declineCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "decodeClaimInfoFromData", "outputs": [ { "internalType": "uint256", "name": "depegPrice", "type": "uint256" }, { "internalType": "uint256", "name": "depeggedAt", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "depegPrice", "type": "uint256" }, { "internalType": "uint256", "name": "depeggedAt", "type": "uint256" } ], "name": "encodeClaimInfoAsData", "outputs": [ { "internalType": "bytes", "name": "data", "type": "bytes" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "getApplicationDataStructure", "outputs": [ { "internalType": "string", "name": "dataStructure", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "applicationIdx", "type": "uint256" } ], "name": "getApplicationId", "outputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "getClaimData", "outputs": [ { "internalType": "address", "name": "wallet", "type": "address" }, { "internalType": "uint256", "name": "protectedAmount", "type": "uint256" }, { "internalType": "uint256", "name": "actualAmount", "type": "uint256" }, { "internalType": "bool", "name": "hasClaim", "type": "bool" }, { "internalType": "uint256", "name": "claimId", "type": "uint256" }, { "internalType": "enum IPolicy.ClaimState", "name": "claimState", "type": "uint8" }, { "internalType": "uint256", "name": "claimAmount", "type": "uint256" }, { "internalType": "uint256", "name": "claimCreatedAt", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getClaimDataStructure", "outputs": [ { "internalType": "string", "name": "dataStructure", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "protectedWallet", "type": "address" } ], "name": "getDepegBalance", "outputs": [ { "components": [ { "internalType": "address", "name": "wallet", "type": "address" }, { "internalType": "uint256", "name": "blockNumber", "type": "uint256" }, { "internalType": "uint256", "name": "balance", "type": "uint256" } ], "internalType": "struct DepegProduct.DepegBalance", "name": "depegBalance", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "getDepegClaim", "outputs": [ { "components": [ { "internalType": "enum IPolicy.ClaimState", "name": "state", "type": "uint8" }, { "internalType": "uint256", "name": "claimAmount", "type": "uint256" }, { "internalType": "uint256", "name": "paidAmount", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" }, { "internalType": "uint256", "name": "createdAt", "type": "uint256" }, { "internalType": "uint256", "name": "updatedAt", "type": "uint256" } ], "internalType": "struct IPolicy.Claim", "name": "claim", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getDepegPriceInfo", "outputs": [ { "components": [ { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "enum IPriceDataProvider.ComplianceState", "name": "compliance", "type": "uint8" }, { "internalType": "enum IPriceDataProvider.StabilityState", "name": "stability", "type": "uint8" }, { "internalType": "enum IPriceDataProvider.EventType", "name": "eventType", "type": "uint8" }, { "internalType": "uint256", "name": "triggeredAt", "type": "uint256" }, { "internalType": "uint256", "name": "depeggedAt", "type": "uint256" }, { "internalType": "uint256", "name": "createdAt", "type": "uint256" } ], "internalType": "struct IPriceDataProvider.PriceInfo", "name": "priceInfo", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getDepegState", "outputs": [ { "internalType": "enum DepegProduct.DepegState", "name": "state", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getDepeggedAt", "outputs": [ { "internalType": "uint256", "name": "depeggedAt", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getDepeggedBlockNumber", "outputs": [ { "internalType": "uint256", "name": "blockNumber", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getFeeFractionFullUnit", "outputs": [ { "internalType": "uint256", "name": "fractionFullUnit", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "getFeeSpecification", "outputs": [ { "components": [ { "internalType": "uint256", "name": "componentId", "type": "uint256" }, { "internalType": "uint256", "name": "fixedFee", "type": "uint256" }, { "internalType": "uint256", "name": "fractionalFee", "type": "uint256" }, { "internalType": "bytes", "name": "feeCalculationData", "type": "bytes" }, { "internalType": "uint256", "name": "createdAt", "type": "uint256" }, { "internalType": "uint256", "name": "updatedAt", "type": "uint256" } ], "internalType": "struct ITreasury.FeeSpecification", "name": "feeSpecification", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getLatestPriceInfo", "outputs": [ { "components": [ { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "enum IPriceDataProvider.ComplianceState", "name": "compliance", "type": "uint8" }, { "internalType": "enum IPriceDataProvider.StabilityState", "name": "stability", "type": "uint8" }, { "internalType": "enum IPriceDataProvider.EventType", "name": "eventType", "type": "uint8" }, { "internalType": "uint256", "name": "triggeredAt", "type": "uint256" }, { "internalType": "uint256", "name": "depeggedAt", "type": "uint256" }, { "internalType": "uint256", "name": "createdAt", "type": "uint256" } ], "internalType": "struct IPriceDataProvider.PriceInfo", "name": "priceInfo", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getMessageHelperAddress", "outputs": [ { "internalType": "address", "name": "messageHelperAddress", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getName", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getPayoutDataStructure", "outputs": [ { "internalType": "string", "name": "dataStructure", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "getPolicyExpirationData", "outputs": [ { "internalType": "bool", "name": "isExpired", "type": "bool" }, { "internalType": "uint256", "name": "expiredAt", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getPolicyFlow", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "policyIdx", "type": "uint256" } ], "name": "getPolicyId", "outputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "getPolicyToProcess", "outputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "internalType": "address", "name": "wallet", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getPriceDataProvider", "outputs": [ { "internalType": "address", "name": "priceDataProvider", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "policyHolder", "type": "address" }, { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "getProcessId", "outputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "protectedWallet", "type": "address" } ], "name": "getProcessedBalance", "outputs": [ { "internalType": "uint256", "name": "claimedBalance", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "getProtectedBalance", "outputs": [ { "internalType": "uint256", "name": "protectedBalance", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getProtectedToken", "outputs": [ { "internalType": "address", "name": "protectedToken", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "getProtectedWallet", "outputs": [ { "internalType": "address", "name": "wallet", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRegistry", "outputs": [ { "internalType": "contract IRegistry", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRiskpoolId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getState", "outputs": [ { "internalType": "enum IComponent.ComponentState", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTargetPrice", "outputs": [ { "internalType": "uint256", "name": "targetPrice", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getToken", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTriggeredAt", "outputs": [ { "internalType": "uint256", "name": "triggeredAt", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getType", "outputs": [ { "internalType": "enum IComponent.ComponentType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "hasDepegClaim", "outputs": [ { "internalType": "bool", "name": "hasClaim", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isNewPriceInfoEventAvailable", "outputs": [ { "internalType": "bool", "name": "newEvent", "type": "bool" }, { "components": [ { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "enum IPriceDataProvider.ComplianceState", "name": "compliance", "type": "uint8" }, { "internalType": "enum IPriceDataProvider.StabilityState", "name": "stability", "type": "uint8" }, { "internalType": "enum IPriceDataProvider.EventType", "name": "eventType", "type": "uint8" }, { "internalType": "uint256", "name": "triggeredAt", "type": "uint256" }, { "internalType": "uint256", "name": "depeggedAt", "type": "uint256" }, { "internalType": "uint256", "name": "createdAt", "type": "uint256" } ], "internalType": "struct IPriceDataProvider.PriceInfo", "name": "priceInfo", "type": "tuple" }, { "internalType": "uint256", "name": "timeSinceEvent", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isOracle", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isProduct", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isRiskpool", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "policies", "outputs": [ { "internalType": "uint256", "name": "policyCount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "policiesToProcess", "outputs": [ { "internalType": "uint256", "name": "numberOfPolicies", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "policyIsAllowedToClaim", "outputs": [ { "internalType": "bool", "name": "mayClaim", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "policyHolder", "type": "address" } ], "name": "processIds", "outputs": [ { "internalType": "uint256", "name": "numberOfProcessIds", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "processLatestPriceInfo", "outputs": [ { "components": [ { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "enum IPriceDataProvider.ComplianceState", "name": "compliance", "type": "uint8" }, { "internalType": "enum IPriceDataProvider.StabilityState", "name": "stability", "type": "uint8" }, { "internalType": "enum IPriceDataProvider.EventType", "name": "eventType", "type": "uint8" }, { "internalType": "uint256", "name": "triggeredAt", "type": "uint256" }, { "internalType": "uint256", "name": "depeggedAt", "type": "uint256" }, { "internalType": "uint256", "name": "createdAt", "type": "uint256" } ], "internalType": "struct IPriceDataProvider.PriceInfo", "name": "priceInfo", "type": "tuple" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32[]", "name": "_processIds", "type": "bytes32[]" } ], "name": "processPolicies", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "processPolicy", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "proposalCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "reactivateProduct", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "resumeCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "capacity", "type": "uint256" } ], "name": "riskPoolCapacityCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" }