IFeeManager_v1.sol
Functions
BPS
This function returns the Base Points used for percentage calculation.
function BPS() external returns (uint);Returns
<none>
uint256
uint The Base Points used for percentage calculation. This value represents 100%.
getDefaultProtocolTreasury
Returns the default treasury for all workflows.
function getDefaultProtocolTreasury() external view returns (address);Returns
<none>
address
The address of the treasury.
getWorkflowTreasuries
Returns the treasury assigned to the given workflow.
function getWorkflowTreasuries(address workflow)
external
view
returns (address);Parameters
workflow
address
The address of the workflow.
Returns
<none>
address
The address of the treasury.
getDefaultCollateralFee
Returns the default collateral fee for all workflows.
Returns
<none>
uint256
The collateral fee amount in relation to the BPS.
getDefaultIssuanceFee
Returns the default issuance fee for all workflows.
Returns
<none>
uint256
The issuance fee amount in relation to the BPS.
getCollateralWorkflowFee
Returns the collateral fee for a specific workflow module function.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
Returns
fee
uint256
The collateral fee amount in relation to the BPS.
getIssuanceWorkflowFee
Returns the issuance fee for a specific workflow module function.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
Returns
fee
uint256
The issuance fee amount in relation to the BPS.
getCollateralWorkflowFeeAndTreasury
Returns the collateral fee for a specific workflow module function and the according treasury address of the workflow.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
Returns
fee
uint256
The collateral fee amount in relation to the BPS.
treasury
address
The address of the treasury.
getIssuanceWorkflowFeeAndTreasury
Returns the issuance fee for a specific workflow module function and the according treasury address of the workflow.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
Returns
fee
uint256
The issuance fee amount in relation to the BPS.
treasury
address
The address of the treasury.
setMaxFee
Sets the maximum fee percentage that can be assigned.
This function can only be called by the owner.
The given max fee can not be higher than the BPS.
Parameters
_maxFee
uint256
The max Fee in relation to the BPS.
setDefaultProtocolTreasury
Sets the default protocol treasury address.
This function can only be called by the owner.
The given treasury address can not be address(0).
Parameters
_defaultProtocolTreasury
address
The address of the default protocol treasury.
setWorkflowTreasury
Sets the protocol treasury address for a specific workflow.
This function can only be called by the owner.
The given treasury address can not be address(0).
Parameters
workflow
address
The address of the workflow.
treasury
address
The address of the protocol treasury for that specific workflow.
setDefaultCollateralFee
Sets the default collateral fee of the protocol.
This function can only be called by the owner.
The given fee needs to be less than the BPS.
Parameters
_defaultCollateralFee
uint256
The default collateral fee of the protocol in relation to the BPS.
setDefaultIssuanceFee
Sets the default issuance fee of the protocol.
This function can only be called by the owner.
The given fee needs to be less than the BPS.
Parameters
_defaultIssuanceFee
uint256
The default issuance fee of the protocol in relation to the BPS.
setCollateralWorkflowFee
Sets the collateral fee for a specific workflow module function.
This function can only be called by the owner.
The given fee needs to be less than the BPS.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
set
bool
Boolean that determines if the fee is actually used or not.
fee
uint256
The collateral fee in relation to the BPS.
setIssuanceWorkflowFee
Sets the issuance fee for a specific workflow module function.
This function can only be called by the owner.
The given fee needs to be less than the BPS.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
set
bool
Boolean that determines if the fee is actually used or not.
fee
uint256
The issuance fee in relation to the BPS.
Events
MaxFeeSet
Event emitted when the max fee percentage is set.
Parameters
maxFee
uint256
The maximum fee percentage.
DefaultProtocolTreasurySet
Event emitted when the default protocol treasury is set.
Parameters
defaultProtocolTreasury
address
The address of the default protocol treasury.
WorkflowTreasurySet
Event emitted when the workflow treasury is set.
Parameters
workflow
address
The address of the workflow.
treasury
address
The address of the treasury.
DefaultCollateralFeeSet
Event emitted when the default collateral fee is set.
Parameters
fee
uint256
The collateral fee amount in relation to the BPS.
DefaultIssuanceFeeSet
Event emitted when the default issuance fee is set.
Parameters
fee
uint256
The issuance fee amount in relation to the BPS.
CollateralWorkflowFeeSet
Event emitted when the collateral workflow fee is set.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
set
bool
Boolean that determines if the fee is actually used or not.
fee
uint256
The collateral fee in relation to the BPS.
IssuanceWorkflowFeeSet
Event emitted when the issuance workflow fee is set.
Parameters
workflow
address
The address of the workflow that contains the module function.
module
address
The address of the module that contains the function.
functionSelector
bytes4
The function selector of the target function.
set
bool
Boolean that determines if the fee is actually used or not.
fee
uint256
The issuance fee in relation to the BPS.
Errors
FeeManager__InvalidAddress
The given address is invalid.
FeeManager__InvalidFee
The given fee is invalid.
FeeManager__InvalidMaxFee
The given max fee is invalid.
Structs
Fee
Struct used to store fee information.
When `set` 'is true, the value is taken, otherwise it reverts to the default value. We need some indication here on whether the value is set or not, to differentiate between an uninitialized 0 and a real 0 fee.
Properties
set
bool
Whether the fee is set or not.
value
uint256
The fee value.
Last updated