Withdraw Reserved Liquidity
Withdraw reserved liquidity
This can be called by the user directly, it uses msg.sender context. Users can withdraw liquidity if it is available and their cooldown is over.
function withdrawReserveLiquidity(bytes calldata _reserveLiquidityParam) external whenNotPaused;
Parameters
Name
Type
Description
_reserveLiquidityParam
bytes
The data required for withdraw reserved liquidity.
The `_reserveLiquidityParam
` parameter has to be constructed the following way:
struct BurnPositionParams {
IUniswapV3Pool pool;
address hook;
int24 tickLower;
int24 tickUpper;
uint128 shares;
}
bytes memory _reserveLiquidityParam = abi.encode(
_params.pool,
_params.hook,
_params.tickLower,
_params.tickUpper,
_params.shares
);
// To decode:
BurnPositionParams memory decodedParams = abi.decode(encodedData, (BurnPositionParams));
BurnPositionParams Struct
Field Name
Type
Description
pool
IUniswapV3Pool
The Uniswap V3 pool contract
hook
address
The address of the hook contract
tickLower
int24
The lower tick of the position
tickUpper
int24
The upper tick of the position
shares
uint128
The amount of shares to burn
Last updated
Was this helpful?