ITaxController
This interface defines the external functions of the TaxController contract. It provides a standard way for other contracts, like the ParityTaxHook, to interact with the fee collection and distribution logic.
Functions
collectFeeRevenue(PoolKey calldata key, bytes32 positionKey, BalanceDelta feeDelta): Called to collect fees from JIT providers.distributeFeeRevenue(PoolKey calldata key, bytes32 positionKey): Called by PLPs to claim their share of collected fee revenue.updateTaxAccount(bytes32 positionKey, PoolKey memory poolKey, BalanceDelta feeDelta, TimeCommitment enteredTimeCommitment): Updates the time commitment of a position.
Events
TaxRevenueCollected(PoolId indexed poolId, bytes32 indexed positionKeyTaxee, uint128 feeDeltaAmount0, uint128 feeDeltaAmount1): Emitted when fees are collected from a JIT provider.TaxRevenueDistributed(PoolId indexed poolId, bytes32 indexed positionKeyReceiver, uint128 feeDeltaAmount0, uint128 feeDeltaAmount1): Emitted when fee revenue is distributed to a PLP.
Errors
InvalidTimeCommitment___ActionOnlyAvailableToPLP(): Reverts if a function restricted to PLPs is called by a non-PLP.InvalidTimeCommitment___ActionOnlyAvailableToJIT(): Reverts if a function restricted to JITs is called by a non-JIT.InvalidTimeCommitment___PositionIsNotWithdrawableYet(): Reverts if a PLP attempts to withdraw rewards before their time commitment has expired.
Last updated
