IInsuranceFund
Functions
repay
function repay(
) external
If insurance has negative accountValue of vault, will deposit amount to vault
distributeFee
function distributeFee(
) external returns (uint256 surplus)
If balance of InsuranceFund
is over distributionThreshold
, transfer diff to SurplusBeneficiary
Insurance Fund should only distribute revenues surplus earned on the platform. In other words, funds directly held in the Insurance Fund contract (insuranceFundWalletBalance
) contributes to insuranceFundTotalBalance
but not necessarily to surplus
. Anyone can send funds to Insurance Fund and help it reach distributionThreshold
sooner, but once surplus
exceeds the revenues earned on the platform (insuranceFundFreeCollateral
), sending more funds won’t increase surplus
further
Return Values:
surplus
uint256
The surplus of distribution
getToken
function getToken(
) external returns (address token)
Get settlement token address
Return Values:
token
address
The address of settlement token
getBorrower
function getBorrower(
) external returns (address vault)
(Deprecated function, will be removed in the next release), Get borrower(Vault
) address
Return Values:
vault
address
The address of Vault
getVault
function getVault(
) external returns (address vault)
Get Vault
address
Return Values:
vault
address
The address of Vault
getInsuranceFundCapacity
function getInsuranceFundCapacity(
) external returns (int256 capacityX10_S)
Get InsuranceFund
capacity
Return Values:
capacityX10_S
int256
The capacity value (settlementTokenValue + walletBalance) in settlement token's decimals
getDistributionThreshold
function getDistributionThreshold(
) external returns (uint256 distributionThreshold)
Get insurance distributution threshold, this value is for fee distribution
Return Values:
distributionThreshold
uint256
The distribution threshold number
getSurplusBeneficiary
function getSurplusBeneficiary(
) external returns (address surplusBeneficiary)
Get SurplusBeneficiary
Return Values:
surplusBeneficiary
address
The address of SurplusBeneficiary
Events
BorrowerChanged
event BorrowerChanged(
address borrower
)
(Deprecated function, will be removed in the next release), In the previous version Vault
used to "borrow" from IF by calling IF.borrow()
. We have since removed the behavior but kept the variable name "borrower" for backward-compatibility
Parameters:
borrower
address
The address of the borrower (actually is Vault
address)
VaultChanged
event VaultChanged(
address vault
)
Parameters:
vault
address
The address of the vault
Repaid
event Repaid(
uint256 repaidAmount,
uint256 tokenBalanceAfterRepaid
)
Parameters:
repaidAmount
uint256
Repaid amount of the token
tokenBalanceAfterRepaid
uint256
InsuranceFund's token balance after repay
DistributionThresholdChanged
event DistributionThresholdChanged(
uint256 distributionThreshold
)
We will transfer fee to SurplusBeneficiary
if InsuranceFund
free collateral is over distribution threshold
Parameters:
distributionThreshold
uint256
Distribution threshold amount
SurplusBeneficiaryChanged
event SurplusBeneficiaryChanged(
address surplusBeneficiary
)
Parameters:
surplusBeneficiary
address
The address of SurplusBeneficiary
FeeDistributed
event FeeDistributed(
uint256 surplus,
uint256 insuranceFundCapacity,
uint256 insuranceFundFreeCollateral,
uint256 distributionThreshold
)
Parameters:
surplus
uint256
The amount of distribution
insuranceFundCapacity
uint256
The capacity of insuranceFund
contract
insuranceFundFreeCollateral
uint256
The free collateral(usdc) of insuranceFund
contract in vault
distributionThreshold
uint256
The distribution threshold amount
Last updated
Was this helpful?