IArrakisPrivateVaultRouter
Functions
pause
function used to pause the router.
only callable by owner
function pause() external;
unpause
function used to unpause the router.
only callable by owner
function unpause() external;
addLiquidity
addLiquidity adds liquidity to meta vault of interest (mints L tokens)
function addLiquidity(
AddLiquidityData memory params_
) external payable;
Parameters
Name | Type | Description |
---|---|---|
params_ | AddLiquidityData | AddLiquidityData struct containing data for adding liquidity |
swapAndAddLiquidity
swapAndAddLiquidity transfer tokens to and calls RouterSwapExecutor
function swapAndAddLiquidity(
SwapAndAddData memory params_
)
external
payable
returns (uint256 amount0Diff, uint256 amount1Diff);
Parameters
Name | Type | Description |
---|---|---|
params_ | SwapAndAddData | SwapAndAddData struct containing data for swap |
Returns
Name | Type | Description |
---|---|---|
amount0Diff | uint256 | token0 balance difference post swap |
amount1Diff | uint256 | token1 balance difference post swap |
addLiquidityPermit2
addLiquidityPermit2 adds liquidity to public vault of interest (mints LP tokens)
function addLiquidityPermit2(
AddLiquidityPermit2Data memory params_
) external payable;
Parameters
Name | Type | Description |
---|---|---|
params_ | AddLiquidityPermit2Data | AddLiquidityPermit2Data struct containing data for adding liquidity |
swapAndAddLiquidityPermit2
swapAndAddLiquidityPermit2 transfer tokens to and calls RouterSwapExecutor
function swapAndAddLiquidityPermit2(
SwapAndAddPermit2Data memory params_
)
external
payable
returns (uint256 amount0Diff, uint256 amount1Diff);
Parameters
Name | Type | Description |
---|---|---|
params_ | SwapAndAddPermit2Data | SwapAndAddPermit2Data struct containing data for swap |
Returns
Name | Type | Description |
---|---|---|
amount0Diff | uint256 | token0 balance difference post swap |
amount1Diff | uint256 | token1 balance difference post swap |
wrapAndAddLiquidity
wrapAndAddLiquidity wrap eth and adds liquidity to meta vault of iPnterest (mints L tokens)
function wrapAndAddLiquidity(
AddLiquidityData memory params_
) external payable;
Parameters
Name | Type | Description |
---|---|---|
params_ | AddLiquidityData | AddLiquidityData struct containing data for adding liquidity |
wrapAndSwapAndAddLiquidity
wrapAndSwapAndAddLiquidity wrap eth and transfer tokens to and calls RouterSwapExecutor
function wrapAndSwapAndAddLiquidity(
SwapAndAddData memory params_
)
external
payable
returns (uint256 amount0Diff, uint256 amount1Diff);
Parameters
Name | Type | Description |
---|---|---|
params_ | SwapAndAddData | SwapAndAddData struct containing data for swap |
Returns
Name | Type | Description |
---|---|---|
amount0Diff | uint256 | token0 balance difference post swap |
amount1Diff | uint256 | token1 balance difference post swap |
wrapAndAddLiquidityPermit2
wrapAndAddLiquidityPermit2 wrap eth and adds liquidity to public vault of interest (mints LP tokens)
function wrapAndAddLiquidityPermit2(
AddLiquidityPermit2Data memory params_
) external payable;
Parameters
Name | Type | Description |
---|---|---|
params_ | AddLiquidityPermit2Data | AddLiquidityPermit2Data struct containing data for adding liquidity |
wrapAndSwapAndAddLiquidityPermit2
wrapAndSwapAndAddLiquidityPermit2 wrap eth and transfer tokens to and calls RouterSwapExecutor
function wrapAndSwapAndAddLiquidityPermit2(
SwapAndAddPermit2Data memory params_
)
external
payable
returns (uint256 amount0Diff, uint256 amount1Diff);
Parameters
Name | Type | Description |
---|---|---|
params_ | SwapAndAddPermit2Data | SwapAndAddPermit2Data struct containing data for swap |
Returns
Name | Type | Description |
---|---|---|
amount0Diff | uint256 | token0 balance difference post swap |
amount1Diff | uint256 | token1 balance difference post swap |
Events
Swapped
event emitted when a swap happen before depositing.
event Swapped(
bool zeroForOne,
uint256 amount0Diff,
uint256 amount1Diff,
uint256 amountOutSwap
);
Parameters
Name | Type | Description |
---|---|---|
zeroForOne | bool | boolean indicating if we are swap token0 to token1 or the inverse. |
amount0Diff | uint256 | amount of token0 get or consumed by the swap. |
amount1Diff | uint256 | amount of token1 get or consumed by the swap. |
amountOutSwap | uint256 | minimum amount of tokens out wanted after swap. |
Errors
AddressZero
error AddressZero();
NotEnoughNativeTokenSent
error NotEnoughNativeTokenSent();
OnlyPrivateVault
error OnlyPrivateVault();
OnlyDepositor
error OnlyDepositor();
RouterIsNotDepositor
error RouterIsNotDepositor();
EmptyAmounts
error EmptyAmounts();
LengthMismatch
error LengthMismatch();
Deposit0
error Deposit0();
Deposit1
error Deposit1();
MsgValueZero
error MsgValueZero();
NativeTokenNotSupported
error NativeTokenNotSupported();
MsgValueDTAmount
error MsgValueDTAmount();
NoWethToken
error NoWethToken();
Permit2WethNotAuthorized
error Permit2WethNotAuthorized();