SHOOK / OFFICIAL PROTOCOLDocumentation
MAINNET EDITIONOpen SHOOK

LiquidityVault

Complete compiled interface, including inherited methods.

Solidity 0.8.36+commit.8a079791 · Download ABI ↓ ·

Constructor 1

nonpayableconstructor(address, address, address, address, address)
{
  "type": "constructor",
  "inputs": [
    {
      "name": "poolManager_",
      "type": "address",
      "internalType": "contract IPoolManager"
    },
    {
      "name": "shook_",
      "type": "address",
      "internalType": "contract IProtocolToken"
    },
    {
      "name": "hook_",
      "type": "address",
      "internalType": "contract SHOOKVanillaHook"
    },
    {
      "name": "formationMarket_",
      "type": "address",
      "internalType": "address"
    },
    {
      "name": "reserveVault_",
      "type": "address",
      "internalType": "contract IReserveVault"
    }
  ],
  "stateMutability": "nonpayable"
}

Functions 29

payableactivatePermanentMarket(uint256)
{
  "type": "function",
  "name": "activatePermanentMarket",
  "inputs": [
    {
      "name": "shookAmount",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "outputs": [
    {
      "name": "surplusShook",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "payable"
}
viewactive()
{
  "type": "function",
  "name": "active",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "bool",
      "internalType": "bool"
    }
  ],
  "stateMutability": "view"
}
viewformationMarket()
{
  "type": "function",
  "name": "formationMarket",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "address",
      "internalType": "address"
    }
  ],
  "stateMutability": "view"
}
nonpayableharvestFees()
{
  "type": "function",
  "name": "harvestFees",
  "inputs": [],
  "outputs": [
    {
      "name": "reserveShookAmount",
      "type": "uint256",
      "internalType": "uint256"
    },
    {
      "name": "reserveEthAmount",
      "type": "uint256",
      "internalType": "uint256"
    },
    {
      "name": "creatorEthAmount",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "nonpayable"
}
viewhook()
{
  "type": "function",
  "name": "hook",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "address",
      "internalType": "contract SHOOKVanillaHook"
    }
  ],
  "stateMutability": "view"
}
viewlockedLiquidity()
{
  "type": "function",
  "name": "lockedLiquidity",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint128",
      "internalType": "uint128"
    }
  ],
  "stateMutability": "view"
}
viewLP_FEE()
{
  "type": "function",
  "name": "LP_FEE",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint24",
      "internalType": "uint24"
    }
  ],
  "stateMutability": "view"
}
viewMAX_SHOOK_ALLOCATION()
{
  "type": "function",
  "name": "MAX_SHOOK_ALLOCATION",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "view"
}
viewpoolId()
{
  "type": "function",
  "name": "poolId",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "bytes32",
      "internalType": "PoolId"
    }
  ],
  "stateMutability": "view"
}
viewpoolKey()
{
  "type": "function",
  "name": "poolKey",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "tuple",
      "internalType": "struct PoolKey",
      "components": [
        {
          "name": "currency0",
          "type": "address",
          "internalType": "Currency"
        },
        {
          "name": "currency1",
          "type": "address",
          "internalType": "Currency"
        },
        {
          "name": "fee",
          "type": "uint24",
          "internalType": "uint24"
        },
        {
          "name": "tickSpacing",
          "type": "int24",
          "internalType": "int24"
        },
        {
          "name": "hooks",
          "type": "address",
          "internalType": "contract IHooks"
        }
      ]
    }
  ],
  "stateMutability": "view"
}
viewpoolManager()
{
  "type": "function",
  "name": "poolManager",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "address",
      "internalType": "contract IPoolManager"
    }
  ],
  "stateMutability": "view"
}
viewRESERVE_NATIVE_FEES_STREAM()
{
  "type": "function",
  "name": "RESERVE_NATIVE_FEES_STREAM",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "bytes32",
      "internalType": "bytes32"
    }
  ],
  "stateMutability": "view"
}
viewRESERVE_PRINCIPAL_DUST_STREAM()
{
  "type": "function",
  "name": "RESERVE_PRINCIPAL_DUST_STREAM",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "bytes32",
      "internalType": "bytes32"
    }
  ],
  "stateMutability": "view"
}
viewRESERVE_SHOOK_FEES_STREAM()
{
  "type": "function",
  "name": "RESERVE_SHOOK_FEES_STREAM",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "bytes32",
      "internalType": "bytes32"
    }
  ],
  "stateMutability": "view"
}
viewreserveVault()
{
  "type": "function",
  "name": "reserveVault",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "address",
      "internalType": "contract IReserveVault"
    }
  ],
  "stateMutability": "view"
}
viewseedEthAmount()
{
  "type": "function",
  "name": "seedEthAmount",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "view"
}
viewseedShookAmount()
{
  "type": "function",
  "name": "seedShookAmount",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "view"
}
viewshook()
{
  "type": "function",
  "name": "shook",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "address",
      "internalType": "contract IProtocolToken"
    }
  ],
  "stateMutability": "view"
}
pureterminalPrice(uint256, uint256)
{
  "type": "function",
  "name": "terminalPrice",
  "inputs": [
    {
      "name": "shookAmount",
      "type": "uint256",
      "internalType": "uint256"
    },
    {
      "name": "ethAmount",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "outputs": [
    {
      "name": "",
      "type": "uint160",
      "internalType": "uint160"
    }
  ],
  "stateMutability": "pure"
}
viewterminalSqrtPriceX96()
{
  "type": "function",
  "name": "terminalSqrtPriceX96",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint160",
      "internalType": "uint160"
    }
  ],
  "stateMutability": "view"
}
viewTICK_SPACING()
{
  "type": "function",
  "name": "TICK_SPACING",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "int24",
      "internalType": "int24"
    }
  ],
  "stateMutability": "view"
}
viewtickLower()
{
  "type": "function",
  "name": "tickLower",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "int24",
      "internalType": "int24"
    }
  ],
  "stateMutability": "view"
}
viewtickUpper()
{
  "type": "function",
  "name": "tickUpper",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "int24",
      "internalType": "int24"
    }
  ],
  "stateMutability": "view"
}
viewtotalCreatorFeesEth()
{
  "type": "function",
  "name": "totalCreatorFeesEth",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "view"
}
viewtotalReserveFeesEth()
{
  "type": "function",
  "name": "totalReserveFeesEth",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "view"
}
viewtotalReserveFeesShook()
{
  "type": "function",
  "name": "totalReserveFeesShook",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "view"
}
viewtotalReservePrincipalDustEth()
{
  "type": "function",
  "name": "totalReservePrincipalDustEth",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "view"
}
viewtotalSurplusShookReturned()
{
  "type": "function",
  "name": "totalSurplusShookReturned",
  "inputs": [],
  "outputs": [
    {
      "name": "",
      "type": "uint256",
      "internalType": "uint256"
    }
  ],
  "stateMutability": "view"
}
nonpayableunlockCallback(bytes)
{
  "type": "function",
  "name": "unlockCallback",
  "inputs": [
    {
      "name": "data",
      "type": "bytes",
      "internalType": "bytes"
    }
  ],
  "outputs": [
    {
      "name": "result",
      "type": "bytes",
      "internalType": "bytes"
    }
  ],
  "stateMutability": "nonpayable"
}

Events 4

eventFeesHarvested(uint256, uint256, uint256)
{
  "type": "event",
  "name": "FeesHarvested",
  "inputs": [
    {
      "name": "reserveShookAmount",
      "type": "uint256",
      "indexed": false,
      "internalType": "uint256"
    },
    {
      "name": "reserveEthAmount",
      "type": "uint256",
      "indexed": false,
      "internalType": "uint256"
    },
    {
      "name": "creatorEthAmount",
      "type": "uint256",
      "indexed": false,
      "internalType": "uint256"
    }
  ],
  "anonymous": false
}
eventPermanentMarketActivated(bytes32, uint160, uint128, uint256, uint256)
{
  "type": "event",
  "name": "PermanentMarketActivated",
  "inputs": [
    {
      "name": "poolId",
      "type": "bytes32",
      "indexed": true,
      "internalType": "bytes32"
    },
    {
      "name": "sqrtPriceX96",
      "type": "uint160",
      "indexed": false,
      "internalType": "uint160"
    },
    {
      "name": "liquidity",
      "type": "uint128",
      "indexed": false,
      "internalType": "uint128"
    },
    {
      "name": "shookAmount",
      "type": "uint256",
      "indexed": false,
      "internalType": "uint256"
    },
    {
      "name": "ethAmount",
      "type": "uint256",
      "indexed": false,
      "internalType": "uint256"
    }
  ],
  "anonymous": false
}
eventPrincipalDustRouted(uint256, uint256)
{
  "type": "event",
  "name": "PrincipalDustRouted",
  "inputs": [
    {
      "name": "amount",
      "type": "uint256",
      "indexed": false,
      "internalType": "uint256"
    },
    {
      "name": "totalRouted",
      "type": "uint256",
      "indexed": false,
      "internalType": "uint256"
    }
  ],
  "anonymous": false
}
eventSurplusShookReturned(uint256, uint256)
{
  "type": "event",
  "name": "SurplusShookReturned",
  "inputs": [
    {
      "name": "amount",
      "type": "uint256",
      "indexed": false,
      "internalType": "uint256"
    },
    {
      "name": "totalReturned",
      "type": "uint256",
      "indexed": false,
      "internalType": "uint256"
    }
  ],
  "anonymous": false
}

Errors 15

errorAlreadyActive()
{
  "type": "error",
  "name": "AlreadyActive",
  "inputs": []
}
errorIncorrectPrincipal()
{
  "type": "error",
  "name": "IncorrectPrincipal",
  "inputs": []
}
errorInvalidDelta()
{
  "type": "error",
  "name": "InvalidDelta",
  "inputs": []
}
errorInvalidUnlock()
{
  "type": "error",
  "name": "InvalidUnlock",
  "inputs": []
}
errorNativeTransferFailed()
{
  "type": "error",
  "name": "NativeTransferFailed",
  "inputs": []
}
errorNativeTransferRejected()
{
  "type": "error",
  "name": "NativeTransferRejected",
  "inputs": []
}
errorNotActive()
{
  "type": "error",
  "name": "NotActive",
  "inputs": []
}
errorOnlyFormationMarket()
{
  "type": "error",
  "name": "OnlyFormationMarket",
  "inputs": []
}
errorOnlyPoolManager()
{
  "type": "error",
  "name": "OnlyPoolManager",
  "inputs": []
}
errorReentrancyGuardReentrantCall()
{
  "type": "error",
  "name": "ReentrancyGuardReentrantCall",
  "inputs": []
}
errorSafeCastOverflowedIntToUint(int256)
{
  "type": "error",
  "name": "SafeCastOverflowedIntToUint",
  "inputs": [
    {
      "name": "value",
      "type": "int256",
      "internalType": "int256"
    }
  ]
}
errorSafeCastOverflowedUintDowncast(uint8, uint256)
{
  "type": "error",
  "name": "SafeCastOverflowedUintDowncast",
  "inputs": [
    {
      "name": "bits",
      "type": "uint8",
      "internalType": "uint8"
    },
    {
      "name": "value",
      "type": "uint256",
      "internalType": "uint256"
    }
  ]
}
errorSafeCastOverflowedUintToInt(uint256)
{
  "type": "error",
  "name": "SafeCastOverflowedUintToInt",
  "inputs": [
    {
      "name": "value",
      "type": "uint256",
      "internalType": "uint256"
    }
  ]
}
errorSafeERC20FailedOperation(address)
{
  "type": "error",
  "name": "SafeERC20FailedOperation",
  "inputs": [
    {
      "name": "token",
      "type": "address",
      "internalType": "address"
    }
  ]
}
errorZeroAddress()
{
  "type": "error",
  "name": "ZeroAddress",
  "inputs": []
}

Receive 1

payablereceive()
{
  "type": "receive",
  "stateMutability": "payable"
}

Source and provenance

Imported source files 42

Supporting contracts, interfaces, and libraries imported by the sources above, including their dependencies.

Source fingerprint: 3aa777a77b99551fc33720bc204c6478a4fb635d09b135d6a09dced54b06a637. Download manifest.