IBC Admin

The IBC Admin contract is where protocol configuration changes are made. Fee configuration updates as well as contract upgrades and pauses are managed through this contract.

Events

FeeConfigChanged

Emitted when fee configurations have been changed by the contract owner.

event FeeConfigChanged(
    ActionType actionType, 
    uint256 lpFee, 
    uint256 stakingFee, 
    uint256 protocolFee
); 
ParameterTypeDescription

actionType

ActionType

Type of user action

lpFee

uint256

Rate of fees given to LPs

stakingFee

uint256

Rate of fees given to ibAsset stakers

protocolFee

uint256

Rate of fees given to protocol creator

ActionType

enum ActionType {
    BUY_TOKEN,
    SELL_TOKEN,
    ADD_LIQUIDITY,
    REMOVE_LIQUIDITY
}
ParameterDescription

BUY_TOKEN

Action is the minting of ibAssets

SELL_TOKEN

Action is the burning of ibAssets

ADD_LIQUIDITY

Action is the adding of liquidity to the IBC

REMOVE_LIQUIDITY

Action is the removing of liquidity from the IBC

FeeOwnerChanged

Emitted when the protocol creator fee receival address is changed.

event FeeOwnerChanged(address feeOwner); 
ParameterTypeDescription

feeOwner

address

New address receiving protocol creator fees

RouterChanged

Emitted when the IBC Router contract is changed.

event RouterChanged(address router); 
ParameterTypeDescription

router

address

Address of new IBC Router contract

CurveImplementationChanged

Emitted when the IBC contract implementation is changed.

event CurveImplementationChanged(address implementation); 
ParameterTypeDescription

implementation

address

Address of new IBC contract implementation

Read-Only Functions

feeConfig

Gets the fee configurations of inverse bonding curve interactions for the specified action type.

function feeConfig(ActionType actionType) external view returns (
    uint256 lpFee, 
    uint256 stakingFee, 
    uint256 protocolFee
)
ParameterTypeDescription

actionType

ActionType

Type of user action

ActionType

enum ActionType {
    BUY_TOKEN,
    SELL_TOKEN,
    ADD_LIQUIDITY,
    REMOVE_LIQUIDITY
}
ParameterDescription

BUY_TOKEN

Action is the minting of ibAssets

SELL_TOKEN

Action is the burning of ibAssets

ADD_LIQUIDITY

Action is the adding of liquidity to the IBC

REMOVE_LIQUIDITY

Action is the removing of liquidity from the IBC

factoryAddress

Gets the contract address of the IBC Factory contract.

function factoryAddress() external view returns (address)
ParameterTypeDescription

feeOwner

Gets the address receiving protocol creator fees.

function feeOwner() external view returns (address)
ParameterTypeDescription

weth

Gets the contract address of the WETH token contract.

function weth() external view returns (address)
ParameterTypeDescription

router

Gets the contract address of the IBC Router contract.

function router() external view returns (address)
ParameterTypeDescription

curveImplementation

Gets the contract address of the IBC implementation contract.

function curveImplementation() external view returns (address)
ParameterTypeDescription

Last updated