Uniswap V3 Module
Config
protocol_module
=uniswap-v3
Registry
The available fields in the Uniswap V3 module to use in the infinit.registry.json
are as follows:
Field | Type | Description |
---|---|---|
uniswapV3Factory | string | Address of the Uniswap V3 Factory. |
nftDescriptor | string | Address of the NFT Descriptor. |
tickLens | string | Address of the Tick Lens. |
proxyAdmin | string | Address of the Proxy Admin. |
swapRouter02 | string | Address of the Swap Router 02. |
quoterV2 | string | Address of the Quoter V2. |
nonfungibleTokenPositionDescriptorImpl | string | Address of the Nonfungible Token Position Descriptor Implementation. |
nonfungibleTokenPositionDescriptor | string | Address of the Nonfungible Token Position Descriptor. |
nonfungiblePositionManager | string | Address of the Nonfungible Position Manager. |
uniswapV3Staker | string | Address of the Uniswap V3 Staker. |
permit2 | string | Address of the Permit2. |
universalRouter | string | Address of the Universal Router. |
unsupportedProtocol | string | Address of the Unsupported Protocol. |
Actions
The actions available in the @infinit-xyz/uniswap-v3/actions
are as follows:
import {
DeployUniswapV3Action,
DeployUniversalRouterAction,
CollectProtocolAction,
EnableFeeAmountsAction,
SetFactoryOwnerAction,
SetFeeProtocolAction,
TransferProxyAdminOwnerAction,
} from '@infinit-xyz/uniswap-v3/actions'
DeployUniswapV3Action
DeployUniswapV3Action
is an action that deploys the whole Uniswap V3 protocol smart contracts.
Parameters
Field | Type | Required | Description |
---|---|---|---|
nativeCurrencyLabel | string | Yes | Native currency label (e.g., ETH) |
proxyAdminOwner | Address | Yes | Address of the owner of the proxy admin |
factoryOwner | Address | Yes | Address of the owner of the factory |
wrappedNativeToken | Address | Yes | Address of the wrapped native token (e.g., WETH) |
uniswapV2Factory | Address | No | Address of the Uniswap V2 factory |
Signers
deployer
: The deployer of the protocol.
DeployUniversalRouterAction
DeployUniversalRouterAction
is an action that deploys the Universal Router (opens in a new tab)
Parameters
Field | Type | Required | Description |
---|---|---|---|
wrappedNativeToken | Address | Yes | Address of the wrapped native token (e.g., WETH) |
pairInitCodeHash | Hex | Yes | Hash of creation bytecode for Uniswap V2 pair |
poolInitCodeHash | Hex | Yes | Hash of creation bytecode for Uniswap V3 pool |
seaportV1_5 | Address | No | Address of the seaportV1_5 |
seaportV1_4 | Address | No | Address of the seaportV1_4 |
openseaConduit | Address | No | Address of the openseaConduit |
nftxZap | Address | No | Address of the nftxZap |
x2y2 | Address | No | Address of the x2y2 |
foundation | Address | No | Address of the foundation |
sudoswap | Address | No | Address of the sudoswap |
elementMarket | Address | No | Address of the elementMarket |
nft20Zap | Address | No | Address of the nft20Zap |
cryptopunks | Address | No | Address of the cryptopunks |
looksRareV2 | Address | No | Address of the looksRareV2 |
routerRewardsDistributor | Address | No | Address of the routerRewardsDistributor |
looksRareRewardsDistributor | Address | No | Address of the looksRareRewardsDistributor |
looksRareToken | Address | No | Address of the looksRareToken |
v2Factory | Address | No | Address of the v2Factory |
v3Factory | Address | No | Address of the v3Factory |
Signers
deployer
: The deployer of the Universal Router.
CollectProtocolAction
CollectProtocolAction
is an action that collects the protocol fees from the given pools.
Parameters
Field | Type | Required | Description |
---|---|---|---|
recipient | Address | Yes | The recipient's address for the collected fees. |
pools | Address[] | Yes | Array of pool addresses to collect fees from. |
Signers
factoryOwner
: The owner of the factory.
EnableFeeAmountsAction
EnableFeeAmountsAction
is an action that enables the fee amounts for the given pools.
Parameters
Field | Type | Required | Description |
---|---|---|---|
uniswapV3Factory | Address | Yes | Address of the Uniswap V3 factory |
feeAmounts | Array | Yes | Array of fee amounts and their tick spacings |
fee | number | Yes | Swap fee in hundredths of a bip (1e-6) (e.g., 3000 for 0.3%) |
tickSpacing | number | Yes | Tick spacing of the pool |
Signers
factoryOwner
: The owner of the factory.
SetFactoryOwnerAction
SetFactoryOwnerAction
is an action that sets the owner of the Uniswap V3 factory.
Parameters
Field | Type | Required | Description |
---|---|---|---|
uniswapV3Factory | Address | Yes | Address of the Uniswap V3 factory |
newOwner | Address | Yes | Address of the new owner of the factory |
Signers
factoryOwner
: The owner of the factory.
SetFeeProtocolAction
SetFeeProtocolAction
is an action that sets the fee protocol for the given pools.
Parameters
Field | Type | Required | Description |
---|---|---|---|
uniswapV3Factory | Address | Yes | Address of the Uniswap V3 factory |
feeProtocolInfos | Array | Yes | Array of pool addresses and their fee protocols |
feeProtocolInfos.pool | Address | Yes | Address of the Uniswap V3 pool |
feeProtocolInfos.feeProtocol0 | number | Yes | Fee protocol of pool's token0 (e.g., feeProtocol0 = 4 means fee protocol of token0 is 25%) |
feeProtocolInfos.feeProtocol1 | number | Yes | Fee protocol of pool's token1 (e.g., feeProtocol1 = 4 means fee protocol of token1 is 25%) |
Signers
factoryOwner
: The owner of the factory.
TransferProxyAdminOwnerAction
TransferProxyAdminOwnerAction
is an action that transfers the ownership of the Proxy Admin to a new address.
Field | Type | Required | Description |
---|---|---|---|
proxyAdmin | Address | Yes | Address of the proxy admin contract |
newOwner | Address | Yes | Address of the owner of the proxy admin |
Signers
proxyAdminOwner
: The owner of the proxy admin.