timelock-sdk 0.0.6 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client.cjs +56 -0
- package/dist/client.cjs.map +1 -0
- package/dist/client.d.cts +28800 -0
- package/dist/client.d.ts +28800 -0
- package/dist/client.js +56 -0
- package/dist/client.js.map +1 -0
- package/dist/index-CCFK8AUb.d.cts +38889 -0
- package/dist/index-sG69Fv-T.d.ts +38889 -0
- package/dist/numberUtils-DB5N1e6G.js +2 -0
- package/dist/numberUtils-DB5N1e6G.js.map +1 -0
- package/dist/numberUtils-DRGhFDHZ.cjs +2 -0
- package/dist/numberUtils-DRGhFDHZ.cjs.map +1 -0
- package/dist/package.cjs +1 -56
- package/dist/package.d.cts +2 -67683
- package/dist/package.d.ts +2 -67683
- package/dist/package.js +1 -56
- package/package.json +11 -1
- package/dist/package.cjs.map +0 -1
- package/dist/package.js.map +0 -1
package/dist/package.cjs
CHANGED
|
@@ -1,56 +1 @@
|
|
|
1
|
-
"use client";var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let c=require(`react`);c=s(c);let l=require(`wagmi`);l=s(l);let u=require(`graphql-request`);u=s(u);let d=require(`viem`);d=s(d);let f=require(`viem/chains`);f=s(f);let p=require(`graphql-tag`);p=s(p);let m=require(`viem/actions`);m=s(m);let h=require(`big.js`);h=s(h);let g=require(`@tanstack/react-query`);g=s(g);let _=require(`@uniswap/v3-sdk`);_=s(_);let v=require(`jsbi`);v=s(v);const y=[{type:`constructor`,inputs:[{name:`name_`,type:`string`,internalType:`string`},{name:`symbol_`,type:`string`,internalType:`string`}],stateMutability:`nonpayable`},{type:`function`,name:`allowance`,inputs:[{name:`owner`,type:`address`,internalType:`address`},{name:`spender`,type:`address`,internalType:`address`}],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`approve`,inputs:[{name:`spender`,type:`address`,internalType:`address`},{name:`amount`,type:`uint256`,internalType:`uint256`}],outputs:[{name:``,type:`bool`,internalType:`bool`}],stateMutability:`nonpayable`},{type:`function`,name:`balanceOf`,inputs:[{name:`account`,type:`address`,internalType:`address`}],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`decimals`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`decreaseAllowance`,inputs:[{name:`spender`,type:`address`,internalType:`address`},{name:`subtractedValue`,type:`uint256`,internalType:`uint256`}],outputs:[{name:``,type:`bool`,internalType:`bool`}],stateMutability:`nonpayable`},{type:`function`,name:`increaseAllowance`,inputs:[{name:`spender`,type:`address`,internalType:`address`},{name:`addedValue`,type:`uint256`,internalType:`uint256`}],outputs:[{name:``,type:`bool`,internalType:`bool`}],stateMutability:`nonpayable`},{type:`function`,name:`name`,inputs:[],outputs:[{name:``,type:`string`,internalType:`string`}],stateMutability:`view`},{type:`function`,name:`symbol`,inputs:[],outputs:[{name:``,type:`string`,internalType:`string`}],stateMutability:`view`},{type:`function`,name:`totalSupply`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`transfer`,inputs:[{name:`to`,type:`address`,internalType:`address`},{name:`amount`,type:`uint256`,internalType:`uint256`}],outputs:[{name:``,type:`bool`,internalType:`bool`}],stateMutability:`nonpayable`},{type:`function`,name:`transferFrom`,inputs:[{name:`from`,type:`address`,internalType:`address`},{name:`to`,type:`address`,internalType:`address`},{name:`amount`,type:`uint256`,internalType:`uint256`}],outputs:[{name:``,type:`bool`,internalType:`bool`}],stateMutability:`nonpayable`},{type:`event`,name:`Approval`,inputs:[{name:`owner`,type:`address`,indexed:!0,internalType:`address`},{name:`spender`,type:`address`,indexed:!0,internalType:`address`},{name:`value`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Transfer`,inputs:[{name:`from`,type:`address`,indexed:!0,internalType:`address`},{name:`to`,type:`address`,indexed:!0,internalType:`address`},{name:`value`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1}],b=[{type:`function`,name:`burn`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`amount`,type:`uint128`,internalType:`uint128`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`collect`,inputs:[{name:`recipient`,type:`address`,internalType:`address`},{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`amount0Requested`,type:`uint128`,internalType:`uint128`},{name:`amount1Requested`,type:`uint128`,internalType:`uint128`}],outputs:[{name:`amount0`,type:`uint128`,internalType:`uint128`},{name:`amount1`,type:`uint128`,internalType:`uint128`}],stateMutability:`nonpayable`},{type:`function`,name:`collectProtocol`,inputs:[{name:`recipient`,type:`address`,internalType:`address`},{name:`amount0Requested`,type:`uint128`,internalType:`uint128`},{name:`amount1Requested`,type:`uint128`,internalType:`uint128`}],outputs:[{name:`amount0`,type:`uint128`,internalType:`uint128`},{name:`amount1`,type:`uint128`,internalType:`uint128`}],stateMutability:`nonpayable`},{type:`function`,name:`factory`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`fee`,inputs:[],outputs:[{name:``,type:`uint24`,internalType:`uint24`}],stateMutability:`view`},{type:`function`,name:`feeGrowthGlobal0X128`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`feeGrowthGlobal1X128`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`flash`,inputs:[{name:`recipient`,type:`address`,internalType:`address`},{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`},{name:`data`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`increaseObservationCardinalityNext`,inputs:[{name:`observationCardinalityNext`,type:`uint16`,internalType:`uint16`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`initialize`,inputs:[{name:`sqrtPriceX96`,type:`uint160`,internalType:`uint160`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`liquidity`,inputs:[],outputs:[{name:``,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`maxLiquidityPerTick`,inputs:[],outputs:[{name:``,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`mint`,inputs:[{name:`recipient`,type:`address`,internalType:`address`},{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`amount`,type:`uint128`,internalType:`uint128`},{name:`data`,type:`bytes`,internalType:`bytes`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`observations`,inputs:[{name:`index`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`blockTimestamp`,type:`uint32`,internalType:`uint32`},{name:`tickCumulative`,type:`int56`,internalType:`int56`},{name:`secondsPerLiquidityCumulativeX128`,type:`uint160`,internalType:`uint160`},{name:`initialized`,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`observe`,inputs:[{name:`secondsAgos`,type:`uint32[]`,internalType:`uint32[]`}],outputs:[{name:`tickCumulatives`,type:`int56[]`,internalType:`int56[]`},{name:`secondsPerLiquidityCumulativeX128s`,type:`uint160[]`,internalType:`uint160[]`}],stateMutability:`view`},{type:`function`,name:`positions`,inputs:[{name:`key`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:`liquidity`,type:`uint128`,internalType:`uint128`},{name:`feeGrowthInside0LastX128`,type:`uint256`,internalType:`uint256`},{name:`feeGrowthInside1LastX128`,type:`uint256`,internalType:`uint256`},{name:`tokensOwed0`,type:`uint128`,internalType:`uint128`},{name:`tokensOwed1`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`protocolFees`,inputs:[],outputs:[{name:`token0`,type:`uint128`,internalType:`uint128`},{name:`token1`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`setFeeProtocol`,inputs:[{name:`feeProtocol0`,type:`uint8`,internalType:`uint8`},{name:`feeProtocol1`,type:`uint8`,internalType:`uint8`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`slot0`,inputs:[],outputs:[{name:`sqrtPriceX96`,type:`uint160`,internalType:`uint160`},{name:`tick`,type:`int24`,internalType:`int24`},{name:`observationIndex`,type:`uint16`,internalType:`uint16`},{name:`observationCardinality`,type:`uint16`,internalType:`uint16`},{name:`observationCardinalityNext`,type:`uint16`,internalType:`uint16`},{name:`feeProtocol`,type:`uint8`,internalType:`uint8`},{name:`unlocked`,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`snapshotCumulativesInside`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`}],outputs:[{name:`tickCumulativeInside`,type:`int56`,internalType:`int56`},{name:`secondsPerLiquidityInsideX128`,type:`uint160`,internalType:`uint160`},{name:`secondsInside`,type:`uint32`,internalType:`uint32`}],stateMutability:`view`},{type:`function`,name:`swap`,inputs:[{name:`recipient`,type:`address`,internalType:`address`},{name:`zeroForOne`,type:`bool`,internalType:`bool`},{name:`amountSpecified`,type:`int256`,internalType:`int256`},{name:`sqrtPriceLimitX96`,type:`uint160`,internalType:`uint160`},{name:`data`,type:`bytes`,internalType:`bytes`}],outputs:[{name:`amount0`,type:`int256`,internalType:`int256`},{name:`amount1`,type:`int256`,internalType:`int256`}],stateMutability:`nonpayable`},{type:`function`,name:`tickBitmap`,inputs:[{name:`wordPosition`,type:`int16`,internalType:`int16`}],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`tickSpacing`,inputs:[],outputs:[{name:``,type:`int24`,internalType:`int24`}],stateMutability:`view`},{type:`function`,name:`ticks`,inputs:[{name:`tick`,type:`int24`,internalType:`int24`}],outputs:[{name:`liquidityGross`,type:`uint128`,internalType:`uint128`},{name:`liquidityNet`,type:`int128`,internalType:`int128`},{name:`feeGrowthOutside0X128`,type:`uint256`,internalType:`uint256`},{name:`feeGrowthOutside1X128`,type:`uint256`,internalType:`uint256`},{name:`tickCumulativeOutside`,type:`int56`,internalType:`int56`},{name:`secondsPerLiquidityOutsideX128`,type:`uint160`,internalType:`uint160`},{name:`secondsOutside`,type:`uint32`,internalType:`uint32`},{name:`initialized`,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`token0`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`token1`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`event`,name:`Burn`,inputs:[{name:`owner`,type:`address`,indexed:!0,internalType:`address`},{name:`tickLower`,type:`int24`,indexed:!0,internalType:`int24`},{name:`tickUpper`,type:`int24`,indexed:!0,internalType:`int24`},{name:`amount`,type:`uint128`,indexed:!1,internalType:`uint128`},{name:`amount0`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`amount1`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Collect`,inputs:[{name:`owner`,type:`address`,indexed:!0,internalType:`address`},{name:`recipient`,type:`address`,indexed:!1,internalType:`address`},{name:`tickLower`,type:`int24`,indexed:!0,internalType:`int24`},{name:`tickUpper`,type:`int24`,indexed:!0,internalType:`int24`},{name:`amount0`,type:`uint128`,indexed:!1,internalType:`uint128`},{name:`amount1`,type:`uint128`,indexed:!1,internalType:`uint128`}],anonymous:!1},{type:`event`,name:`CollectProtocol`,inputs:[{name:`sender`,type:`address`,indexed:!0,internalType:`address`},{name:`recipient`,type:`address`,indexed:!0,internalType:`address`},{name:`amount0`,type:`uint128`,indexed:!1,internalType:`uint128`},{name:`amount1`,type:`uint128`,indexed:!1,internalType:`uint128`}],anonymous:!1},{type:`event`,name:`Flash`,inputs:[{name:`sender`,type:`address`,indexed:!0,internalType:`address`},{name:`recipient`,type:`address`,indexed:!0,internalType:`address`},{name:`amount0`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`amount1`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`paid0`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`paid1`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`IncreaseObservationCardinalityNext`,inputs:[{name:`observationCardinalityNextOld`,type:`uint16`,indexed:!1,internalType:`uint16`},{name:`observationCardinalityNextNew`,type:`uint16`,indexed:!1,internalType:`uint16`}],anonymous:!1},{type:`event`,name:`Initialize`,inputs:[{name:`sqrtPriceX96`,type:`uint160`,indexed:!1,internalType:`uint160`},{name:`tick`,type:`int24`,indexed:!1,internalType:`int24`}],anonymous:!1},{type:`event`,name:`Mint`,inputs:[{name:`sender`,type:`address`,indexed:!1,internalType:`address`},{name:`owner`,type:`address`,indexed:!0,internalType:`address`},{name:`tickLower`,type:`int24`,indexed:!0,internalType:`int24`},{name:`tickUpper`,type:`int24`,indexed:!0,internalType:`int24`},{name:`amount`,type:`uint128`,indexed:!1,internalType:`uint128`},{name:`amount0`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`amount1`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`SetFeeProtocol`,inputs:[{name:`feeProtocol0Old`,type:`uint8`,indexed:!1,internalType:`uint8`},{name:`feeProtocol1Old`,type:`uint8`,indexed:!1,internalType:`uint8`},{name:`feeProtocol0New`,type:`uint8`,indexed:!1,internalType:`uint8`},{name:`feeProtocol1New`,type:`uint8`,indexed:!1,internalType:`uint8`}],anonymous:!1},{type:`event`,name:`Swap`,inputs:[{name:`sender`,type:`address`,indexed:!0,internalType:`address`},{name:`recipient`,type:`address`,indexed:!0,internalType:`address`},{name:`amount0`,type:`int256`,indexed:!1,internalType:`int256`},{name:`amount1`,type:`int256`,indexed:!1,internalType:`int256`},{name:`sqrtPriceX96`,type:`uint160`,indexed:!1,internalType:`uint160`},{name:`liquidity`,type:`uint128`,indexed:!1,internalType:`uint128`},{name:`tick`,type:`int24`,indexed:!1,internalType:`int24`}],anonymous:!1},{type:`error`,name:`AI`,inputs:[]},{type:`error`,name:`AS`,inputs:[]},{type:`error`,name:`F0`,inputs:[]},{type:`error`,name:`F1`,inputs:[]},{type:`error`,name:`IIA`,inputs:[]},{type:`error`,name:`L`,inputs:[]},{type:`error`,name:`LOK`,inputs:[]},{type:`error`,name:`M0`,inputs:[]},{type:`error`,name:`M1`,inputs:[]},{type:`error`,name:`TLM`,inputs:[]},{type:`error`,name:`TLU`,inputs:[]},{type:`error`,name:`TUM`,inputs:[]}],x=[{type:`function`,name:`batchGetAmount0ForLiquidity`,inputs:[{name:`sqrtRatioAX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`sqrtRatioBX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`liquidity`,type:`uint128[]`,internalType:`uint128[]`}],outputs:[{name:`amounts0`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetAmount0ForLiquidityTicks`,inputs:[{name:`tickA`,type:`int24[]`,internalType:`int24[]`},{name:`tickB`,type:`int24[]`,internalType:`int24[]`},{name:`liquidity`,type:`uint128[]`,internalType:`uint128[]`}],outputs:[{name:`amounts0`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetAmount1ForLiquidity`,inputs:[{name:`sqrtRatioAX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`sqrtRatioBX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`liquidity`,type:`uint128[]`,internalType:`uint128[]`}],outputs:[{name:`amounts1`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetAmount1ForLiquidityTicks`,inputs:[{name:`tickA`,type:`int24[]`,internalType:`int24[]`},{name:`tickB`,type:`int24[]`,internalType:`int24[]`},{name:`liquidity`,type:`uint128[]`,internalType:`uint128[]`}],outputs:[{name:`amounts1`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetAmountsForLiquidity`,inputs:[{name:`sqrtRatioX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`sqrtRatioAX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`sqrtRatioBX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`liquidity`,type:`uint128[]`,internalType:`uint128[]`}],outputs:[{name:`amounts0`,type:`uint256[]`,internalType:`uint256[]`},{name:`amounts1`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetAmountsForLiquidityTicks`,inputs:[{name:`tick`,type:`int24[]`,internalType:`int24[]`},{name:`tickA`,type:`int24[]`,internalType:`int24[]`},{name:`tickB`,type:`int24[]`,internalType:`int24[]`},{name:`liquidity`,type:`uint128[]`,internalType:`uint128[]`}],outputs:[{name:`amounts0`,type:`uint256[]`,internalType:`uint256[]`},{name:`amounts1`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetLiquidityForAmount0`,inputs:[{name:`sqrtRatioAX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`sqrtRatioBX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`amount0`,type:`uint256[]`,internalType:`uint256[]`}],outputs:[{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetLiquidityForAmount0Ticks`,inputs:[{name:`tickA`,type:`int24[]`,internalType:`int24[]`},{name:`tickB`,type:`int24[]`,internalType:`int24[]`},{name:`amount0`,type:`uint256[]`,internalType:`uint256[]`}],outputs:[{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetLiquidityForAmount1`,inputs:[{name:`sqrtRatioAX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`sqrtRatioBX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`amount1`,type:`uint256[]`,internalType:`uint256[]`}],outputs:[{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetLiquidityForAmount1Ticks`,inputs:[{name:`tickA`,type:`int24[]`,internalType:`int24[]`},{name:`tickB`,type:`int24[]`,internalType:`int24[]`},{name:`amount1`,type:`uint256[]`,internalType:`uint256[]`}],outputs:[{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetLiquidityForAmounts`,inputs:[{name:`sqrtRatioX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`sqrtRatioAX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`sqrtRatioBX96`,type:`uint160[]`,internalType:`uint160[]`},{name:`amount0`,type:`uint256[]`,internalType:`uint256[]`},{name:`amount1`,type:`uint256[]`,internalType:`uint256[]`}],outputs:[{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetLiquidityForAmountsTicks`,inputs:[{name:`tick`,type:`int24[]`,internalType:`int24[]`},{name:`tickA`,type:`int24[]`,internalType:`int24[]`},{name:`tickB`,type:`int24[]`,internalType:`int24[]`},{name:`amount0`,type:`uint256[]`,internalType:`uint256[]`},{name:`amount1`,type:`uint256[]`,internalType:`uint256[]`}],outputs:[{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}],stateMutability:`pure`},{type:`function`,name:`batchGetPriceAtTick`,inputs:[{name:`ticks`,type:`int24[]`,internalType:`int24[]`}],outputs:[{name:`prices`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`pure`},{type:`function`,name:`getAmount0ForLiquidity`,inputs:[{name:`sqrtRatioAX96`,type:`uint160`,internalType:`uint160`},{name:`sqrtRatioBX96`,type:`uint160`,internalType:`uint160`},{name:`liquidity`,type:`uint128`,internalType:`uint128`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`}],stateMutability:`pure`},{type:`function`,name:`getAmount0ForLiquidityTicks`,inputs:[{name:`tickA`,type:`int24`,internalType:`int24`},{name:`tickB`,type:`int24`,internalType:`int24`},{name:`liquidity`,type:`uint128`,internalType:`uint128`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`}],stateMutability:`pure`},{type:`function`,name:`getAmount1ForLiquidity`,inputs:[{name:`sqrtRatioAX96`,type:`uint160`,internalType:`uint160`},{name:`sqrtRatioBX96`,type:`uint160`,internalType:`uint160`},{name:`liquidity`,type:`uint128`,internalType:`uint128`}],outputs:[{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`pure`},{type:`function`,name:`getAmount1ForLiquidityTicks`,inputs:[{name:`tickA`,type:`int24`,internalType:`int24`},{name:`tickB`,type:`int24`,internalType:`int24`},{name:`liquidity`,type:`uint128`,internalType:`uint128`}],outputs:[{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`pure`},{type:`function`,name:`getAmountsForLiquidity`,inputs:[{name:`sqrtRatioX96`,type:`uint160`,internalType:`uint160`},{name:`sqrtRatioAX96`,type:`uint160`,internalType:`uint160`},{name:`sqrtRatioBX96`,type:`uint160`,internalType:`uint160`},{name:`liquidity`,type:`uint128`,internalType:`uint128`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`pure`},{type:`function`,name:`getAmountsForLiquidityTicks`,inputs:[{name:`tick`,type:`int24`,internalType:`int24`},{name:`tickA`,type:`int24`,internalType:`int24`},{name:`tickB`,type:`int24`,internalType:`int24`},{name:`liquidity`,type:`uint128`,internalType:`uint128`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`pure`},{type:`function`,name:`getLiquidityForAmount0`,inputs:[{name:`sqrtRatioAX96`,type:`uint160`,internalType:`uint160`},{name:`sqrtRatioBX96`,type:`uint160`,internalType:`uint160`},{name:`amount0`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`liquidity`,type:`uint128`,internalType:`uint128`}],stateMutability:`pure`},{type:`function`,name:`getLiquidityForAmount0Ticks`,inputs:[{name:`tickA`,type:`int24`,internalType:`int24`},{name:`tickB`,type:`int24`,internalType:`int24`},{name:`amount0`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`liquidity`,type:`uint128`,internalType:`uint128`}],stateMutability:`pure`},{type:`function`,name:`getLiquidityForAmount1`,inputs:[{name:`sqrtRatioAX96`,type:`uint160`,internalType:`uint160`},{name:`sqrtRatioBX96`,type:`uint160`,internalType:`uint160`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`liquidity`,type:`uint128`,internalType:`uint128`}],stateMutability:`pure`},{type:`function`,name:`getLiquidityForAmount1Ticks`,inputs:[{name:`tickA`,type:`int24`,internalType:`int24`},{name:`tickB`,type:`int24`,internalType:`int24`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`liquidity`,type:`uint128`,internalType:`uint128`}],stateMutability:`pure`},{type:`function`,name:`getLiquidityForAmounts`,inputs:[{name:`sqrtRatioX96`,type:`uint160`,internalType:`uint160`},{name:`sqrtRatioAX96`,type:`uint160`,internalType:`uint160`},{name:`sqrtRatioBX96`,type:`uint160`,internalType:`uint160`},{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`liquidity`,type:`uint128`,internalType:`uint128`}],stateMutability:`pure`},{type:`function`,name:`getLiquidityForAmountsTicks`,inputs:[{name:`tick`,type:`int24`,internalType:`int24`},{name:`tickA`,type:`int24`,internalType:`int24`},{name:`tickB`,type:`int24`,internalType:`int24`},{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`liquidity`,type:`uint128`,internalType:`uint128`}],stateMutability:`pure`},{type:`function`,name:`getPriceAtTick`,inputs:[{name:`tick`,type:`int24`,internalType:`int24`}],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`pure`}],S=[{type:`function`,name:`batchGetRefTick`,inputs:[{name:`vault`,type:`address`,internalType:`contract TimelockSingleOwnerVault`},{name:`tickLower`,type:`int24[]`,internalType:`int24[]`}],outputs:[{name:`refTicks`,type:`int24[]`,internalType:`int24[]`}],stateMutability:`view`},{type:`function`,name:`getAllBlocks`,inputs:[{name:`vault`,type:`address`,internalType:`contract TimelockVaultCore`}],outputs:[{name:`blocks`,type:`tuple[]`,internalType:`struct TimelockLens.LiquidityBlockData[]`,components:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`prevTickLower`,type:`int24`,internalType:`int24`},{name:`totalLiquidity`,type:`uint128`,internalType:`uint128`},{name:`borrowedLiquidity`,type:`uint128`,internalType:`uint128`},{name:`totalAmount0`,type:`uint256`,internalType:`uint256`},{name:`totalAmount1`,type:`uint256`,internalType:`uint256`},{name:`borrowedAmount0`,type:`uint256`,internalType:`uint256`},{name:`borrowedAmount1`,type:`uint256`,internalType:`uint256`}]}],stateMutability:`view`},{type:`function`,name:`getExpiredOptions`,inputs:[{name:`market`,type:`address`,internalType:`contract TimelockOptionsMarket`},{name:`startId`,type:`uint256`,internalType:`uint256`},{name:`limit`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`expiredOptions`,type:`tuple[]`,internalType:`struct TimelockLens.OptionData[]`,components:[{name:`optionId`,type:`uint256`,internalType:`uint256`},{name:`owner`,type:`address`,internalType:`address`},{name:`optionType`,type:`uint8`,internalType:`uint8`},{name:`leftTick`,type:`int24`,internalType:`int24`},{name:`strikeTick`,type:`int24`,internalType:`int24`},{name:`entryTick`,type:`int24`,internalType:`int24`},{name:`strikePrice`,type:`uint256`,internalType:`uint256`},{name:`entryPrice`,type:`uint256`,internalType:`uint256`},{name:`optionAssetBorrowed`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetBorrowed`,type:`uint256`,internalType:`uint256`},{name:`optionAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`positionSize`,type:`uint256`,internalType:`uint256`},{name:`netOptionAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`premiumPaid`,type:`uint128`,internalType:`uint128`},{name:`expiresAt`,type:`uint64`,internalType:`uint64`},{name:`createdAt`,type:`uint64`,internalType:`uint64`},{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}]},{name:`nextStartId`,type:`uint256`,internalType:`uint256`},{name:`hasMore`,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`getLiquidityAtTick`,inputs:[{name:`vault`,type:`address`,internalType:`contract TimelockSingleOwnerVault`},{name:`tickLower`,type:`int24`,internalType:`int24`}],outputs:[{name:`totalLiquidity`,type:`uint128`,internalType:`uint128`},{name:`borrowedLiquidity`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`getMarketData`,inputs:[{name:`market`,type:`address`,internalType:`contract TimelockOptionsMarket`}],outputs:[{name:`marketData`,type:`tuple`,internalType:`struct TimelockLens.TimelockMarketData`,components:[{name:`optionAssetIsToken0`,type:`bool`,internalType:`bool`},{name:`vault`,type:`address`,internalType:`contract ITimelockVault`},{name:`pool`,type:`address`,internalType:`contract IUniswapV3Pool`},{name:`optionAsset`,type:`address`,internalType:`address`},{name:`payoutAsset`,type:`address`,internalType:`address`},{name:`optionAssetDecimals`,type:`uint8`,internalType:`uint8`},{name:`payoutAssetDecimals`,type:`uint8`,internalType:`uint8`},{name:`optionAssetSymbol`,type:`string`,internalType:`string`},{name:`payoutAssetSymbol`,type:`string`,internalType:`string`},{name:`optionAssetName`,type:`string`,internalType:`string`},{name:`payoutAssetName`,type:`string`,internalType:`string`},{name:`optionsCount`,type:`uint256`,internalType:`uint256`}]}],stateMutability:`view`},{type:`function`,name:`getMaxPositionSize`,inputs:[{name:`market`,type:`address`,internalType:`contract TimelockOptionsMarket`},{name:`strikeTick`,type:`int24`,internalType:`int24`},{name:`maxBorrowableRange`,type:`int24`,internalType:`int24`}],outputs:[{name:`maxCallSize`,type:`uint256`,internalType:`uint256`},{name:`maxPutSize`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`getMaxPositionSizeAtCurrentTick`,inputs:[{name:`market`,type:`address`,internalType:`contract TimelockOptionsMarket`},{name:`maxBorrowableRange`,type:`int24`,internalType:`int24`}],outputs:[{name:`maxCallSize`,type:`uint256`,internalType:`uint256`},{name:`maxPutSize`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`getOptionData`,inputs:[{name:`market`,type:`address`,internalType:`contract TimelockOptionsMarket`},{name:`optionId`,type:`uint256`,internalType:`uint256`}],outputs:[{name:``,type:`tuple`,internalType:`struct TimelockLens.OptionData`,components:[{name:`optionId`,type:`uint256`,internalType:`uint256`},{name:`owner`,type:`address`,internalType:`address`},{name:`optionType`,type:`uint8`,internalType:`uint8`},{name:`leftTick`,type:`int24`,internalType:`int24`},{name:`strikeTick`,type:`int24`,internalType:`int24`},{name:`entryTick`,type:`int24`,internalType:`int24`},{name:`strikePrice`,type:`uint256`,internalType:`uint256`},{name:`entryPrice`,type:`uint256`,internalType:`uint256`},{name:`optionAssetBorrowed`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetBorrowed`,type:`uint256`,internalType:`uint256`},{name:`optionAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`positionSize`,type:`uint256`,internalType:`uint256`},{name:`netOptionAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`premiumPaid`,type:`uint128`,internalType:`uint128`},{name:`expiresAt`,type:`uint64`,internalType:`uint64`},{name:`createdAt`,type:`uint64`,internalType:`uint64`},{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}]}],stateMutability:`view`},{type:`function`,name:`getOptionsData`,inputs:[{name:`market`,type:`address`,internalType:`contract TimelockOptionsMarket`},{name:`optionIds`,type:`uint256[]`,internalType:`uint256[]`}],outputs:[{name:`optionsData`,type:`tuple[]`,internalType:`struct TimelockLens.OptionData[]`,components:[{name:`optionId`,type:`uint256`,internalType:`uint256`},{name:`owner`,type:`address`,internalType:`address`},{name:`optionType`,type:`uint8`,internalType:`uint8`},{name:`leftTick`,type:`int24`,internalType:`int24`},{name:`strikeTick`,type:`int24`,internalType:`int24`},{name:`entryTick`,type:`int24`,internalType:`int24`},{name:`strikePrice`,type:`uint256`,internalType:`uint256`},{name:`entryPrice`,type:`uint256`,internalType:`uint256`},{name:`optionAssetBorrowed`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetBorrowed`,type:`uint256`,internalType:`uint256`},{name:`optionAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`positionSize`,type:`uint256`,internalType:`uint256`},{name:`netOptionAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`premiumPaid`,type:`uint128`,internalType:`uint128`},{name:`expiresAt`,type:`uint64`,internalType:`uint64`},{name:`createdAt`,type:`uint64`,internalType:`uint64`},{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}]}],stateMutability:`view`},{type:`function`,name:`getPoolData`,inputs:[{name:`pool`,type:`address`,internalType:`contract IUniswapV3Pool`}],outputs:[{name:`poolData`,type:`tuple`,internalType:`struct TimelockLens.UniswapPoolData`,components:[{name:`token0`,type:`address`,internalType:`address`},{name:`token1`,type:`address`,internalType:`address`},{name:`token0Decimals`,type:`uint8`,internalType:`uint8`},{name:`token1Decimals`,type:`uint8`,internalType:`uint8`},{name:`token0Symbol`,type:`string`,internalType:`string`},{name:`token1Symbol`,type:`string`,internalType:`string`},{name:`token0Name`,type:`string`,internalType:`string`},{name:`token1Name`,type:`string`,internalType:`string`},{name:`tickSpacing`,type:`int24`,internalType:`int24`},{name:`fee`,type:`uint24`,internalType:`uint24`}]}],stateMutability:`view`},{type:`function`,name:`getRefTick`,inputs:[{name:`vault`,type:`address`,internalType:`contract TimelockSingleOwnerVault`},{name:`tickLower`,type:`int24`,internalType:`int24`}],outputs:[{name:`refTick`,type:`int24`,internalType:`int24`}],stateMutability:`view`},{type:`function`,name:`getUserOptions`,inputs:[{name:`market`,type:`address`,internalType:`contract TimelockOptionsMarket`},{name:`user`,type:`address`,internalType:`address`},{name:`startId`,type:`uint256`,internalType:`uint256`},{name:`limit`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`userOptions`,type:`tuple[]`,internalType:`struct TimelockLens.OptionData[]`,components:[{name:`optionId`,type:`uint256`,internalType:`uint256`},{name:`owner`,type:`address`,internalType:`address`},{name:`optionType`,type:`uint8`,internalType:`uint8`},{name:`leftTick`,type:`int24`,internalType:`int24`},{name:`strikeTick`,type:`int24`,internalType:`int24`},{name:`entryTick`,type:`int24`,internalType:`int24`},{name:`strikePrice`,type:`uint256`,internalType:`uint256`},{name:`entryPrice`,type:`uint256`,internalType:`uint256`},{name:`optionAssetBorrowed`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetBorrowed`,type:`uint256`,internalType:`uint256`},{name:`optionAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`positionSize`,type:`uint256`,internalType:`uint256`},{name:`netOptionAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`premiumPaid`,type:`uint128`,internalType:`uint128`},{name:`expiresAt`,type:`uint64`,internalType:`uint64`},{name:`createdAt`,type:`uint64`,internalType:`uint64`},{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}]},{name:`nextStartId`,type:`uint256`,internalType:`uint256`},{name:`hasMore`,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`getVaultTVL`,inputs:[{name:`vault`,type:`address`,internalType:`contract TimelockVaultCore`}],outputs:[{name:`totalAmount0`,type:`uint256`,internalType:`uint256`},{name:`totalAmount1`,type:`uint256`,internalType:`uint256`},{name:`borrowedAmount0`,type:`uint256`,internalType:`uint256`},{name:`borrowedAmount1`,type:`uint256`,internalType:`uint256`},{name:`tvl0`,type:`uint256`,internalType:`uint256`},{name:`tvl1`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`}],C=[{type:`constructor`,inputs:[{name:`_pool`,type:`address`,internalType:`contract IUniswapV3Pool`},{name:`_owner`,type:`address`,internalType:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`BORROW`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`BURN`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`MINT`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`MIN_DUST_THRESHOLD`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`REPAY`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`blocks`,inputs:[{name:``,type:`int24`,internalType:`int24`}],outputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`prevTickLower`,type:`int24`,internalType:`int24`},{name:`totalLiquidity`,type:`uint128`,internalType:`uint128`},{name:`borrowedLiquidity`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`blocksCount`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`borrow`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`liquidity`,type:`uint128`,internalType:`uint128`},{name:`refTick`,type:`int24`,internalType:`int24`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`borrowerWhitelist`,inputs:[{name:``,type:`address`,internalType:`address`}],outputs:[{name:``,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`burn`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`liquidity`,type:`uint128`,internalType:`uint128`},{name:`refTick`,type:`int24`,internalType:`int24`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`collectFees`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`}],outputs:[{name:`totalAmount0`,type:`uint256`,internalType:`uint256`},{name:`totalAmount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`getBlock`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`refTick`,type:`int24`,internalType:`int24`}],outputs:[{name:``,type:`tuple`,internalType:`struct TimelockVaultCore.LiquidityBlock`,components:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`prevTickLower`,type:`int24`,internalType:`int24`},{name:`totalLiquidity`,type:`uint128`,internalType:`uint128`},{name:`borrowedLiquidity`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`highestTick`,inputs:[],outputs:[{name:``,type:`int24`,internalType:`int24`}],stateMutability:`view`},{type:`function`,name:`lowestTick`,inputs:[],outputs:[{name:``,type:`int24`,internalType:`int24`}],stateMutability:`view`},{type:`function`,name:`mint`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`liquidity`,type:`uint128`,internalType:`uint128`},{name:`refTick`,type:`int24`,internalType:`int24`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`multicall`,inputs:[{name:`data`,type:`bytes[]`,internalType:`bytes[]`}],outputs:[{name:`results`,type:`bytes[]`,internalType:`bytes[]`}],stateMutability:`nonpayable`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`pool`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IUniswapV3Pool`}],stateMutability:`view`},{type:`function`,name:`pool_`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IUniswapV3Pool`}],stateMutability:`view`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`repay`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`},{name:`liquidity`,type:`uint128`,internalType:`uint128`},{name:`refTick`,type:`int24`,internalType:`int24`}],outputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`tickSpacing`,inputs:[],outputs:[{name:``,type:`int24`,internalType:`int24`}],stateMutability:`view`},{type:`function`,name:`token0`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IERC20`}],stateMutability:`view`},{type:`function`,name:`token1`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IERC20`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`,internalType:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`uniswapV3MintCallback`,inputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`},{name:`data`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`whitelistBorrower`,inputs:[{name:`borrower`,type:`address`,internalType:`address`},{name:`status`,type:`bool`,internalType:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdrawTokens`,inputs:[{name:`tokens`,type:`address[]`,internalType:`contract IERC20[]`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`Borrow`,inputs:[{name:`user`,type:`address`,indexed:!1,internalType:`address`},{name:`tickLower`,type:`int24`,indexed:!1,internalType:`int24`},{name:`tickUpper`,type:`int24`,indexed:!1,internalType:`int24`},{name:`liquidity`,type:`uint128`,indexed:!1,internalType:`uint128`}],anonymous:!1},{type:`event`,name:`Burn`,inputs:[{name:`user`,type:`address`,indexed:!1,internalType:`address`},{name:`tickLower`,type:`int24`,indexed:!1,internalType:`int24`},{name:`tickUpper`,type:`int24`,indexed:!1,internalType:`int24`},{name:`liquidity`,type:`uint128`,indexed:!1,internalType:`uint128`}],anonymous:!1},{type:`event`,name:`FeesCollected`,inputs:[{name:`feeRecipient`,type:`address`,indexed:!1,internalType:`address`},{name:`amount0`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`amount1`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Mint`,inputs:[{name:`user`,type:`address`,indexed:!1,internalType:`address`},{name:`tickLower`,type:`int24`,indexed:!1,internalType:`int24`},{name:`tickUpper`,type:`int24`,indexed:!1,internalType:`int24`},{name:`liquidity`,type:`uint128`,indexed:!1,internalType:`uint128`}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0,internalType:`address`},{name:`newOwner`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`Repay`,inputs:[{name:`user`,type:`address`,indexed:!1,internalType:`address`},{name:`tickLower`,type:`int24`,indexed:!1,internalType:`int24`},{name:`tickUpper`,type:`int24`,indexed:!1,internalType:`int24`},{name:`liquidity`,type:`uint128`,indexed:!1,internalType:`uint128`}],anonymous:!1},{type:`error`,name:`AddressEmptyCode`,inputs:[{name:`target`,type:`address`,internalType:`address`}]},{type:`error`,name:`AmountsMismatch`,inputs:[{name:`amount0`,type:`uint256`,internalType:`uint256`},{name:`expectedAmount0`,type:`uint256`,internalType:`uint256`},{name:`amount1`,type:`uint256`,internalType:`uint256`},{name:`expectedAmount1`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`BorrowerNotWhitelisted`,inputs:[{name:`borrower`,type:`address`,internalType:`address`}]},{type:`error`,name:`FailedCall`,inputs:[]},{type:`error`,name:`InvalidActionType`,inputs:[{name:`actionType`,type:`uint8`,internalType:`uint8`}]},{type:`error`,name:`InvalidRefTick`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`}]},{type:`error`,name:`InvalidTickRange`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`}]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`,internalType:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`,internalType:`address`}]},{type:`error`,name:`ReentrancyGuardReentrantCall`,inputs:[]},{type:`error`,name:`SafeERC20FailedOperation`,inputs:[{name:`token`,type:`address`,internalType:`address`}]}],w=[{type:`constructor`,inputs:[{name:`_vault`,type:`address`,internalType:`contract ITimelockVault`},{name:`_optionPricing`,type:`address`,internalType:`contract IOptionPricing`},{name:`_optionAssetIsToken0`,type:`bool`,internalType:`bool`},{name:`_swapRouter`,type:`address`,internalType:`contract ISwapRouter`},{name:`_quoter`,type:`address`,internalType:`contract IQuoter`},{name:`_owner`,type:`address`,internalType:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`BASIS_POINTS`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`DUST_THRESHOLD`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`MAX_STEPS`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`OPTION_FEE_PERCENT`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`calculatePremium`,inputs:[{name:`optionType`,type:`uint8`,internalType:`uint8`},{name:`optionAmount`,type:`uint256`,internalType:`uint256`},{name:`strikeTick`,type:`int24`,internalType:`int24`},{name:`duration`,type:`uint64`,internalType:`uint64`}],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`exerciseOption`,inputs:[{name:`optionId`,type:`uint256`,internalType:`uint256`},{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`},{name:`minPayout`,type:`uint256`,internalType:`uint256`},{name:`refTick`,type:`int24`,internalType:`int24`}],outputs:[{name:`payout`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`getOption`,inputs:[{name:`optionId`,type:`uint256`,internalType:`uint256`}],outputs:[{name:``,type:`tuple`,internalType:`struct TimelockOptionsMarket.OptionData`,components:[{name:`owner`,type:`address`,internalType:`address`},{name:`optionType`,type:`uint8`,internalType:`uint8`},{name:`strikeTick`,type:`int24`,internalType:`int24`},{name:`entryTick`,type:`int24`,internalType:`int24`},{name:`expiresAt`,type:`uint64`,internalType:`uint64`},{name:`createdAt`,type:`uint64`,internalType:`uint64`},{name:`premiumPaid`,type:`uint128`,internalType:`uint128`},{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`}]}],stateMutability:`view`},{type:`function`,name:`liquiditiesToAmounts`,inputs:[{name:`leftTick`,type:`int24`,internalType:`int24`},{name:`liquidities`,type:`uint128[]`,internalType:`uint128[]`},{name:`optionType`,type:`uint8`,internalType:`uint8`}],outputs:[{name:`optionAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetToRepay`,type:`uint256`,internalType:`uint256`},{name:`optionAssetBorrowed`,type:`uint256`,internalType:`uint256`},{name:`payoutAssetBorrowed`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`maxDuration`,inputs:[],outputs:[{name:``,type:`uint64`,internalType:`uint64`}],stateMutability:`view`},{type:`function`,name:`maxOptionAmount`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`minDuration`,inputs:[],outputs:[{name:``,type:`uint64`,internalType:`uint64`}],stateMutability:`view`},{type:`function`,name:`minOptionAmount`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`mintOption`,inputs:[{name:`optionType`,type:`uint8`,internalType:`uint8`},{name:`amount`,type:`uint256`,internalType:`uint256`},{name:`strikeTick`,type:`int24`,internalType:`int24`},{name:`duration`,type:`uint64`,internalType:`uint64`},{name:`maxPremium`,type:`uint256`,internalType:`uint256`},{name:`refTick`,type:`int24`,internalType:`int24`}],outputs:[{name:`optionId`,type:`uint256`,internalType:`uint256`},{name:`finalAmount`,type:`uint256`,internalType:`uint256`},{name:`totalPremium`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`nextOptionId`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`optionAsset`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IERC20`}],stateMutability:`view`},{type:`function`,name:`optionAssetIsToken0`,inputs:[],outputs:[{name:``,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`optionPricing`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IOptionPricing`}],stateMutability:`view`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`payoutAsset`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IERC20`}],stateMutability:`view`},{type:`function`,name:`pool`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IUniswapV3Pool`}],stateMutability:`view`},{type:`function`,name:`protocolFees`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoter`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IQuoter`}],stateMutability:`view`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`swapRouter`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract ISwapRouter`}],stateMutability:`view`},{type:`function`,name:`tickSpacing`,inputs:[],outputs:[{name:``,type:`int24`,internalType:`int24`}],stateMutability:`view`},{type:`function`,name:`token0`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IERC20`}],stateMutability:`view`},{type:`function`,name:`token1`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IERC20`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`,internalType:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`updateDurationBounds`,inputs:[{name:`_minDuration`,type:`uint64`,internalType:`uint64`},{name:`_maxDuration`,type:`uint64`,internalType:`uint64`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`updateOptionAmountBounds`,inputs:[{name:`_minOptionAmount`,type:`uint256`,internalType:`uint256`},{name:`_maxOptionAmount`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`vault`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract ITimelockVault`}],stateMutability:`view`},{type:`function`,name:`withdrawTokens`,inputs:[{name:`tokens`,type:`address[]`,internalType:`contract IERC20[]`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`ExerciseOption`,inputs:[{name:`optionId`,type:`uint256`,indexed:!0,internalType:`uint256`},{name:`owner`,type:`address`,indexed:!0,internalType:`address`},{name:`liquidities`,type:`uint128[]`,indexed:!1,internalType:`uint128[]`},{name:`payout`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`FeesWithdrawn`,inputs:[{name:`fees0`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`fees1`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`MintOption`,inputs:[{name:`optionId`,type:`uint256`,indexed:!0,internalType:`uint256`},{name:`buyer`,type:`address`,indexed:!0,internalType:`address`},{name:`optionType`,type:`uint8`,indexed:!1,internalType:`uint8`},{name:`strikeTick`,type:`int24`,indexed:!1,internalType:`int24`},{name:`currentTick`,type:`int24`,indexed:!1,internalType:`int24`},{name:`expiresAt`,type:`uint64`,indexed:!1,internalType:`uint64`},{name:`timestamp`,type:`uint64`,indexed:!1,internalType:`uint64`},{name:`totalPremium`,type:`uint128`,indexed:!1,internalType:`uint128`},{name:`liquidities`,type:`uint128[]`,indexed:!1,internalType:`uint128[]`}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0,internalType:`address`},{name:`newOwner`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`error`,name:`AmountOutOfBounds`,inputs:[]},{type:`error`,name:`DurationOutOfBounds`,inputs:[]},{type:`error`,name:`InsufficientLiquidity`,inputs:[]},{type:`error`,name:`InvalidArrayLength`,inputs:[]},{type:`error`,name:`InvalidOptionType`,inputs:[]},{type:`error`,name:`InvalidTickRange`,inputs:[{name:`tickLower`,type:`int24`,internalType:`int24`},{name:`tickUpper`,type:`int24`,internalType:`int24`}]},{type:`error`,name:`NotEnoughPayout`,inputs:[]},{type:`error`,name:`NotOptionOwner`,inputs:[]},{type:`error`,name:`OptionExpired`,inputs:[]},{type:`error`,name:`OptionNotFound`,inputs:[]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`,internalType:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`,internalType:`address`}]},{type:`error`,name:`PremiumTooHigh`,inputs:[]},{type:`error`,name:`ReentrancyGuardReentrantCall`,inputs:[]},{type:`error`,name:`SafeERC20FailedOperation`,inputs:[{name:`token`,type:`address`,internalType:`address`}]}],T=(e,t)=>(0,d.getContract)({abi:y,address:e,client:t}),ee=(e,t)=>(0,d.getContract)({abi:C,address:e,client:t}),E=(e,t)=>(0,d.getContract)({abi:w,address:e,client:t}),te=(e,t)=>(0,d.getContract)({abi:b,address:e,client:t}),D=e=>(0,d.getContract)({abi:x,address:A[e.chain.id],client:e}),O=e=>(0,d.getContract)({abi:S,address:k[e.chain.id],client:e}),k={[f.monadTestnet.id]:`0x97558b2ccb55F88118989BC19FCEa7AFa13F71b9`},A={[f.monadTestnet.id]:`0x4C8375D1F6D5F452e92e211C1D3E7a44F78dFc95`},ne=p.default`
|
|
2
|
-
query GetActiveUserOptions($user: String!) {
|
|
3
|
-
UserOption(
|
|
4
|
-
where: {ownerAddr: {_eq: $user}, fullyExercised: {_eq: false}}
|
|
5
|
-
limit: 1000
|
|
6
|
-
) {
|
|
7
|
-
id
|
|
8
|
-
ownerAddr
|
|
9
|
-
exerciseEvents {
|
|
10
|
-
transactionHash
|
|
11
|
-
}
|
|
12
|
-
mintEvent {
|
|
13
|
-
transactionHash
|
|
14
|
-
}
|
|
15
|
-
optionType
|
|
16
|
-
strikeTick
|
|
17
|
-
entryTick
|
|
18
|
-
expiresAt
|
|
19
|
-
createdAt
|
|
20
|
-
premiumPaid
|
|
21
|
-
realizedPayout
|
|
22
|
-
marketAddr
|
|
23
|
-
liquiditiesAtOpen
|
|
24
|
-
liquiditiesCurrent
|
|
25
|
-
fullyExercised
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
`,re=p.default`
|
|
29
|
-
query GetClosedUserOptions($user: String!) {
|
|
30
|
-
UserOption(
|
|
31
|
-
where: {ownerAddr: {_eq: $user}, fullyExercised: {_eq: true}}
|
|
32
|
-
limit: 1000
|
|
33
|
-
) {
|
|
34
|
-
id
|
|
35
|
-
ownerAddr
|
|
36
|
-
exerciseEvents {
|
|
37
|
-
transactionHash
|
|
38
|
-
}
|
|
39
|
-
mintEvent {
|
|
40
|
-
transactionHash
|
|
41
|
-
}
|
|
42
|
-
optionType
|
|
43
|
-
strikeTick
|
|
44
|
-
entryTick
|
|
45
|
-
expiresAt
|
|
46
|
-
createdAt
|
|
47
|
-
premiumPaid
|
|
48
|
-
realizedPayout
|
|
49
|
-
marketAddr
|
|
50
|
-
liquiditiesAtOpen
|
|
51
|
-
liquiditiesCurrent
|
|
52
|
-
fullyExercised
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
`,ie=(e,t,n,r)=>e();function ae(e,t=ie){return{GetActiveUserOptions(n,r,i){return t(t=>e.request({document:ne,variables:n,requestHeaders:{...r,...t},signal:i}),`GetActiveUserOptions`,`query`,n)},GetClosedUserOptions(n,r,i){return t(t=>e.request({document:re,variables:n,requestHeaders:{...r,...t},signal:i}),`GetClosedUserOptions`,`query`,n)}}}const j=(0,c.createContext)(void 0),oe=({children:e,marketData:t,envioGraphqlUrl:n})=>{let r=(0,l.useChainId)(),i=k[r],a=A[r];return c.default.createElement(j.Provider,{value:{marketData:t||{},lensAddr:i,uniswapMathLensAddr:a,envioGraphqlUrl:n}},e)},se=()=>{let e=(0,c.useContext)(j);if(e===void 0)throw Error(`useCurrentMarket must be used within a TimelockMarketProvider`);return e.marketData},ce=()=>{let e=(0,c.useContext)(j);if(e===void 0)throw Error(`useConfig must be used within a TimelockMarketProvider`);return{lensAddr:e.lensAddr,uniswapMathLensAddr:e.uniswapMathLensAddr,envioGraphqlUrl:e.envioGraphqlUrl,graphqlClient:e.envioGraphqlUrl?ae(new u.GraphQLClient(e.envioGraphqlUrl)):void 0}},M=()=>{let e=(0,l.useClient)(),t=e?O(e):void 0;return{uniswapLens:e?D(e):void 0,timelockLens:t}},N=e=>{let{timelockLens:t}=M(),n=(0,l.useClient)(),r=typeof e==`string`?e:e==null?void 0:e.address,{data:i}=(0,l.useReadContract)({address:t==null?void 0:t.address,abi:S,functionName:`getMarketData`,args:r?[r]:void 0,query:{enabled:r!==void 0}});return!i||!r||!n?{}:{...i,address:r}},le=e=>{let{vault:t}=N(e),n=(0,l.useClient)(),{data:r}=(0,l.useReadContract)({address:t,abi:C,functionName:`lowestTick`}),{writeContractAsync:i,data:a,isPending:o,error:s}=(0,l.useWriteContract)(),{isLoading:c,isSuccess:u}=(0,l.useWaitForTransactionReceipt)({hash:a}),d=typeof e==`string`?e:e==null?void 0:e.address;return{exerciseOption:async(e,t)=>{if(!n)throw Error(`Wallet not connected`);if(r===void 0||!d)throw Error(`Lowest tick lower not available`);let a=await i({address:d,abi:w,functionName:`exerciseOption`,args:[e,t,0n,r]});return await(0,m.waitForTransactionReceipt)(n,{hash:a}),a},hash:a,isPending:o,isConfirming:c,isSuccess:u,error:s,isLoading:o||c}},ue={scaled:0n,unscaled:(0,h.default)(0),decimals:18,formatted:`0`},P=(e,t)=>{let n=I(e,t);return{scaled:e,unscaled:n,decimals:t,formatted:B(n)}},de=(e,t)=>{e=(0,h.default)(e);let n=L(e,t),r=B(e);return{scaled:n,unscaled:e,decimals:t,formatted:r}},F=(e,t,n)=>{let r=R(e,t,n),i=B(r);return{scaled:e,unscaled:r,decimals:36+n-t,formatted:i}},fe=(e,t,n)=>{e=(0,h.default)(e);let r=z(e,t,n),i=B(e);return{scaled:r,unscaled:e,decimals:36+n-t,formatted:i}},I=(e,t)=>new h.default(e.toString()).div(new h.default(10).pow(t)),L=(e,t)=>BigInt((0,h.default)(e).mul(new h.default(10).pow(t)).round().toFixed(0)),R=(e,t,n,r=18)=>new h.default(e.toString()).mul(new h.default(10).pow(t)).div(new h.default(10).pow(n)).div(new h.default(10).pow(r)),z=(e,t,n,r=18)=>BigInt((0,h.default)(e).mul(new h.default(10).pow(r)).mul(new h.default(10).pow(n)).div(new h.default(10).pow(t)).round().toFixed(0)),B=e=>e===void 0?`-`:V((0,h.default)(e).toFixed(100)),pe=e=>(e=Number(e),e>=0xe8d4a51000?`${(e/0xe8d4a51000).toFixed(2)}T`:e>=1e9?`${(e/1e9).toFixed(2)}B`:e>=1e6?`${(e/1e6).toFixed(2)}M`:e>=1e3?`${(e/1e3).toFixed(2)}K`:e<1?e.toPrecision(2):e.toFixed(2)),V=(e,t=2)=>{let[n,r]=(typeof e==`number`?e.toFixed(20):e).replace(/(\.\d*?)0+$/,`$1`).replace(/\.$/,``).split(`.`),i=n.replace(/\B(?=(\d{3})+(?!\d))/g,`,`);if(!r)return i;let a=r.match(/^(0{3,})/);if(a){let e=a[1].length;return`${i}.0${me(e.toString())}${r.slice(e).slice(0,t)}`}else{let e=r.search(/[1-9]/);if(e===-1)return i;let n=r.slice(e).slice(0,t);return`${i}.${r.slice(0,e)}${n}`}},me=e=>e.replace(/[0-9]/g,e=>`₀₁₂₃₄₅₆₇₈₉`[+e]),he=e=>`$`+B(e),ge=(e,t,n=100)=>{let{timelockLens:r}=M(),{optionAssetDecimals:i}=N(e),a=typeof e==`string`?e:e==null?void 0:e.address,{data:o,refetch:s}=(0,l.useReadContract)({address:r==null?void 0:r.address,abi:S,functionName:`getMaxPositionSizeAtCurrentTick`,args:[a,n],query:{enabled:!!a&&!!r},gas:100000000n}),{data:u,refetch:d}=(0,l.useReadContract)({address:r==null?void 0:r.address,abi:S,functionName:`getMaxPositionSize`,args:[a,t,n],query:{enabled:!!a&&!!r&&t!==void 0},gas:100000000n}),f=t===void 0?o:u,{maxCallSize:p,maxPutSize:m}=(0,c.useMemo)(()=>f&&i?{maxCallSize:P(f[0],i),maxPutSize:P(f[1],i)}:{},[f,i]);return{maxCallSize:p,maxPutSize:m,refetch:()=>{s(),d()}}},H=async e=>{let[t,{1:n}]=await Promise.all([e.read.tickSpacing(),e.read.slot0()]);return{exact:n,rounded:Math.floor(n/t)*t}},U=e=>{let t=(0,l.useClient)(),{data:n}=(0,g.useQuery)({queryKey:[`currentTick`,typeof e==`string`?e:(e==null?void 0:e.address)||`-`],queryFn:()=>H(typeof e==`string`?te(e,t):e),enabled:!!e&&!!t,refetchInterval:5e3});return n||{}},W=e=>{let t=typeof e==`string`?e:e==null?void 0:e.address,{timelockLens:n}=M(),r=(0,l.useClient)(),{data:i}=(0,l.useReadContract)({address:n==null?void 0:n.address,abi:S,functionName:`getPoolData`,args:t?[t]:void 0,query:{enabled:!!t&&!!r}});return i||{}},G=BigInt(0xde0b6b3a7640000),K=e=>{let t=BigInt(_.TickMath.getSqrtRatioAtTick(e).toString());return t*t*G/BigInt(2**192)},_e=e=>{let t=e*BigInt(2**192)/G,n=v.default.BigInt(new h.default(t.toString()).sqrt().toFixed(0));return _.TickMath.getTickAtSqrtRatio(n)},q=(e,t)=>{let n=e%t;return n>=0?e-n:e-n-t},J=(e,t)=>{let n=e%t;return n===0?e:n>0?e-n+t:e-n},Y=(e,t)=>e*K(t)/G,X=(e,t)=>{let n=K(t);return e*G/n},Z=(e,t,n)=>{let r=BigInt(0);for(let i=0;i<e.length;i++){let a=e[i];if(a===BigInt(0))continue;let o=t+n*i,s=o+n,c=_.TickMath.getSqrtRatioAtTick(o),l=_.TickMath.getSqrtRatioAtTick(s),u=v.default.BigInt(a.toString()),d=_.SqrtPriceMath.getAmount0Delta(c,l,u,!1);r+=BigInt(d.toString())}return r},ve=(e,t,n)=>{let r=BigInt(0);for(let i=0;i<e.length;i++){let a=e[i];if(a===BigInt(0))continue;let o=t+n*i,s=o+n,c=_.TickMath.getSqrtRatioAtTick(o),l=_.TickMath.getSqrtRatioAtTick(s),u=v.default.BigInt(a.toString()),d=_.SqrtPriceMath.getAmount1Delta(c,l,u,!1);r+=BigInt(d.toString())}return r},ye=(e,t,n,r)=>{let i=0n,a=0n,o=_.TickMath.getSqrtRatioAtTick(n);for(let s=0;s<e.length;s++){let c=e[s];if(c===BigInt(0))continue;let l=t+r*s,u=l+r,d=_.TickMath.getSqrtRatioAtTick(l),f=_.TickMath.getSqrtRatioAtTick(u),p=v.default.BigInt(c.toString());if(n<l){let e=_.SqrtPriceMath.getAmount0Delta(d,f,p,!1);i+=BigInt(e.toString())}else if(n>=u){let e=_.SqrtPriceMath.getAmount1Delta(d,f,p,!1);a+=BigInt(e.toString())}else{let e=_.SqrtPriceMath.getAmount0Delta(o,f,p,!1),t=_.SqrtPriceMath.getAmount1Delta(d,o,p,!1);i+=BigInt(e.toString()),a+=BigInt(t.toString())}}return[i,a]},be=e=>{let{timelockLens:t}=M(),{payoutAsset:n,vault:r,pool:i,optionAssetIsToken0:a}=N(e),{tickSpacing:o}=W(i),{exact:s}=U(i),c=(0,l.useClient)(),{address:u}=(0,l.useAccount)(),{writeContractAsync:f,data:p,isPending:h,error:g}=(0,l.useWriteContract)(),{isLoading:_,isSuccess:v}=(0,l.useWaitForTransactionReceipt)({hash:p}),y=typeof e==`string`?e:e==null?void 0:e.address,b=async e=>{if(!c||!u)throw Error(`Wallet not connected`);if(!n||!y)throw Error(`Tokens not available`);await T(n,c).read.allowance([u,y])<e&&await(0,m.waitForTransactionReceipt)(c,{hash:await f({address:n,abi:d.erc20Abi,functionName:`approve`,args:[y,d.maxUint256]})})};return{mintOption:async(e,n,i,l)=>{if(!c)throw Error(`Wallet not connected`);if(!t||!r||!y||!s||!o)throw Error(`Lowest tick lower not available`);l=l??s,l=e===`CALL`&&a||e===`PUT`&&!a?J(l,o):q(l,o),await b(await E(y,c).read.calculatePremium([e===`CALL`?0:1,n,l,BigInt(i)]));let u=await f({address:y,abi:w,functionName:`mintOption`,args:[e===`CALL`?0:1,n,l,BigInt(i),BigInt(1e69),await t.read.getRefTick([r,l])]});return await(0,m.waitForTransactionReceipt)(c,{hash:u}),u},hash:p,isPending:h,isConfirming:_,isSuccess:v,error:g,isLoading:h||_}},xe=(e,t,n,r,i,a)=>{let o=n-(i===`CALL`?0:r*e.length),s=Z(e,o,r),c=ve(e,o,r);return i===`CALL`?a?s:c:a?X(c,t):Y(s,t)},Se=(e,t)=>{let n=K(e);return t?n:G/n},Ce=e=>{let{marketAddr:t,optionType:n,liquiditiesAtOpen:r,liquiditiesCurrent:i,strikeTick:a,entryTick:o}=e,{pool:s,optionAssetIsToken0:l,optionAssetDecimals:u,payoutAssetDecimals:d}=N(t),{tickSpacing:f}=W(s),{exact:p}=U(s),{strikePrice:m,entryPrice:h}=(0,c.useMemo)(()=>{if(l===void 0||!u||!d)return{};let e=F(Se(o,l),u,d);return{strikePrice:F(Se(a,l),u,d),entryPrice:e}},[e,l,u,d]),{positionSizeAtOpen:g,positionSizeCurrent:_}=(0,c.useMemo)(()=>l===void 0||!f||!u||!d?{}:{positionSizeAtOpen:P(xe(r,o,a,f,n,l),u),positionSizeCurrent:P(xe(i,o,a,f,n,l),u)},[e,l,f,u,d]),{displayPnl:v,unrealizedPayout:y}=(0,c.useMemo)(()=>{if(l===void 0||p===void 0||!_||!d)return{};let e=_.scaled,t=l?Y(e,p)-Y(e,o):X(e,p)-X(e,o),r=P(n===`CALL`?t:-t,d);return{unrealizedPayout:P(r.scaled<0?0n:r.scaled,d),displayPnl:r}},[e,l,p,_]);return{positionSizeCurrent:_,positionSizeAtOpen:g,displayPnl:v,unrealizedPayout:y,strikePrice:m,entryPrice:h}},we=(e,t,n,r)=>{let{pool:i}=N(e),a=U(i),{tickSpacing:o}=W(i),{payoutAssetDecimals:s}=N(e),u=typeof e==`string`?e:e==null?void 0:e.address,d=(0,c.useMemo)(()=>{if(!(a.rounded===void 0||o===void 0))return t===`CALL`?a.rounded+o:a.rounded},[a.rounded,o,t]),{data:f}=(0,l.useReadContract)({address:u,abi:w,functionName:`calculatePremium`,args:d===void 0?void 0:[t===`CALL`?0:1,n,d,BigInt(r)],query:{enabled:a.rounded!==void 0&&s!==void 0&&o!==void 0&&d!==void 0}});return(0,c.useMemo)(()=>{if(!(f===void 0||s===void 0))return P(f,s)},[f,s])},Q=(e,t=!1)=>{let{graphqlClient:n}=ce(),{data:r,...i}=(0,g.useQuery)({queryKey:[`userTrades`,e||`--`,t],queryFn:()=>t?n==null?void 0:n.GetActiveUserOptions({user:e.toLowerCase()}):n==null?void 0:n.GetClosedUserOptions({user:e.toLowerCase()}),select:e=>{var t;return e==null||(t=e.UserOption)==null?void 0:t.map(e=>({...e,id:BigInt(e.id),marketAddr:e.marketAddr,optionType:e.optionType,createdAt:new Date(Number(e.createdAt)*1e3),expiresAt:new Date(Number(e.expiresAt)*1e3),premiumPaid:BigInt(e.premiumPaid),realizedPayout:BigInt(e.realizedPayout),liquiditiesAtOpen:e.liquiditiesAtOpen.map(e=>BigInt(e)),liquiditiesCurrent:e.liquiditiesCurrent.map(e=>BigInt(e))}))},enabled:!!e&&!!n});return{data:(0,c.useMemo)(()=>(r==null?void 0:r.sort((e,t)=>t.createdAt.getTime()-e.createdAt.getTime()))||[],[r]),...i}},Te=e=>Q(e,!0),Ee=e=>Q(e,!1),De=(e,t)=>{let{token0Decimals:n,token1Decimals:r}=W(t);return(0,c.useMemo)(()=>e&&n&&r?F(K(e),n,r):void 0,[e,n,r])},Oe=e=>{let t=U(e);return{currentPrice:De(t.exact,e),currentTick:t}},$=e=>{let{data:t}=(0,l.useReadContract)({address:typeof e==`string`?e:e==null?void 0:e.address,abi:C,functionName:`pool`});return{pool:t}},ke=e=>{let t=(0,l.useClient)(),{pool:n}=$(e),r=U(n),{timelockLens:i}=M(),a=typeof e==`string`?e:e==null?void 0:e.address,{writeContractAsync:o,data:s,isPending:c,error:u}=(0,l.useWriteContract)(),{isLoading:f,isSuccess:p}=(0,l.useWaitForTransactionReceipt)({hash:s}),h=async(e,n,r)=>{if(!t)throw Error(`Wallet not connected`);if(!a||!i)throw Error(`Vault/lens not available`);let s=await o({address:a,abi:C,functionName:`burn`,args:[e,n,r,await i.read.getRefTick([a,e])]});return await(0,m.waitForTransactionReceipt)(t,{hash:s}),s};return{burnMultiple:async e=>{if(!t)throw Error(`Wallet not connected`);if(!r.exact)throw Error(`Current tick not available`);if(e.length===0)throw Error(`No positions to burn`);if(!i||!a)throw Error(`Vault/lens not available`);if(e.length===1)await h(e[0].tickLower,e[0].tickUpper,e[0].liquidity);else{let n=await i.read.batchGetRefTick([a,e.map(e=>e.tickLower)]);await(0,m.waitForTransactionReceipt)(t,{hash:await o({address:a,abi:C,functionName:`multicall`,args:[e.map((e,t)=>(0,d.encodeFunctionData)({abi:C,functionName:`burn`,args:[e.tickLower,e.tickUpper,e.liquidity,n[t]]}))]})})}},burn:h,hash:s,isPending:c,isConfirming:f,isSuccess:p,error:u,isLoading:c||f}},Ae=e=>{let{timelockLens:t}=M(),{pool:n}=$(e),{token0Decimals:r,token1Decimals:i}=W(n),{currentPrice:a}=Oe(n),o=typeof e==`string`?e:e==null?void 0:e.address,{data:s=[],refetch:l}=(0,g.useQuery)({queryKey:[`liquidityBlocks`,o],queryFn:()=>t.read.getAllBlocks([o]),enabled:!!o&&!!t}),{totalAmount0:u,totalAmount1:d,borrowedAmount0:f,borrowedAmount1:p}=(0,c.useMemo)(()=>({totalAmount0:r?P(s.reduce((e,t)=>e+t.totalAmount0,0n),r):void 0,totalAmount1:i?P(s.reduce((e,t)=>e+t.totalAmount1,0n),i):void 0,borrowedAmount0:r?P(s.reduce((e,t)=>e+t.borrowedAmount0,0n),r):void 0,borrowedAmount1:i?P(s.reduce((e,t)=>e+t.borrowedAmount1,0n),i):void 0}),[s,r,i]);return{tvl1:(0,c.useMemo)(()=>{if(!u||!d||!a||!i)return;let e=u.scaled*a.scaled/10n**18n,t=d.scaled;return P(e+t,i)},[u,d,a,i]),blocks:s,totalAmount0:u,totalAmount1:d,borrowedAmount0:f,borrowedAmount1:p,refetch:l}},je=async(e,t,n,r,i)=>{let a=Array(t.length).fill(i),o=await e.read.batchGetAmountsForLiquidityTicks([a,t,n,r]),s=0n,c=0n,l=[],u=[];for(let e of o[0])s+=e,l.push(e);for(let e of o[1])c+=e,u.push(e);return{totalAmount0:s,totalAmount1:c,amounts0:l,amounts1:u}},Me=e=>{let t=(0,l.useClient)(),{address:n}=(0,l.useAccount)(),{pool:r}=$(e),{timelockLens:i,uniswapLens:a}=M(),o=U(r),{token0:s,token1:c}=W(r),u=typeof e==`string`?e:e==null?void 0:e.address,{writeContractAsync:f,data:p,isPending:h,error:g}=(0,l.useWriteContract)(),{isLoading:_,isSuccess:v}=(0,l.useWaitForTransactionReceipt)({hash:p}),y=async e=>{if(!n||!t)throw Error(`Wallet not connected`);if(o.exact===void 0||!s||!c||!u||!a)throw Error(`Current tick not available`);let{totalAmount0:r,totalAmount1:i}=await je(a,e.map(e=>e.tickLower),e.map(e=>e.tickUpper),e.map(e=>e.liquidity),o.exact),[l,p]=await Promise.all([T(s,t).read.allowance([n,u]),T(c,t).read.allowance([n,u])]),h=[];if(l<=r){let e=await f({address:s,abi:d.erc20Abi,functionName:`approve`,args:[u,d.maxUint256]});h.push((0,m.waitForTransactionReceipt)(t,{hash:e}))}if(p<=i){let e=await f({address:c,abi:d.erc20Abi,functionName:`approve`,args:[u,d.maxUint256]});h.push((0,m.waitForTransactionReceipt)(t,{hash:e}))}h.length>0&&await Promise.all(h)},b=async(e,n,r)=>{if(!t)throw Error(`Wallet not connected`);if(!u||!i)throw Error(`Vault/lens not available`);await y([{tickLower:e,tickUpper:n,liquidity:r}]);let a=await f({address:u,abi:C,functionName:`mint`,args:[e,n,r,await i.read.getRefTick([u,e])]});return await(0,m.waitForTransactionReceipt)(t,{hash:a}),a};return{mintMultiple:async e=>{if(!t)throw Error(`Wallet not connected`);if(!o.exact)throw Error(`Current tick not available`);if(e.length===0)throw Error(`No positions to mint`);if(!i||!u)throw Error(`Vault/lens not available`);if(e.length===1)await b(e[0].tickLower,e[0].tickUpper,e[0].liquidity);else{await y(e);let n=await i.read.batchGetRefTick([u,e.map(e=>e.tickLower)]);await(0,m.waitForTransactionReceipt)(t,{hash:await f({address:u,abi:C,functionName:`multicall`,args:[e.map((e,t)=>(0,d.encodeFunctionData)({abi:C,functionName:`mint`,args:[e.tickLower,e.tickUpper,e.liquidity,n[t]]}))]})})}},mint:b,hash:p,isPending:h,isConfirming:_,isSuccess:v,error:g,isLoading:h||_}},Ne=e=>{let{timelockLens:t}=M(),{pool:n}=$(e),{token0Decimals:r,token1Decimals:i}=W(n),a=typeof e==`string`?e:e==null?void 0:e.address,{data:o,refetch:s}=(0,l.useReadContract)({address:t==null?void 0:t.address,abi:S,functionName:`getVaultTVL`,args:[a],query:{enabled:!!a&&!!t}}),c=o&&r?P(o[0],r):void 0,u=o&&i?P(o[1],i):void 0,d=o&&r?P(o[2],r):void 0,f=o&&i?P(o[3],i):void 0;return{tvl0:o&&r?P(o[4],r):void 0,tvl1:o&&i?P(o[5],i):void 0,totalAmount0:c,totalAmount1:u,borrowedAmount0:d,borrowedAmount1:f,refetch:s}};exports.PRICE_PRECISION=G,exports.TimelockMarketProvider=oe,exports.batchGetAmountsFromLiquidity=je,exports.erc20Abi=y,exports.formatAmount=B,exports.formatCondensed=V,exports.formatUSD=he,exports.formatVagueAmount=pe,exports.getCurrentTick=H,exports.getErc20=T,exports.getPriceAtTick=K,exports.getTickAtPrice=_e,exports.getTimelockLens=O,exports.getTimelockMarket=E,exports.getTimelockVault=ee,exports.getUniswapMathLens=D,exports.getUniswapPool=te,exports.lensAbi=S,exports.liquiditiesToAmount0=Z,exports.liquiditiesToAmount1=ve,exports.liquiditiesToAmounts=ye,exports.optionsMarketAbi=w,exports.roundTickDown=q,exports.roundTickUp=J,exports.scaleAmount=L,exports.scalePrice=z,exports.singleOwnerVaultAbi=C,exports.timelockLenses=k,exports.token0ToToken1=Y,exports.token1ToToken0=X,exports.uniswapMathLensAbi=x,exports.uniswapMathLenses=A,exports.uniswapV3PoolAbi=b,exports.unscaleAmount=I,exports.unscalePrice=R,exports.useActiveUserOptions=Te,exports.useBurnLiquidity=ke,exports.useClosedUserOptions=Ee,exports.useCurrentMarket=se,exports.useCurrentPrice=Oe,exports.useCurrentTick=U,exports.useExerciseOption=le,exports.useLens=M,exports.useLiquidityBlocks=Ae,exports.useMarketData=N,exports.useMaxPositionSize=ge,exports.useMintLiquidity=Me,exports.useMintOption=be,exports.useOptionLiquidityData=Ce,exports.useOptionPremium=we,exports.usePoolData=W,exports.usePriceAtTick=De,exports.useTimelockConfig=ce,exports.useVaultData=$,exports.useVaultTVL=Ne,exports.wrapAmount=P,exports.wrapAmountUnscaled=de,exports.wrapPrice=F,exports.wrapPriceUnscaled=fe,exports.zero=ue;
|
|
56
|
-
//# sourceMappingURL=package.cjs.map
|
|
1
|
+
const e=require(`./numberUtils-DRGhFDHZ.cjs`);exports.PRICE_PRECISION=e.PRICE_PRECISION,exports.erc20Abi=e.erc20Abi,exports.formatAmount=e.formatAmount,exports.formatCondensed=e.formatCondensed,exports.formatUSD=e.formatUSD,exports.formatVagueAmount=e.formatVagueAmount,exports.getErc20=e.getErc20,exports.getPriceAtTick=e.getPriceAtTick,exports.getTickAtPrice=e.getTickAtPrice,exports.getTimelockLens=e.getTimelockLens,exports.getTimelockMarket=e.getTimelockMarket,exports.getTimelockVault=e.getTimelockVault,exports.getUniswapMathLens=e.getUniswapMathLens,exports.getUniswapPool=e.getUniswapPool,exports.lensAbi=e.lensAbi,exports.liquiditiesToAmount0=e.liquiditiesToAmount0,exports.liquiditiesToAmount1=e.liquiditiesToAmount1,exports.liquiditiesToAmounts=e.liquiditiesToAmounts,exports.optionsMarketAbi=e.optionsMarketAbi,exports.roundTickDown=e.roundTickDown,exports.roundTickUp=e.roundTickUp,exports.scaleAmount=e.scaleAmount,exports.scalePrice=e.scalePrice,exports.singleOwnerVaultAbi=e.singleOwnerVaultAbi,exports.timelockLenses=e.timelockLenses,exports.token0ToToken1=e.token0ToToken1,exports.token1ToToken0=e.token1ToToken0,exports.uniswapMathLensAbi=e.uniswapMathLensAbi,exports.uniswapMathLenses=e.uniswapMathLenses,exports.uniswapV3PoolAbi=e.uniswapV3PoolAbi,exports.unscaleAmount=e.unscaleAmount,exports.unscalePrice=e.unscalePrice,exports.wrapAmount=e.wrapAmount,exports.wrapAmountUnscaled=e.wrapAmountUnscaled,exports.wrapPrice=e.wrapPrice,exports.wrapPriceUnscaled=e.wrapPriceUnscaled,exports.zero=e.zero;
|