PoolManager

\

Functions

HUNDRED_PERCENT

    function HUNDRED_PERCENT()
        view
        returns (
            uint256
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

uint256

uint256

\

acceptPoolDelegate

Accepts the role of pool delegate.

    function acceptPoolDelegate()
        nonpayable;

\

active

Returns whether or not a pool is active.

    function active()
        view
        returns (
            bool
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

bool

bool

\

addLoanManager

Adds a new loan manager.

    function addLoanManager(
        address loanManagerFactory_
    )
        nonpayable
        returns (
            address loanManager_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

loanManagerFactory_

address

address

The address of the loan manager factory to use.

Return Values:

IndexNameTypeInternal TypeDescription

0

loanManager_

address

address

The address of the new loan manager.

\

asset

Gets the address of the funds asset.

    function asset()
        view
        returns (
            address
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

address

address

\

canCall

Checks if a scheduled call can be executed.

    function canCall(
        bytes32 functionId_,
        address caller_,
        bytes data_
    )
        view
        returns (
            bool canCall_,
            string errorMessage_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

functionId_

bytes32

bytes32

The function to check.

1

caller_

address

address

The address of the caller.

2

data_

bytes

bytes

The data of the call.

Return Values:

IndexNameTypeInternal TypeDescription

0

canCall_

bool

bool

True if the call can be executed, false otherwise.

1

errorMessage_

string

string

The error message if the call cannot be executed.

\

completeConfiguration

Complete the configuration.

    function completeConfiguration()
        nonpayable;

\

configured

Returns whether or not a pool is configured.

    function configured()
        view
        returns (
            bool
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

bool

bool

\

convertToExitShares

Returns the amount of exit shares for the input amount.

    function convertToExitShares(
        uint256 assets_
    )
        view
        returns (
            uint256 shares_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

assets_

uint256

uint256

Return Values:

IndexNameTypeInternal TypeDescription

0

shares_

uint256

uint256

Amount of shares able to be exited.

\

delegateManagementFeeRate

Gets the delegate management fee rate.

    function delegateManagementFeeRate()
        view
        returns (
            uint256
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

uint256

uint256

\

depositCover

Deposits cover into the pool.

    function depositCover(
        uint256 amount_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

amount_

uint256

uint256

The amount of cover to deposit.

\

factory

The address of the proxy factory.

    function factory()
        view
        returns (
            address factory_
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

factory_

address

address

\

finishCollateralLiquidation

Finishes the collateral liquidation

    function finishCollateralLiquidation(
        address loan_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

loan_

address

address

Loan that had its collateral liquidated.

\

getEscrowParams

Gets the information of escrowed shares.

    function getEscrowParams(
        address,
        uint256 shares_
    )
        view
        returns (
            uint256 escrowShares_,
            address destination_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

``

address

address

1

shares_

uint256

uint256

The amount of shares to get the information of.

Return Values:

IndexNameTypeInternal TypeDescription

0

escrowShares_

uint256

uint256

The amount of escrowed shares.

1

destination_

address

address

The address of the destination.

\

globals

Gets the address of the globals.

    function globals()
        view
        returns (
            address globals_
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

globals_

address

address

The address of the globals.

\

governor

Gets the address of the governor.

    function governor()
        view
        returns (
            address governor_
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

governor_

address

address

The address of the governor.

\

hasSufficientCover

Returns if pool has sufficient cover.

    function hasSufficientCover()
        view
        returns (
            bool hasSufficientCover_
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

hasSufficientCover_

bool

bool

True if pool has sufficient cover.

\

implementation

The address of the implementation contract being proxied.

    function implementation()
        view
        returns (
            address implementation_
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

implementation_

address

address

\

isLoanManager

Returns whether or not the given address is a loan manager.

    function isLoanManager(
        address
    )
        view
        returns (
            bool
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

``

address

address

Return Values:

IndexNameTypeInternal TypeDescription

0

bool

bool

\

liquidityCap

Gets the liquidity cap for the pool.

    function liquidityCap()
        view
        returns (
            uint256
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

uint256

uint256

\

loanManagerList

Gets the address of the loan manager in the list.

    function loanManagerList(
        uint256
    )
        view
        returns (
            address
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

``

uint256

uint256

Return Values:

IndexNameTypeInternal TypeDescription

0

address

address

\

loanManagerListLength

Returns the length of the `loanManagerList`.

    function loanManagerListLength()
        view
        returns (
            uint256 loanManagerListLength_
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

loanManagerListLength_

uint256

uint256

The length of the `loanManagerList`.

\

maxDeposit

Gets the amount of assets that can be deposited.

    function maxDeposit(
        address receiver_
    )
        view
        returns (
            uint256 maxAssets_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

receiver_

address

address

The address to check the deposit for.

Return Values:

IndexNameTypeInternal TypeDescription

0

maxAssets_

uint256

uint256

\

maxMint

Gets the amount of shares that can be minted.

    function maxMint(
        address receiver_
    )
        view
        returns (
            uint256 maxShares_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

receiver_

address

address

The address to check the mint for.

Return Values:

IndexNameTypeInternal TypeDescription

0

maxShares_

uint256

uint256

\

maxRedeem

Gets the amount of shares that can be redeemed.

    function maxRedeem(
        address owner_
    )
        view
        returns (
            uint256 maxShares_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

owner_

address

address

The address to check the redemption for.

Return Values:

IndexNameTypeInternal TypeDescription

0

maxShares_

uint256

uint256

\

maxWithdraw

Gets the amount of assets that can be withdrawn.

    function maxWithdraw(
        address owner_
    )
        view
        returns (
            uint256 maxAssets_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

owner_

address

address

The address to check the withdraw for.

Return Values:

IndexNameTypeInternal TypeDescription

0

maxAssets_

uint256

uint256

\

migrate

Modifies the proxy's storage by delegate-calling a migrator contract with some arguments. Access control logic critical since caller can force a selfdestruct via a malicious `migrator_` which is delegatecalled.

    function migrate(
        address migrator_,
        bytes arguments_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

migrator_

address

address

The address of a migrator contract.

1

arguments_

bytes

bytes

Some encoded arguments to use for the migration.

\

pendingPoolDelegate

Gets the address of the pending pool delegate.

    function pendingPoolDelegate()
        view
        returns (
            address
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

address

address

\

pool

Gets the address of the pool.

    function pool()
        view
        returns (
            address
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

address

address

\

poolDelegate

Gets the address of the pool delegate.

    function poolDelegate()
        view
        returns (
            address
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

address

address

\

poolDelegateCover

Gets the address of the pool delegate cover.

    function poolDelegateCover()
        view
        returns (
            address
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

address

address

\

poolPermissionManager

Gets the address of the pool delegate cover.

    function poolPermissionManager()
        view
        returns (
            address
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

address

address

\

previewRedeem

Gets the amount of shares that can be redeemed.

    function previewRedeem(
        address owner_,
        uint256 shares_
    )
        view
        returns (
            uint256 assets_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

owner_

address

address

The address to check the redemption for.

1

shares_

uint256

uint256

The amount of requested shares to redeem.

Return Values:

IndexNameTypeInternal TypeDescription

0

assets_

uint256

uint256

The amount of assets that will be returned for `shares_`.

\

previewWithdraw

Gets the amount of assets that can be redeemed.

    function previewWithdraw(
        address owner_,
        uint256 assets_
    )
        view
        returns (
            uint256 shares_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

owner_

address

address

The address to check the redemption for.

1

assets_

uint256

uint256

The amount of requested shares to redeem.

Return Values:

IndexNameTypeInternal TypeDescription

0

shares_

uint256

uint256

The amount of assets that will be returned for `assets_`.

\

processRedeem

Processes a redemptions of shares for assets from the pool.

    function processRedeem(
        uint256 shares_,
        address owner_,
        address sender_
    )
        nonpayable
        returns (
            uint256 redeemableShares_,
            uint256 resultingAssets_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

shares_

uint256

uint256

The amount of shares to redeem.

1

owner_

address

address

The address of the owner of the shares.

2

sender_

address

address

The address of the sender of the redeem call.

Return Values:

IndexNameTypeInternal TypeDescription

0

redeemableShares_

uint256

uint256

The amount of shares redeemed.

1

resultingAssets_

uint256

uint256

The amount of assets withdrawn.

\

processWithdraw

Processes a redemptions of shares for assets from the pool.

    function processWithdraw(
        uint256 assets_,
        address owner_,
        address sender_
    )
        nonpayable
        returns (
            uint256 redeemableShares_,
            uint256 resultingAssets_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

assets_

uint256

uint256

The amount of assets to withdraw.

1

owner_

address

address

The address of the owner of the shares.

2

sender_

address

address

The address of the sender of the withdraw call.

Return Values:

IndexNameTypeInternal TypeDescription

0

redeemableShares_

uint256

uint256

The amount of shares redeemed.

1

resultingAssets_

uint256

uint256

The amount of assets withdrawn.

\

removeShares

Requests a redemption of shares from the pool.

    function removeShares(
        uint256 shares_,
        address owner_
    )
        nonpayable
        returns (
            uint256 sharesReturned_
        );

Parameters:

IndexNameTypeInternal TypeDescription

0

shares_

uint256

uint256

The amount of shares to redeem.

1

owner_

address

address

The address of the owner of the shares.

Return Values:

IndexNameTypeInternal TypeDescription

0

sharesReturned_

uint256

uint256

The amount of shares withdrawn.

\

requestFunds

LoanManager can request funds from the pool via the poolManager.

    function requestFunds(
        address destination_,
        uint256 principal_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

destination_

address

address

The address to send the funds to.

1

principal_

uint256

uint256

The principal amount to fund the loan with.

\

requestRedeem

Requests a redemption of shares from the pool.

    function requestRedeem(
        uint256 shares_,
        address owner_,
        address sender_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

shares_

uint256

uint256

The amount of shares to redeem.

1

owner_

address

address

The address of the owner of the shares.

2

sender_

address

address

The address of the sender of the shares.

\

requestWithdraw

Requests a withdrawal of assets from the pool.

    function requestWithdraw(
        uint256 shares_,
        uint256 assets_,
        address owner_,
        address sender_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

shares_

uint256

uint256

The amount of shares to redeem.

1

assets_

uint256

uint256

The amount of assets to withdraw.

2

owner_

address

address

The address of the owner of the shares.

3

sender_

address

address

The address of the sender of the shares.

\

setActive

Sets a the pool to be active or inactive.

    function setActive(
        bool active_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

active_

bool

bool

Whether the pool is active.

\

setDelegateManagementFeeRate

Sets the value for the delegate management fee rate.

    function setDelegateManagementFeeRate(
        uint256 delegateManagementFeeRate_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

delegateManagementFeeRate_

uint256

uint256

The value for the delegate management fee rate.

\

setImplementation

Modifies the proxy's implementation address.

    function setImplementation(
        address implementation_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

implementation_

address

address

\

setIsLoanManager

Sets if the loanManager is valid in the isLoanManager mapping.

    function setIsLoanManager(
        address loanManager_,
        bool isLoanManager_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

loanManager_

address

address

The address of the loanManager

1

isLoanManager_

bool

bool

Whether the loanManager is valid.

\

setLiquidityCap

Sets the value for liquidity cap.

    function setLiquidityCap(
        uint256 liquidityCap_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

liquidityCap_

uint256

uint256

The value for liquidity cap.

\

setPendingPoolDelegate

Sets an address as the pending pool delegate.

    function setPendingPoolDelegate(
        address pendingPoolDelegate_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

pendingPoolDelegate_

address

address

The address of the new pool delegate.

\

setPoolPermissionManager

Sets the address of the pool permission manager.

    function setPoolPermissionManager(
        address poolPermissionManager_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

poolPermissionManager_

address

address

\

setWithdrawalManager

Sets the address of the withdrawal manager.

    function setWithdrawalManager(
        address withdrawalManager_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

withdrawalManager_

address

address

The address of the withdrawal manager.

\

totalAssets

Returns the amount of total assets.

    function totalAssets()
        view
        returns (
            uint256 totalAssets_
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

totalAssets_

uint256

uint256

Amount of of total assets.

\

triggerDefault

Triggers the default of a loan.

    function triggerDefault(
        address loan_,
        address liquidatorFactory_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

loan_

address

address

Loan to trigger the default.

1

liquidatorFactory_

address

address

Factory used to deploy the liquidator.

\

unrealizedLosses

Returns the amount unrealized losses.

    function unrealizedLosses()
        view
        returns (
            uint256 unrealizedLosses_
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

unrealizedLosses_

uint256

uint256

Amount of unrealized losses.

\

upgrade

Upgrades a contract implementation to a specific version. Access control logic critical since caller can force a selfdestruct via a malicious `migrator_` which is delegatecalled.

    function upgrade(
        uint256 version_,
        bytes arguments_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

version_

uint256

uint256

1

arguments_

bytes

bytes

Some encoded arguments to use for the upgrade.

\

withdrawalManager

Gets the address of the withdrawal manager.

    function withdrawalManager()
        view
        returns (
            address
        );

Return Values:

IndexNameTypeInternal TypeDescription

0

address

address

\

withdrawCover

Withdraws cover from the pool.

    function withdrawCover(
        uint256 amount_,
        address recipient_
    )
        nonpayable;

Parameters:

IndexNameTypeInternal TypeDescription

0

amount_

uint256

uint256

The amount of cover to withdraw.

1

recipient_

address

address

The address of the recipient.

\

Events

CollateralLiquidationFinished

Emitted when a collateral liquidations is finished.

    event CollateralLiquidationFinished(
        address loan_,
        uint256 unrealizedLosses_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

loan_

address

address

The address of the loan.

1

unrealizedLosses_

uint256

uint256

The amount of unrealized losses.

\

CollateralLiquidationTriggered

Emitted when a collateral liquidations is triggered.

    event CollateralLiquidationTriggered(
        address loan_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

loan_

address

address

The address of the loan.

\

CoverDeposited

Emitted when cover is deposited.

    event CoverDeposited(
        uint256 amount_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

amount_

uint256

uint256

The amount of cover deposited.

\

CoverLiquidated

Emitted when cover is liquidated in the case of a loan defaulting.

    event CoverLiquidated(
        uint256 toTreasury_,
        uint256 toPool_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

toTreasury_

uint256

uint256

The amount of cover sent to the Treasury.

1

toPool_

uint256

uint256

The amount of cover sent to the Pool.

\

CoverWithdrawn

Emitted when cover is withdrawn.

    event CoverWithdrawn(
        uint256 amount_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

amount_

uint256

uint256

The amount of cover withdrawn.

\

DelegateManagementFeeRateSet

Emitted when a new management fee rate is set.

    event DelegateManagementFeeRateSet(
        uint256 managementFeeRate_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

managementFeeRate_

uint256

uint256

The amount of management fee rate.

\

IsLoanManagerSet

Emitted when a loan manager is set as valid.

    event IsLoanManagerSet(
        address loanManager_,
        bool isLoanManager_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

loanManager_

address

address

The address of the loan manager.

1

isLoanManager_

bool

bool

Whether the loan manager is valid.

\

LiquidityCapSet

Emitted when a new liquidity cap is set.

    event LiquidityCapSet(
        uint256 liquidityCap_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

liquidityCap_

uint256

uint256

The value of liquidity cap.

\

LoanManagerAdded

Emitted when a new loan manager is added.

    event LoanManagerAdded(
        address loanManager_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

loanManager_

address

address

The address of the new loan manager.

\

PendingDelegateAccepted

Emitted when the pending pool delegate accepts the ownership transfer.

    event PendingDelegateAccepted(
        address previousDelegate_,
        address newDelegate_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

previousDelegate_

address

address

The address of the previous delegate.

1

newDelegate_

address

address

The address of the new delegate.

\

PendingDelegateSet

Emitted when the pending pool delegate is set.

    event PendingDelegateSet(
        address previousDelegate_,
        address newDelegate_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

previousDelegate_

address

address

The address of the previous delegate.

1

newDelegate_

address

address

The address of the new delegate.

\

PoolConfigurationComplete

Emitted when the pool configuration is marked as complete.

    event PoolConfigurationComplete();

\

PoolPermissionManagerSet

Emitted when the pool permission manager is set.

    event PoolPermissionManagerSet(
        address poolPermissionManager_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

poolPermissionManager_

address

address

The address of the pool permission manager.

\

RedeemProcessed

Emitted when a redemption of shares from the pool is processed.

    event RedeemProcessed(
        address owner_,
        uint256 redeemableShares_,
        uint256 resultingAssets_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

owner_

address

address

The owner of the shares.

1

redeemableShares_

uint256

uint256

The amount of redeemable shares.

2

resultingAssets_

uint256

uint256

The amount of assets redeemed.

\

RedeemRequested

Emitted when a redemption of shares from the pool is requested.

    event RedeemRequested(
        address owner_,
        uint256 shares_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

owner_

address

address

The owner of the shares.

1

shares_

uint256

uint256

The amount of redeemable shares.

\

SetAsActive

Emitted when a pool is sets to be active or inactive.

    event SetAsActive(
        bool active_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

active_

bool

bool

Whether the pool is active.

\

SharesRemoved

Emitted when shares are removed from the pool.

    event SharesRemoved(
        address owner_,
        uint256 shares_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

owner_

address

address

The address of the owner of the shares.

1

shares_

uint256

uint256

The amount of shares removed.

\

Upgraded

The instance was upgraded.

    event Upgraded(
        uint256 toVersion_,
        bytes arguments_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

toVersion_

uint256

uint256

The new version of the loan.

1

arguments_

bytes

bytes

The upgrade arguments, if any.

\

WithdrawalManagerSet

Emitted when the withdrawal manager is set.

    event WithdrawalManagerSet(
        address withdrawalManager_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

withdrawalManager_

address

address

The address of the withdrawal manager.

\

WithdrawalProcessed

Emitted when withdrawal of assets from the pool is processed.

    event WithdrawalProcessed(
        address owner_,
        uint256 redeemableShares_,
        uint256 resultingAssets_
    );

Parameters:

IndexNameTypeInternal TypeDescription

0

owner_

address

address

The owner of the assets.

1

redeemableShares_

uint256

uint256

The amount of redeemable shares.

2

resultingAssets_

uint256

uint256

The amount of assets redeemed.

\

Last updated