Skip to content

IFluidLiquidityAdmin ​

Git Source

Functions ​

updateAuths ​

adds/removes auths. Auths generally could be contracts which can have restricted actions defined on contract. auths can be helpful in reducing governance overhead where it's not needed.

solidity
function updateAuths(AdminModuleStructs.AddressBool[] calldata authsStatus_) external;

Parameters

NameTypeDescription
authsStatus_AdminModuleStructs.AddressBool[]array of structs setting allowed status for an address. status true => add auth, false => remove auth

updateGuardians ​

adds/removes guardians. Only callable by Governance.

solidity
function updateGuardians(AdminModuleStructs.AddressBool[] calldata guardiansStatus_) external;

Parameters

NameTypeDescription
guardiansStatus_AdminModuleStructs.AddressBool[]array of structs setting allowed status for an address. status true => add guardian, false => remove guardian

updateRevenueCollector ​

changes the revenue collector address (contract that is sent revenue). Only callable by Governance.

solidity
function updateRevenueCollector(address revenueCollector_) external;

Parameters

NameTypeDescription
revenueCollector_addressnew revenue collector address

changeStatus ​

changes current status, e.g. for pausing or unpausing all user operations. Only callable by Auths.

solidity
function changeStatus(uint256 newStatus_) external;

Parameters

NameTypeDescription
newStatus_uint256new status status = 2 -> pause, status = 1 -> resume.

updateRateDataV1s ​

update tokens rate data version 1. Only callable by Auths.

solidity
function updateRateDataV1s(AdminModuleStructs.RateDataV1Params[] calldata tokensRateData_) external;

Parameters

NameTypeDescription
tokensRateData_AdminModuleStructs.RateDataV1Params[]array of RateDataV1Params with rate data to set for each token

updateRateDataV2s ​

update tokens rate data version 2. Only callable by Auths.

solidity
function updateRateDataV2s(AdminModuleStructs.RateDataV2Params[] calldata tokensRateData_) external;

Parameters

NameTypeDescription
tokensRateData_AdminModuleStructs.RateDataV2Params[]array of RateDataV2Params with rate data to set for each token

updateTokenConfigs ​

updates token configs: fee charge on borrowers interest & storage update utilization threshold. Only callable by Auths.

solidity
function updateTokenConfigs(AdminModuleStructs.TokenConfig[] calldata tokenConfigs_) external;

Parameters

NameTypeDescription
tokenConfigs_AdminModuleStructs.TokenConfig[]contains token address, fee & utilization threshold

updateUserClasses ​

updates user classes: 0 is for new protocols, 1 is for established protocols. Only callable by Auths.

solidity
function updateUserClasses(AdminModuleStructs.AddressUint256[] calldata userClasses_) external;

Parameters

NameTypeDescription
userClasses_AdminModuleStructs.AddressUint256[]struct array of uint256 value to assign for each user address

updateUserSupplyConfigs ​

sets user supply configs per token basis. Eg: with interest or interest-free and automated limits. Only callable by Auths.

solidity
function updateUserSupplyConfigs(AdminModuleStructs.UserSupplyConfig[] memory userSupplyConfigs_) external;

Parameters

NameTypeDescription
userSupplyConfigs_AdminModuleStructs.UserSupplyConfig[]struct array containing user supply config, see UserSupplyConfig struct for more info

updateUserWithdrawalLimit ​

sets a new withdrawal limit as the current limit for a certain user

solidity
function updateUserWithdrawalLimit(address user_, address token_, uint256 newLimit_) external;

Parameters

NameTypeDescription
user_addressuser address for which to update the withdrawal limit
token_addresstoken address for which to update the withdrawal limit
newLimit_uint256new limit until which user supply can decrease to. Important: input in raw. Must account for exchange price in input param calculation. Note any limit that is < max expansion or > current user supply will set max expansion limit or current user supply as limit respectively. - set 0 to make maximum possible withdrawable: instant full expansion, and if that goes below base limit then fully down to 0. - set type(uint256).max to make current withdrawable 0 (sets current user supply as limit).

updateUserBorrowConfigs ​

setting user borrow configs per token basis. Eg: with interest or interest-free and automated limits. Only callable by Auths.

solidity
function updateUserBorrowConfigs(AdminModuleStructs.UserBorrowConfig[] memory userBorrowConfigs_) external;

Parameters

NameTypeDescription
userBorrowConfigs_AdminModuleStructs.UserBorrowConfig[]struct array containing user borrow config, see UserBorrowConfig struct for more info

pauseUser ​

pause operations for a particular user in class 0 (class 1 users can't be paused by guardians). Only callable by Guardians.

solidity
function pauseUser(address user_, address[] calldata supplyTokens_, address[] calldata borrowTokens_) external;

Parameters

NameTypeDescription
user_addressaddress of user to pause operations for
supplyTokens_address[]token addresses to pause withdrawals for
borrowTokens_address[]token addresses to pause borrowings for

unpauseUser ​

unpause operations for a particular user in class 0 (class 1 users can't be paused by guardians). Only callable by Guardians.

solidity
function unpauseUser(address user_, address[] calldata supplyTokens_, address[] calldata borrowTokens_) external;

Parameters

NameTypeDescription
user_addressaddress of user to unpause operations for
supplyTokens_address[]token addresses to unpause withdrawals for
borrowTokens_address[]token addresses to unpause borrowings for

collectRevenue ​

collects revenue for tokens to configured revenueCollector address.

Note that this can revert if token balance is < revenueAmount (utilization > 100%)

solidity
function collectRevenue(address[] calldata tokens_) external;

Parameters

NameTypeDescription
tokens_address[]array of tokens to collect revenue for

updateExchangePrices ​

gets the current updated exchange prices for n tokens and updates all prices, rates related data in storage.

solidity
function updateExchangePrices(address[] calldata tokens_)
    external
    returns (uint256[] memory supplyExchangePrices_, uint256[] memory borrowExchangePrices_);

Parameters

NameTypeDescription
tokens_address[]tokens to update exchange prices for

Returns

NameTypeDescription
supplyExchangePrices_uint256[]new supply rates of overall system for each token
borrowExchangePrices_uint256[]new borrow rates of overall system for each token