IRCLGovernance

Methods

cancelTimelock

function cancelTimelock() external nonpayable

Cancel a timelock emits a {TimelockCancelled} event

executeTimelock

function executeTimelock() external nonpayable

Execute a ready timelock emits a {TimelockExecuted} event

getTimelock

function getTimelock() external view returns (struct PoolTimelock timelock)

Retrieve the current timelock

Returns

Name
Type
Description

timelock

PoolTimelock

The current timelock, may be empty

setFeesController

function setFeesController(contract IFeesController feesController) external nonpayable

Set the fees controller contract address

Parameters

Name
Type
Description

feesController

contract IFeesController

Address of the fees controller emits a {FeesControllerSet} event

setMaxBorrowableAmount

Update the maximum borrowable amount

Parameters

Name
Type
Description

maxBorrowableAmount

uint256

New value of the maximum borrowable amount emits a {MaxBorrowableAmountSet} event

setMinDepositAmount

Update the minimum deposit amount

Parameters

Name
Type
Description

minDepositAmount

uint256

New value of the minimum deposit amount emits a {MinDepositAmountSet} event

setPositionDescriptor

Set the position descriptor contract address

Parameters

Name
Type
Description

positionDescriptor

contract IPositionDescriptor

Address of the position descriptor emits a {PositionDescriptorSet} event

setRolloverPeriod

Update the loan finalization period

Parameters

Name
Type
Description

rolloverPeriod

uint256

New value of the loan finalization period emits a {RolloverPeriodSet} event

startNonStandardRepaymentProcedure

Starts a non-standard repayment procedure by initiating a timelock for - Stops all native actions possible in the pool - Sends the unborrowed funds to the non standard repayment procedure contract - Initializes the non standard repayment procedure contract

Parameters

Name
Type
Description

nonStandardRepaymentModule

contract INonStandardRepaymentModule

Address of the non standard repayment module contract

delay

uint256

Timelock delay emits a {NonStandardRepaymentProcedureStarted} event

startRescueProcedure

Start a rescue procedure by initiating a timelock for - Stops all native actions possible in the pool - Sends the unborrowed funds to a recipient address

Parameters

Name
Type
Description

recipient

address

Address to which the funds will be sent

delay

uint256

Timelock delay emits a {RescueProcedureStarted} event

togglePool

Closes and Opens the pool If the pool is OPEN, changes the pool phase to CLOSED, stops all actions in the pool If the pool is CLOSED, changes the pool phase to OPEN, opens up all actions in the pool again Emits a {Open} or {Closed} event

withdrawFees

Withdraw fees to the fees controller emits a {FeesWithdrawn} event

Events

Closed

Emitted when the pool is closed

FeesControllerSet

Emitted when the fees controller is set

Parameters

Name
Type
Description

feesController

address

Address of the fees controller

FeesWithdrawn

Emitted when fees are withdrawn to the fees controller

Parameters

Name
Type
Description

fees

uint256

Amount of fees withdrawn to the fees controller

MaxBorrowableAmountSet

Emitted when the maximum borrowable amount has been set

Parameters

Name
Type
Description

maxBorrowableAmount

uint256

Updated value of the maximum borrowable amount

MinDepositAmountSet

Emitted when the minimum deposit amount has been set

Parameters

Name
Type
Description

minDepositAmount

uint256

Set value of the minimum deposit amount

NonStandardRepaymentProcedureStarted

Emitted when a non-standard repayment procedure has started

Parameters

Name
Type
Description

nonStandardRepaymentModule

address

Address of the non standard repayment module contract

delay

uint256

Timelock delay

Opened

Emitted when the pool is opened

PositionDescriptorSet

Emitted when the position descriptor is set

Parameters

Name
Type
Description

positionDescriptor

address

Address of the position descriptor

RescueProcedureStarted

Emitted when a rescue procedure has started

Parameters

Name
Type
Description

recipient

address

Recipient address of the unborrowed funds

delay

uint256

Timelock delay

RolloverPeriodSet

Emitted when the loan finalization period has been set

Parameters

Name
Type
Description

rolloverPeriod

uint256

The amount of time before maturity during which no liquidity can be withdrawn

TimelockCancelled

Emitted when a timelock has been cancelled

TimelockExecuted

Emitted when a timelock has been executed

Parameters

Name
Type
Description

transferredAmount

uint256

undefined

Errors

TIMELOCK_ALREADY_EXECUTED

Thrown when trying to interact with an already executed timelock

TIMELOCK_ALREADY_INITIATED

Thrown when trying to interact with an already initiated timelock

TIMELOCK_DELAY_TOO_SMALL

Thrown when the input delay for a timelock is too small

TIMELOCK_INEXISTANT

Thrown when trying to interact with inexistant timelock

TIMELOCK_NOT_READY

Thrown when trying to interact with an already executed timelock

Last updated