@kittycorn-labs/universal-router-sdk 1.4.42 → 2.0.0
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/README.md +312 -0
- package/dist/cjs/src/abis/UniversalRouter.json +740 -0
- package/dist/{entities → cjs/src/entities}/Command.d.ts +12 -12
- package/dist/cjs/src/entities/Command.js +9 -0
- package/dist/cjs/src/entities/Command.js.map +1 -0
- package/dist/cjs/src/entities/actions/across.d.ts +21 -0
- package/dist/cjs/src/entities/actions/across.js +7 -0
- package/dist/cjs/src/entities/actions/across.js.map +1 -0
- package/dist/{entities → cjs/src/entities}/actions/index.d.ts +3 -2
- package/dist/cjs/src/entities/actions/index.js +7 -0
- package/dist/cjs/src/entities/actions/index.js.map +1 -0
- package/dist/cjs/src/entities/actions/uniswap.d.ts +94 -0
- package/dist/cjs/src/entities/actions/uniswap.js +740 -0
- package/dist/cjs/src/entities/actions/uniswap.js.map +1 -0
- package/dist/{entities → cjs/src/entities}/actions/unwrapWETH.d.ts +12 -12
- package/dist/cjs/src/entities/actions/unwrapWETH.js +33 -0
- package/dist/cjs/src/entities/actions/unwrapWETH.js.map +1 -0
- package/dist/{entities → cjs/src/entities}/index.d.ts +2 -2
- package/dist/cjs/src/entities/index.js +6 -0
- package/dist/cjs/src/entities/index.js.map +1 -0
- package/dist/cjs/src/index.d.ts +19 -0
- package/dist/cjs/src/index.js +43 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/cjs/src/kittycorn.d.ts +9 -0
- package/dist/cjs/src/kittycorn.js +26 -0
- package/dist/cjs/src/kittycorn.js.map +1 -0
- package/dist/cjs/src/swapRouter.d.ts +123 -0
- package/dist/cjs/src/swapRouter.js +445 -0
- package/dist/cjs/src/swapRouter.js.map +1 -0
- package/dist/cjs/src/types/encodeSwaps.d.ts +197 -0
- package/dist/cjs/src/types/encodeSwaps.js +3 -0
- package/dist/cjs/src/types/encodeSwaps.js.map +1 -0
- package/dist/{utils → cjs/src/utils}/commandParser.d.ts +36 -34
- package/dist/cjs/src/utils/commandParser.js +154 -0
- package/dist/cjs/src/utils/commandParser.js.map +1 -0
- package/dist/cjs/src/utils/computeEncodeSwapsAmounts.d.ts +8 -0
- package/dist/cjs/src/utils/computeEncodeSwapsAmounts.js +46 -0
- package/dist/cjs/src/utils/computeEncodeSwapsAmounts.js.map +1 -0
- package/dist/{utils → cjs/src/utils}/constants.d.ts +46 -30
- package/dist/cjs/src/utils/constants.js +777 -0
- package/dist/cjs/src/utils/constants.js.map +1 -0
- package/dist/cjs/src/utils/directTransfers.d.ts +15 -0
- package/dist/cjs/src/utils/directTransfers.js +381 -0
- package/dist/cjs/src/utils/directTransfers.js.map +1 -0
- package/dist/cjs/src/utils/eip712.d.ts +17 -0
- package/dist/cjs/src/utils/eip712.js +44 -0
- package/dist/cjs/src/utils/eip712.js.map +1 -0
- package/dist/cjs/src/utils/encodeSwapStep.d.ts +4 -0
- package/dist/cjs/src/utils/encodeSwapStep.js +62 -0
- package/dist/cjs/src/utils/encodeSwapStep.js.map +1 -0
- package/dist/cjs/src/utils/encodeV4Action.d.ts +7 -0
- package/dist/cjs/src/utils/encodeV4Action.js +84 -0
- package/dist/cjs/src/utils/encodeV4Action.js.map +1 -0
- package/dist/{utils → cjs/src/utils}/getCurrencyAddress.d.ts +2 -2
- package/dist/cjs/src/utils/getCurrencyAddress.js +9 -0
- package/dist/cjs/src/utils/getCurrencyAddress.js.map +1 -0
- package/dist/{utils → cjs/src/utils}/inputTokens.d.ts +23 -23
- package/dist/cjs/src/utils/inputTokens.js +58 -0
- package/dist/cjs/src/utils/inputTokens.js.map +1 -0
- package/dist/cjs/src/utils/normalizeEncodeSwapsSpec.d.ts +6 -0
- package/dist/cjs/src/utils/normalizeEncodeSwapsSpec.js +34 -0
- package/dist/cjs/src/utils/normalizeEncodeSwapsSpec.js.map +1 -0
- package/dist/{utils → cjs/src/utils}/numbers.d.ts +7 -6
- package/dist/cjs/src/utils/numbers.js +27 -0
- package/dist/cjs/src/utils/numbers.js.map +1 -0
- package/dist/{utils → cjs/src/utils}/pathCurrency.d.ts +3 -3
- package/dist/cjs/src/utils/pathCurrency.js +27 -0
- package/dist/cjs/src/utils/pathCurrency.js.map +1 -0
- package/dist/cjs/src/utils/portionFees.d.ts +14 -0
- package/dist/cjs/src/utils/portionFees.js +40 -0
- package/dist/cjs/src/utils/portionFees.js.map +1 -0
- package/dist/cjs/src/utils/routerBalanceSteps.d.ts +31 -0
- package/dist/cjs/src/utils/routerBalanceSteps.js +293 -0
- package/dist/cjs/src/utils/routerBalanceSteps.js.map +1 -0
- package/dist/{utils → cjs/src/utils}/routerCommands.d.ts +77 -64
- package/dist/cjs/src/utils/routerCommands.js +331 -0
- package/dist/cjs/src/utils/routerCommands.js.map +1 -0
- package/dist/{utils → cjs/src/utils}/routerTradeAdapter.d.ts +73 -73
- package/dist/cjs/src/utils/routerTradeAdapter.js +139 -0
- package/dist/cjs/src/utils/routerTradeAdapter.js.map +1 -0
- package/dist/cjs/src/utils/toV4URVersion.d.ts +3 -0
- package/dist/cjs/src/utils/toV4URVersion.js +17 -0
- package/dist/cjs/src/utils/toV4URVersion.js.map +1 -0
- package/dist/cjs/src/utils/validateEncodeSwaps.d.ts +2 -0
- package/dist/cjs/src/utils/validateEncodeSwaps.js +344 -0
- package/dist/cjs/src/utils/validateEncodeSwaps.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/src/abis/UniversalRouter.json +740 -0
- package/dist/esm/src/entities/Command.d.ts +12 -0
- package/dist/esm/src/entities/Command.js +6 -0
- package/dist/esm/src/entities/Command.js.map +1 -0
- package/dist/esm/src/entities/actions/across.d.ts +21 -0
- package/dist/esm/src/entities/actions/across.js +3 -0
- package/dist/esm/src/entities/actions/across.js.map +1 -0
- package/dist/esm/src/entities/actions/index.d.ts +3 -0
- package/dist/esm/src/entities/actions/index.js +4 -0
- package/dist/esm/src/entities/actions/index.js.map +1 -0
- package/dist/esm/src/entities/actions/uniswap.d.ts +94 -0
- package/dist/esm/src/entities/actions/uniswap.js +735 -0
- package/dist/esm/src/entities/actions/uniswap.js.map +1 -0
- package/dist/esm/src/entities/actions/unwrapWETH.d.ts +12 -0
- package/dist/esm/src/entities/actions/unwrapWETH.js +28 -0
- package/dist/esm/src/entities/actions/unwrapWETH.js.map +1 -0
- package/dist/esm/src/entities/index.d.ts +2 -0
- package/dist/esm/src/entities/index.js +3 -0
- package/dist/esm/src/entities/index.js.map +1 -0
- package/dist/esm/src/index.d.ts +19 -0
- package/dist/esm/src/index.js +15 -0
- package/dist/esm/src/index.js.map +1 -0
- package/dist/esm/src/kittycorn.d.ts +9 -0
- package/dist/esm/src/kittycorn.js +22 -0
- package/dist/esm/src/kittycorn.js.map +1 -0
- package/dist/esm/src/swapRouter.d.ts +123 -0
- package/dist/esm/src/swapRouter.js +440 -0
- package/dist/esm/src/swapRouter.js.map +1 -0
- package/dist/esm/src/types/encodeSwaps.d.ts +197 -0
- package/dist/esm/src/types/encodeSwaps.js +2 -0
- package/dist/esm/src/types/encodeSwaps.js.map +1 -0
- package/dist/esm/src/utils/commandParser.d.ts +36 -0
- package/dist/esm/src/utils/commandParser.js +146 -0
- package/dist/esm/src/utils/commandParser.js.map +1 -0
- package/dist/esm/src/utils/computeEncodeSwapsAmounts.d.ts +8 -0
- package/dist/esm/src/utils/computeEncodeSwapsAmounts.js +41 -0
- package/dist/esm/src/utils/computeEncodeSwapsAmounts.js.map +1 -0
- package/dist/esm/src/utils/constants.d.ts +46 -0
- package/dist/esm/src/utils/constants.js +768 -0
- package/dist/esm/src/utils/constants.js.map +1 -0
- package/dist/esm/src/utils/directTransfers.d.ts +15 -0
- package/dist/esm/src/utils/directTransfers.js +369 -0
- package/dist/esm/src/utils/directTransfers.js.map +1 -0
- package/dist/esm/src/utils/eip712.d.ts +17 -0
- package/dist/esm/src/utils/eip712.js +39 -0
- package/dist/esm/src/utils/eip712.js.map +1 -0
- package/dist/esm/src/utils/encodeSwapStep.d.ts +4 -0
- package/dist/esm/src/utils/encodeSwapStep.js +58 -0
- package/dist/esm/src/utils/encodeSwapStep.js.map +1 -0
- package/dist/esm/src/utils/encodeV4Action.d.ts +7 -0
- package/dist/esm/src/utils/encodeV4Action.js +80 -0
- package/dist/esm/src/utils/encodeV4Action.js.map +1 -0
- package/dist/esm/src/utils/getCurrencyAddress.d.ts +2 -0
- package/dist/esm/src/utils/getCurrencyAddress.js +5 -0
- package/dist/esm/src/utils/getCurrencyAddress.js.map +1 -0
- package/dist/esm/src/utils/inputTokens.d.ts +23 -0
- package/dist/esm/src/utils/inputTokens.js +51 -0
- package/dist/esm/src/utils/inputTokens.js.map +1 -0
- package/dist/esm/src/utils/normalizeEncodeSwapsSpec.d.ts +6 -0
- package/dist/esm/src/utils/normalizeEncodeSwapsSpec.js +27 -0
- package/dist/esm/src/utils/normalizeEncodeSwapsSpec.js.map +1 -0
- package/dist/esm/src/utils/numbers.d.ts +7 -0
- package/dist/esm/src/utils/numbers.js +19 -0
- package/dist/esm/src/utils/numbers.js.map +1 -0
- package/dist/esm/src/utils/pathCurrency.d.ts +3 -0
- package/dist/esm/src/utils/pathCurrency.js +23 -0
- package/dist/esm/src/utils/pathCurrency.js.map +1 -0
- package/dist/esm/src/utils/portionFees.d.ts +14 -0
- package/dist/esm/src/utils/portionFees.js +35 -0
- package/dist/esm/src/utils/portionFees.js.map +1 -0
- package/dist/esm/src/utils/routerBalanceSteps.d.ts +31 -0
- package/dist/esm/src/utils/routerBalanceSteps.js +282 -0
- package/dist/esm/src/utils/routerBalanceSteps.js.map +1 -0
- package/dist/esm/src/utils/routerCommands.d.ts +77 -0
- package/dist/esm/src/utils/routerCommands.js +326 -0
- package/dist/esm/src/utils/routerCommands.js.map +1 -0
- package/dist/esm/src/utils/routerTradeAdapter.d.ts +73 -0
- package/dist/esm/src/utils/routerTradeAdapter.js +134 -0
- package/dist/esm/src/utils/routerTradeAdapter.js.map +1 -0
- package/dist/esm/src/utils/toV4URVersion.d.ts +3 -0
- package/dist/esm/src/utils/toV4URVersion.js +13 -0
- package/dist/esm/src/utils/toV4URVersion.js.map +1 -0
- package/dist/esm/src/utils/validateEncodeSwaps.d.ts +2 -0
- package/dist/esm/src/utils/validateEncodeSwaps.js +339 -0
- package/dist/esm/src/utils/validateEncodeSwaps.js.map +1 -0
- package/dist/types/src/entities/Command.d.ts +13 -0
- package/dist/types/src/entities/Command.d.ts.map +1 -0
- package/dist/types/src/entities/actions/across.d.ts +22 -0
- package/dist/types/src/entities/actions/across.d.ts.map +1 -0
- package/dist/types/src/entities/actions/index.d.ts +4 -0
- package/dist/types/src/entities/actions/index.d.ts.map +1 -0
- package/dist/types/src/entities/actions/uniswap.d.ts +95 -0
- package/dist/types/src/entities/actions/uniswap.d.ts.map +1 -0
- package/dist/types/src/entities/actions/unwrapWETH.d.ts +13 -0
- package/dist/types/src/entities/actions/unwrapWETH.d.ts.map +1 -0
- package/dist/types/src/entities/index.d.ts +3 -0
- package/dist/types/src/entities/index.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +20 -0
- package/dist/types/src/index.d.ts.map +1 -0
- package/dist/types/src/kittycorn.d.ts +10 -0
- package/dist/types/src/kittycorn.d.ts.map +1 -0
- package/dist/types/src/swapRouter.d.ts +124 -0
- package/dist/types/src/swapRouter.d.ts.map +1 -0
- package/dist/types/src/types/encodeSwaps.d.ts +198 -0
- package/dist/types/src/types/encodeSwaps.d.ts.map +1 -0
- package/dist/types/src/utils/commandParser.d.ts +37 -0
- package/dist/types/src/utils/commandParser.d.ts.map +1 -0
- package/dist/types/src/utils/computeEncodeSwapsAmounts.d.ts +9 -0
- package/dist/types/src/utils/computeEncodeSwapsAmounts.d.ts.map +1 -0
- package/dist/types/src/utils/constants.d.ts +47 -0
- package/dist/types/src/utils/constants.d.ts.map +1 -0
- package/dist/types/src/utils/directTransfers.d.ts +16 -0
- package/dist/types/src/utils/directTransfers.d.ts.map +1 -0
- package/dist/types/src/utils/eip712.d.ts +18 -0
- package/dist/types/src/utils/eip712.d.ts.map +1 -0
- package/dist/types/src/utils/encodeSwapStep.d.ts +5 -0
- package/dist/types/src/utils/encodeSwapStep.d.ts.map +1 -0
- package/dist/types/src/utils/encodeV4Action.d.ts +8 -0
- package/dist/types/src/utils/encodeV4Action.d.ts.map +1 -0
- package/dist/types/src/utils/getCurrencyAddress.d.ts +3 -0
- package/dist/types/src/utils/getCurrencyAddress.d.ts.map +1 -0
- package/dist/types/src/utils/inputTokens.d.ts +24 -0
- package/dist/types/src/utils/inputTokens.d.ts.map +1 -0
- package/dist/types/src/utils/normalizeEncodeSwapsSpec.d.ts +7 -0
- package/dist/types/src/utils/normalizeEncodeSwapsSpec.d.ts.map +1 -0
- package/dist/types/src/utils/numbers.d.ts +8 -0
- package/dist/types/src/utils/numbers.d.ts.map +1 -0
- package/dist/types/src/utils/pathCurrency.d.ts +4 -0
- package/dist/types/src/utils/pathCurrency.d.ts.map +1 -0
- package/dist/types/src/utils/portionFees.d.ts +15 -0
- package/dist/types/src/utils/portionFees.d.ts.map +1 -0
- package/dist/types/src/utils/routerBalanceSteps.d.ts +32 -0
- package/dist/types/src/utils/routerBalanceSteps.d.ts.map +1 -0
- package/dist/types/src/utils/routerCommands.d.ts +78 -0
- package/dist/types/src/utils/routerCommands.d.ts.map +1 -0
- package/dist/types/src/utils/routerTradeAdapter.d.ts +74 -0
- package/dist/types/src/utils/routerTradeAdapter.d.ts.map +1 -0
- package/dist/types/src/utils/toV4URVersion.d.ts +4 -0
- package/dist/types/src/utils/toV4URVersion.d.ts.map +1 -0
- package/dist/types/src/utils/validateEncodeSwaps.d.ts +3 -0
- package/dist/types/src/utils/validateEncodeSwaps.d.ts.map +1 -0
- package/package.json +33 -52
- package/dist/entities/actions/uniswap.d.ts +0 -30
- package/dist/index.d.ts +0 -10
- package/dist/index.js +0 -8
- package/dist/swapRouter.d.ts +0 -37
- package/dist/test/forge/writeInterop.d.ts +0 -2
- package/dist/test/utils/addresses.d.ts +0 -5
- package/dist/test/utils/hexToDecimalString.d.ts +0 -2
- package/dist/test/utils/permit2.d.ts +0 -7
- package/dist/test/utils/uniswapData.d.ts +0 -25
- package/dist/universal-router-sdk.cjs.development.js +0 -1500
- package/dist/universal-router-sdk.cjs.development.js.map +0 -1
- package/dist/universal-router-sdk.cjs.production.min.js +0 -2
- package/dist/universal-router-sdk.cjs.production.min.js.map +0 -1
- package/dist/universal-router-sdk.esm.js +0 -1493
- package/dist/universal-router-sdk.esm.js.map +0 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { BigNumber } from '@ethersproject/bignumber';
|
|
2
|
+
import { SwapStep, V4Action } from '../types/encodeSwaps';
|
|
3
|
+
export declare function stepSpendsToken(step: SwapStep, inputTokenAddress: string): boolean;
|
|
4
|
+
export declare function isInputSettle(action: V4Action, tokenAddress: string): boolean;
|
|
5
|
+
export declare function isInputSwap(action: V4Action, tokenAddress: string): boolean;
|
|
6
|
+
export declare function v4SwapAmountIn(action: V4Action): BigNumber;
|
|
7
|
+
export declare function stepSpendAmount(step: SwapStep, tokenAddress: string): BigNumber;
|
|
8
|
+
/**
|
|
9
|
+
* Rewrites a step plan to spend the router's entire input-token balance.
|
|
10
|
+
*
|
|
11
|
+
* Single spender: its v2/v3 exact-in amount becomes the CONTRACT_BALANCE
|
|
12
|
+
* sentinel (a v4 spender settles CONTRACT_BALANCE; one of its input swaps
|
|
13
|
+
* consumes the open delta while any others keep their quoted slices).
|
|
14
|
+
*
|
|
15
|
+
* Split routes (multiple spenders of the input token): every spender but the
|
|
16
|
+
* largest keeps its quoted amount, funded from router custody; the largest is
|
|
17
|
+
* rewritten to CONTRACT_BALANCE and MOVED after the other spenders, so it
|
|
18
|
+
* absorbs all delivery variance and the fill only reverts when delivery
|
|
19
|
+
* cannot cover the fixed legs.
|
|
20
|
+
*/
|
|
21
|
+
export declare function applyRouterBalanceInputToSteps(swapSteps: SwapStep[], inputTokenAddress: string, wrappedNativeAddress?: string): SwapStep[];
|
|
22
|
+
/**
|
|
23
|
+
* Native-input variant: the plan leads with the route's WRAP_ETH, which is resized to wrap
|
|
24
|
+
* the router's entire native balance (attached msg.value plus any stray ETH, so no value
|
|
25
|
+
* is left behind — UR never refunds msg.value); the wrapped-token hop that follows then
|
|
26
|
+
* spends CONTRACT_BALANCE like an ERC20 balance swap.
|
|
27
|
+
*
|
|
28
|
+
* `validateEncodeSwaps` guarantees steps[0] is a router-recipient WRAP_ETH and exactly one
|
|
29
|
+
* later step spends the wrapped token.
|
|
30
|
+
*/
|
|
31
|
+
export declare function applyNativeRouterBalanceInputToSteps(swapSteps: SwapStep[], wrappedTokenAddress: string): SwapStep[];
|
|
32
|
+
//# sourceMappingURL=routerBalanceSteps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routerBalanceSteps.d.ts","sourceRoot":"","sources":["../../../../src/utils/routerBalanceSteps.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEpD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAmBzD,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAalF;AAGD,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAE7E;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAK3E;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAI1D;AAsID,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,GAAG,SAAS,CAU/E;AAiCD;;;;;;;;;;;;GAYG;AACH,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,QAAQ,EAAE,EACrB,iBAAiB,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,GAC5B,QAAQ,EAAE,CAwDZ;AAED;;;;;;;;GAQG;AACH,wBAAgB,oCAAoC,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,mBAAmB,EAAE,MAAM,GAAG,QAAQ,EAAE,CAUnH"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { UniversalRouterVersion } from './constants';
|
|
2
|
+
import { AcrossV4DepositV3Params } from '../entities/actions/across';
|
|
3
|
+
/**
|
|
4
|
+
* CommandTypes
|
|
5
|
+
* @description Flags that modify a command's execution
|
|
6
|
+
* @enum {number}
|
|
7
|
+
*/
|
|
8
|
+
export declare enum CommandType {
|
|
9
|
+
V3_SWAP_EXACT_IN = 0,
|
|
10
|
+
V3_SWAP_EXACT_OUT = 1,
|
|
11
|
+
PERMIT2_TRANSFER_FROM = 2,
|
|
12
|
+
PERMIT2_PERMIT_BATCH = 3,
|
|
13
|
+
SWEEP = 4,
|
|
14
|
+
TRANSFER = 5,
|
|
15
|
+
PAY_PORTION = 6,
|
|
16
|
+
PAY_PORTION_FULL_PRECISION = 7,
|
|
17
|
+
V2_SWAP_EXACT_IN = 8,
|
|
18
|
+
V2_SWAP_EXACT_OUT = 9,
|
|
19
|
+
PERMIT2_PERMIT = 10,
|
|
20
|
+
WRAP_ETH = 11,
|
|
21
|
+
UNWRAP_WETH = 12,
|
|
22
|
+
PERMIT2_TRANSFER_FROM_BATCH = 13,
|
|
23
|
+
BALANCE_CHECK_ERC20 = 14,
|
|
24
|
+
V4_SWAP = 16,
|
|
25
|
+
V3_POSITION_MANAGER_PERMIT = 17,
|
|
26
|
+
V3_POSITION_MANAGER_CALL = 18,
|
|
27
|
+
V4_INITIALIZE_POOL = 19,
|
|
28
|
+
V4_POSITION_MANAGER_CALL = 20,
|
|
29
|
+
EXECUTE_SUB_PLAN = 33,
|
|
30
|
+
ACROSS_V4_DEPOSIT_V3 = 64
|
|
31
|
+
}
|
|
32
|
+
export declare enum Subparser {
|
|
33
|
+
V3PathExactIn = 0,
|
|
34
|
+
V3PathExactOut = 1
|
|
35
|
+
}
|
|
36
|
+
export declare enum Parser {
|
|
37
|
+
Abi = 0,
|
|
38
|
+
V4Actions = 1,
|
|
39
|
+
V3Actions = 2
|
|
40
|
+
}
|
|
41
|
+
export type ParamType = {
|
|
42
|
+
readonly name: string;
|
|
43
|
+
readonly type: string;
|
|
44
|
+
readonly subparser?: Subparser;
|
|
45
|
+
};
|
|
46
|
+
export type CommandDefinition = {
|
|
47
|
+
parser: Parser.Abi;
|
|
48
|
+
params: ParamType[];
|
|
49
|
+
} | {
|
|
50
|
+
parser: Parser.V4Actions;
|
|
51
|
+
} | {
|
|
52
|
+
parser: Parser.V3Actions;
|
|
53
|
+
};
|
|
54
|
+
export declare const COMMAND_DEFINITION: {
|
|
55
|
+
[key in CommandType]: CommandDefinition;
|
|
56
|
+
};
|
|
57
|
+
export declare const V2V3_SWAP_COMMANDS_V2_1_1: {
|
|
58
|
+
[key: number]: CommandDefinition;
|
|
59
|
+
};
|
|
60
|
+
export declare class RoutePlanner {
|
|
61
|
+
commands: string;
|
|
62
|
+
inputs: string[];
|
|
63
|
+
constructor();
|
|
64
|
+
addSubPlan(subplan: RoutePlanner): RoutePlanner;
|
|
65
|
+
addCommand(type: CommandType, parameters: any[], allowRevert?: boolean, urVersion?: UniversalRouterVersion): RoutePlanner;
|
|
66
|
+
/**
|
|
67
|
+
* Add Across bridge deposit command for cross-chain bridging
|
|
68
|
+
* @param params AcrossV4DepositV3Params containing bridge parameters
|
|
69
|
+
* @returns RoutePlanner instance for chaining
|
|
70
|
+
*/
|
|
71
|
+
addAcrossBridge(params: AcrossV4DepositV3Params): RoutePlanner;
|
|
72
|
+
}
|
|
73
|
+
export type RouterCommand = {
|
|
74
|
+
type: CommandType;
|
|
75
|
+
encodedInput: string;
|
|
76
|
+
};
|
|
77
|
+
export declare function createCommand(type: CommandType, parameters: any[], urVersion?: UniversalRouterVersion): RouterCommand;
|
|
78
|
+
//# sourceMappingURL=routerCommands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routerCommands.d.ts","sourceRoot":"","sources":["../../../../src/utils/routerCommands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAmB,MAAM,aAAa,CAAA;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAA;AAEpE;;;;GAIG;AACH,oBAAY,WAAW;IACrB,gBAAgB,IAAO;IACvB,iBAAiB,IAAO;IACxB,qBAAqB,IAAO;IAC5B,oBAAoB,IAAO;IAC3B,KAAK,IAAO;IACZ,QAAQ,IAAO;IACf,WAAW,IAAO;IAClB,0BAA0B,IAAO;IAEjC,gBAAgB,IAAO;IACvB,iBAAiB,IAAO;IACxB,cAAc,KAAO;IACrB,QAAQ,KAAO;IACf,WAAW,KAAO;IAClB,2BAA2B,KAAO;IAClC,mBAAmB,KAAO;IAE1B,OAAO,KAAO;IACd,0BAA0B,KAAO;IACjC,wBAAwB,KAAO;IAC/B,kBAAkB,KAAO;IACzB,wBAAwB,KAAO;IAE/B,gBAAgB,KAAO;IAGvB,oBAAoB,KAAO;CAC5B;AAED,oBAAY,SAAS;IACnB,aAAa,IAAA;IACb,cAAc,IAAA;CACf;AAED,oBAAY,MAAM;IAChB,GAAG,IAAA;IACH,SAAS,IAAA;IACT,SAAS,IAAA;CACV;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,iBAAiB,GACzB;IACE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAA;IAClB,MAAM,EAAE,SAAS,EAAE,CAAA;CACpB,GACD;IACE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAA;CACzB,GACD;IACE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAA;CACzB,CAAA;AAwBL,eAAO,MAAM,kBAAkB,EAAE;KAAG,GAAG,IAAI,WAAW,GAAG,iBAAiB;CA+JzE,CAAA;AAGD,eAAO,MAAM,yBAAyB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAA;CA6CzE,CAAA;AAED,qBAAa,YAAY;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,EAAE,CAAA;;IAOhB,UAAU,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY;IAK/C,UAAU,CACR,IAAI,EAAE,WAAW,EACjB,UAAU,EAAE,GAAG,EAAE,EACjB,WAAW,UAAQ,EACnB,SAAS,CAAC,EAAE,sBAAsB,GACjC,YAAY;IAcf;;;;OAIG;IACH,eAAe,CAAC,MAAM,EAAE,uBAAuB,GAAG,YAAY;CAuB/D;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,WAAW,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,SAAS,CAAC,EAAE,sBAAsB,GAAG,aAAa,CAmBrH"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Trade as RouterTrade } from '@kittycorn-labs/router-sdk';
|
|
2
|
+
import { Currency, TradeType } from '@kittycorn-labs/sdk-core';
|
|
3
|
+
export type TokenInRoute = {
|
|
4
|
+
address: string;
|
|
5
|
+
chainId: number;
|
|
6
|
+
symbol: string;
|
|
7
|
+
decimals: string;
|
|
8
|
+
name?: string;
|
|
9
|
+
buyFeeBps?: string;
|
|
10
|
+
sellFeeBps?: string;
|
|
11
|
+
};
|
|
12
|
+
export declare enum PoolType {
|
|
13
|
+
V2Pool = "v2-pool",
|
|
14
|
+
V3Pool = "v3-pool",
|
|
15
|
+
V4Pool = "v4-pool"
|
|
16
|
+
}
|
|
17
|
+
export type V2Reserve = {
|
|
18
|
+
token: TokenInRoute;
|
|
19
|
+
quotient: string;
|
|
20
|
+
};
|
|
21
|
+
export type V2PoolInRoute = {
|
|
22
|
+
type: PoolType.V2Pool;
|
|
23
|
+
address?: string;
|
|
24
|
+
tokenIn: TokenInRoute;
|
|
25
|
+
tokenOut: TokenInRoute;
|
|
26
|
+
reserve0: V2Reserve;
|
|
27
|
+
reserve1: V2Reserve;
|
|
28
|
+
amountIn?: string;
|
|
29
|
+
amountOut?: string;
|
|
30
|
+
};
|
|
31
|
+
export type V3PoolInRoute = {
|
|
32
|
+
type: PoolType.V3Pool;
|
|
33
|
+
address?: string;
|
|
34
|
+
tokenIn: TokenInRoute;
|
|
35
|
+
tokenOut: TokenInRoute;
|
|
36
|
+
sqrtRatioX96: string;
|
|
37
|
+
liquidity: string;
|
|
38
|
+
tickCurrent: string;
|
|
39
|
+
fee: string;
|
|
40
|
+
amountIn?: string;
|
|
41
|
+
amountOut?: string;
|
|
42
|
+
};
|
|
43
|
+
export type V4PoolInRoute = {
|
|
44
|
+
type: PoolType.V4Pool;
|
|
45
|
+
address?: string;
|
|
46
|
+
tokenIn: TokenInRoute;
|
|
47
|
+
tokenOut: TokenInRoute;
|
|
48
|
+
fee: string;
|
|
49
|
+
tickSpacing: string;
|
|
50
|
+
hooks: string;
|
|
51
|
+
liquidity: string;
|
|
52
|
+
sqrtRatioX96: string;
|
|
53
|
+
tickCurrent: string;
|
|
54
|
+
amountIn?: string;
|
|
55
|
+
amountOut?: string;
|
|
56
|
+
};
|
|
57
|
+
export type PartialClassicQuote = {
|
|
58
|
+
tokenIn: string;
|
|
59
|
+
tokenOut: string;
|
|
60
|
+
tradeType: TradeType;
|
|
61
|
+
route: Array<(V4PoolInRoute | V3PoolInRoute | V2PoolInRoute)[]>;
|
|
62
|
+
};
|
|
63
|
+
export declare const isNativeCurrency: (address: string) => boolean;
|
|
64
|
+
export declare class RouterTradeAdapter {
|
|
65
|
+
static fromClassicQuote(quote: PartialClassicQuote): RouterTrade<Currency, Currency, TradeType>;
|
|
66
|
+
private static toCurrency;
|
|
67
|
+
private static toPoolOrPair;
|
|
68
|
+
private static toToken;
|
|
69
|
+
private static toV3Pool;
|
|
70
|
+
private static toV4Pool;
|
|
71
|
+
private static toPair;
|
|
72
|
+
private static isVersionedRoute;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=routerTradeAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routerTradeAdapter.d.ts","sourceRoot":"","sources":["../../../../src/utils/routerTradeAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAChF,OAAO,EAAE,QAAQ,EAAgC,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAO5F,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,oBAAY,QAAQ;IAClB,MAAM,YAAY;IAClB,MAAM,YAAY;IAClB,MAAM,YAAY;CACnB;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,EAAE,YAAY,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,YAAY,CAAA;IACrB,QAAQ,EAAE,YAAY,CAAA;IACtB,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,YAAY,CAAA;IACrB,QAAQ,EAAE,YAAY,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,YAAY,CAAA;IACrB,QAAQ,EAAE,YAAY,CAAA;IACtB,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAEhC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,KAAK,EAAE,KAAK,CAAC,CAAC,aAAa,GAAG,aAAa,GAAG,aAAa,CAAC,EAAE,CAAC,CAAA;CAChE,CAAA;AAWD,eAAO,MAAM,gBAAgB,YAAa,MAAM,YAC8D,CAAA;AAI9G,qBAAa,kBAAkB;IAE7B,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,mBAAmB;IAgGlD,OAAO,CAAC,MAAM,CAAC,UAAU;IAOzB,OAAO,CAAC,MAAM,CAAC,YAAY,CAW1B;IAED,OAAO,CAAC,MAAM,CAAC,OAAO;IActB,OAAO,CAAC,MAAM,CAAC,QAAQ;IAWvB,OAAO,CAAC,MAAM,CAAC,QAAQ;IAevB,OAAO,CAAC,MAAM,CAAC,MAAM,CAKpB;IAED,OAAO,CAAC,MAAM,CAAC,gBAAgB;CAMhC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toV4URVersion.d.ts","sourceRoot":"","sources":["../../../../src/utils/toV4URVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAMpD,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAMzE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateEncodeSwaps.d.ts","sourceRoot":"","sources":["../../../../src/utils/validateEncodeSwaps.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAY,MAAM,sBAAsB,CAAA;AA0FtF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,2BAA2B,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,CAsTlG"}
|
package/package.json
CHANGED
|
@@ -1,63 +1,49 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kittycorn-labs/universal-router-sdk",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "sdk for integrating with the Universal Router contracts",
|
|
5
|
-
"repository": "https://github.com/Crown-Labs/sdks",
|
|
5
|
+
"repository": "https://github.com/Crown-Labs/sdks.git",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"uniswap",
|
|
8
8
|
"ethereum"
|
|
9
9
|
],
|
|
10
10
|
"license": "MIT",
|
|
11
|
-
"main": "dist/index.js",
|
|
12
|
-
"typings": "dist/index.d.ts",
|
|
11
|
+
"main": "./dist/cjs/src/index.js",
|
|
12
|
+
"typings": "./dist/types/src/index.d.ts",
|
|
13
|
+
"module": "./dist/esm/src/index.js",
|
|
14
|
+
"exports": {
|
|
15
|
+
".": {
|
|
16
|
+
"types": "./dist/types/src/index.d.ts",
|
|
17
|
+
"import": "./dist/esm/src/index.js",
|
|
18
|
+
"require": "./dist/cjs/src/index.js"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"sideEffects": false,
|
|
13
22
|
"files": [
|
|
14
|
-
"dist"
|
|
23
|
+
"dist",
|
|
24
|
+
"README.md",
|
|
25
|
+
"LICENSE"
|
|
15
26
|
],
|
|
16
27
|
"engines": {
|
|
17
|
-
"node": ">=
|
|
18
|
-
},
|
|
19
|
-
"scripts": {
|
|
20
|
-
"build": "tsdx build",
|
|
21
|
-
"docs": "typedoc",
|
|
22
|
-
"forge:fix": "forge fmt",
|
|
23
|
-
"lint": "yarn prettier",
|
|
24
|
-
"lint:fix": "yarn prettier:fix && yarn forge:fix",
|
|
25
|
-
"prettier": "prettier --check '**/*.ts' && prettier --check '**/*.json'",
|
|
26
|
-
"prettier:fix": "prettier --write '**/*.ts' && prettier --write '**/*.json'",
|
|
27
|
-
"release": "changeset publish",
|
|
28
|
-
"test": "yarn test:hardhat && yarn test:forge",
|
|
29
|
-
"test:forge": "forge test",
|
|
30
|
-
"test:hardhat": "env TS_NODE_COMPILER_OPTIONS='{\"module\": \"commonjs\" }' hardhat test"
|
|
28
|
+
"node": ">=22"
|
|
31
29
|
},
|
|
32
30
|
"dependencies": {
|
|
33
|
-
"@
|
|
34
|
-
"@
|
|
35
|
-
"@
|
|
36
|
-
"@kittycorn-labs/
|
|
37
|
-
"@kittycorn-labs/
|
|
38
|
-
"@
|
|
39
|
-
"@
|
|
40
|
-
"@
|
|
41
|
-
"@uniswap/v2-core": "^1.0.1",
|
|
42
|
-
"@uniswap/v3-core": "1.0.0",
|
|
31
|
+
"@ethersproject/abi": "^5.8.0",
|
|
32
|
+
"@ethersproject/abstract-signer": "^5.8.0",
|
|
33
|
+
"@uniswap/permit2-sdk": "1.4.1",
|
|
34
|
+
"@kittycorn-labs/router-sdk": "2.0.0",
|
|
35
|
+
"@kittycorn-labs/sdk-core": "2.0.0",
|
|
36
|
+
"@kittycorn-labs/v2-sdk": "2.0.0",
|
|
37
|
+
"@kittycorn-labs/v3-sdk": "2.0.0",
|
|
38
|
+
"@kittycorn-labs/v4-sdk": "2.0.0",
|
|
43
39
|
"bignumber.js": "^9.0.2",
|
|
44
|
-
"
|
|
45
|
-
|
|
46
|
-
"devDependencies": {
|
|
47
|
-
"@types/chai": "^4.3.3",
|
|
48
|
-
"@types/mocha": "^9.1.1",
|
|
49
|
-
"@types/node": "^18.7.16",
|
|
50
|
-
"@types/node-fetch": "^2.6.2",
|
|
51
|
-
"chai": "^4.3.6",
|
|
52
|
-
"dotenv": "^16.0.3",
|
|
53
|
-
"eslint-plugin-prettier": "^3.4.1",
|
|
54
|
-
"hardhat": "^2.22.15",
|
|
55
|
-
"prettier": "^2.4.1",
|
|
56
|
-
"ts-node": "^10.9.1",
|
|
57
|
-
"tsdx": "^0.14.1",
|
|
40
|
+
"jsbi": "^3.1.4",
|
|
41
|
+
"tiny-invariant": "^1.1.0",
|
|
58
42
|
"tslib": "^2.3.0",
|
|
59
|
-
"
|
|
60
|
-
"
|
|
43
|
+
"@ethersproject/bignumber": "^5.8.0",
|
|
44
|
+
"@ethersproject/address": "^5.8.0",
|
|
45
|
+
"@ethersproject/bytes": "^5.8.0",
|
|
46
|
+
"@ethersproject/random": "^5.8.0"
|
|
61
47
|
},
|
|
62
48
|
"prettier": {
|
|
63
49
|
"printWidth": 120,
|
|
@@ -66,11 +52,6 @@
|
|
|
66
52
|
"trailingComma": "es5"
|
|
67
53
|
},
|
|
68
54
|
"publishConfig": {
|
|
69
|
-
"access": "public"
|
|
70
|
-
|
|
71
|
-
},
|
|
72
|
-
"installConfig": {
|
|
73
|
-
"hoistingLimits": "workspaces"
|
|
74
|
-
},
|
|
75
|
-
"sideEffects": false
|
|
55
|
+
"access": "public"
|
|
56
|
+
}
|
|
76
57
|
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { RoutePlanner } from '../../utils/routerCommands';
|
|
2
|
-
import { Trade as RouterTrade, SwapOptions as RouterSwapOptions } from '@kittycorn-labs/router-sdk';
|
|
3
|
-
import { Permit2Permit } from '../../utils/inputTokens';
|
|
4
|
-
import { Currency, TradeType } from '@kittycorn-labs/sdk-core';
|
|
5
|
-
import { Command, RouterActionType, TradeConfig } from '../Command';
|
|
6
|
-
import { BigNumberish } from 'ethers';
|
|
7
|
-
export declare type FlatFeeOptions = {
|
|
8
|
-
amount: BigNumberish;
|
|
9
|
-
recipient: string;
|
|
10
|
-
};
|
|
11
|
-
export declare type SwapOptions = Omit<RouterSwapOptions, 'inputTokenPermit'> & {
|
|
12
|
-
useRouterBalance?: boolean;
|
|
13
|
-
inputTokenPermit?: Permit2Permit;
|
|
14
|
-
flatFee?: FlatFeeOptions;
|
|
15
|
-
safeMode?: boolean;
|
|
16
|
-
};
|
|
17
|
-
export declare class UniswapTrade implements Command {
|
|
18
|
-
trade: RouterTrade<Currency, Currency, TradeType>;
|
|
19
|
-
options: SwapOptions;
|
|
20
|
-
readonly tradeType: RouterActionType;
|
|
21
|
-
readonly payerIsUser: boolean;
|
|
22
|
-
constructor(trade: RouterTrade<Currency, Currency, TradeType>, options: SwapOptions);
|
|
23
|
-
get isAllV4(): boolean;
|
|
24
|
-
get inputRequiresWrap(): boolean;
|
|
25
|
-
get inputRequiresUnwrap(): boolean;
|
|
26
|
-
get outputRequiresWrap(): boolean;
|
|
27
|
-
get outputRequiresUnwrap(): boolean;
|
|
28
|
-
get outputRequiresTransition(): boolean;
|
|
29
|
-
encode(planner: RoutePlanner, _config: TradeConfig): void;
|
|
30
|
-
}
|
package/dist/index.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export { SwapRouter } from './swapRouter';
|
|
2
|
-
export type { MigrateV3ToV4Options } from './swapRouter';
|
|
3
|
-
export * from './entities';
|
|
4
|
-
export * from './utils/routerTradeAdapter';
|
|
5
|
-
export { RoutePlanner, CommandType, COMMAND_DEFINITION, Parser, Subparser } from './utils/routerCommands';
|
|
6
|
-
export type { CommandDefinition, ParamType } from './utils/routerCommands';
|
|
7
|
-
export { UNIVERSAL_ROUTER_CREATION_BLOCK, UNIVERSAL_ROUTER_ADDRESS, ROUTER_AS_RECIPIENT, WETH_ADDRESS, UniversalRouterVersion, } from './utils/constants';
|
|
8
|
-
export { CommandParser, GenericCommandParser } from './utils/commandParser';
|
|
9
|
-
export type { UniversalRouterCommand, UniversalRouterCall, Param, CommandsDefinition } from './utils/commandParser';
|
|
10
|
-
export type { Permit2Permit } from './utils/inputTokens';
|
package/dist/index.js
DELETED
package/dist/swapRouter.d.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Interface } from '@ethersproject/abi';
|
|
2
|
-
import { BigNumberish } from 'ethers';
|
|
3
|
-
import { MethodParameters, Position as V3Position, RemoveLiquidityOptions as V3RemoveLiquidityOptions } from '@kittycorn-labs/v3-sdk';
|
|
4
|
-
import { Position as V4Position, AddLiquidityOptions as V4AddLiquidityOptions } from '@kittycorn-labs/v4-sdk';
|
|
5
|
-
import { Trade as RouterTrade } from '@kittycorn-labs/router-sdk';
|
|
6
|
-
import { Currency, TradeType } from '@kittycorn-labs/sdk-core';
|
|
7
|
-
import { SwapOptions } from './entities/actions/uniswap';
|
|
8
|
-
export declare type SwapRouterConfig = {
|
|
9
|
-
sender?: string;
|
|
10
|
-
deadline?: BigNumberish;
|
|
11
|
-
};
|
|
12
|
-
export interface MigrateV3ToV4Options {
|
|
13
|
-
inputPosition: V3Position;
|
|
14
|
-
outputPosition: V4Position;
|
|
15
|
-
v3RemoveLiquidityOptions: V3RemoveLiquidityOptions;
|
|
16
|
-
v4AddLiquidityOptions: V4AddLiquidityOptions;
|
|
17
|
-
}
|
|
18
|
-
export declare abstract class SwapRouter {
|
|
19
|
-
static INTERFACE: Interface;
|
|
20
|
-
static swapCallParameters(trades: RouterTrade<Currency, Currency, TradeType>, options: SwapOptions): MethodParameters;
|
|
21
|
-
/**
|
|
22
|
-
* Builds the call parameters for a migration from a V3 position to a V4 position.
|
|
23
|
-
* Some requirements of the parameters:
|
|
24
|
-
* - v3RemoveLiquidityOptions.collectOptions.recipient must equal v4PositionManager
|
|
25
|
-
* - v3RemoveLiquidityOptions.liquidityPercentage must be 100%
|
|
26
|
-
* - input pool and output pool must have the same tokens
|
|
27
|
-
* - V3 NFT must be approved, or valid inputV3NFTPermit must be provided with UR as spender
|
|
28
|
-
*/
|
|
29
|
-
static migrateV3ToV4CallParameters(options: MigrateV3ToV4Options, positionManagerOverride?: string): MethodParameters;
|
|
30
|
-
/**
|
|
31
|
-
* Encodes a planned route into a method name and parameters for the Router contract.
|
|
32
|
-
* @param planner the planned route
|
|
33
|
-
* @param nativeCurrencyValue the native currency value of the planned route
|
|
34
|
-
* @param config the router config
|
|
35
|
-
*/
|
|
36
|
-
private static encodePlan;
|
|
37
|
-
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export declare const FORGE_V4_POSITION_MANAGER = "0x2e234DAe75C793f67A35089C9d99245E1C58470b";
|
|
2
|
-
export declare const FORGE_SENDER_ADDRESS = "0xcf03dd0a894ef79cb5b601a43c4b25e3ae4c67ed";
|
|
3
|
-
export declare const TEST_RECIPIENT_ADDRESS = "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
|
|
4
|
-
export declare const TEST_FEE_RECIPIENT_ADDRESS = "0xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
|
5
|
-
export declare const PERMIT2_ADDRESS = "0x000000000022D473030F116dDEE9F6B43aC78BA3";
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { Wallet } from 'ethers';
|
|
2
|
-
import { PermitSingle } from '@uniswap/permit2-sdk';
|
|
3
|
-
import { Permit2Permit } from '../../src/utils/inputTokens';
|
|
4
|
-
export declare function generatePermitSignature(permit: PermitSingle, signer: Wallet, chainId: number, permitAddress?: string): Promise<string>;
|
|
5
|
-
export declare function generateEip2098PermitSignature(permit: PermitSingle, signer: Wallet, chainId: number, permitAddress?: string): Promise<string>;
|
|
6
|
-
export declare function toInputPermit(signature: string, permit: PermitSingle): Permit2Permit;
|
|
7
|
-
export declare function makePermit(token: string, amount?: string, nonce?: string, routerAddress?: string): PermitSingle;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { MixedRouteTrade, Trade as RouterTrade } from '@kittycorn-labs/router-sdk';
|
|
2
|
-
import { Trade as V2Trade, Pair } from '@kittycorn-labs/v2-sdk';
|
|
3
|
-
import { Trade as V3Trade, Pool, FeeAmount } from '@kittycorn-labs/v3-sdk';
|
|
4
|
-
import { Pool as V4Pool, Trade as V4Trade } from '@kittycorn-labs/v4-sdk';
|
|
5
|
-
import { SwapOptions } from '../../src';
|
|
6
|
-
import { TradeType, Ether, Token, Currency, ChainId } from '@kittycorn-labs/sdk-core';
|
|
7
|
-
export declare const ETHER: Ether;
|
|
8
|
-
export declare const WETH: Token;
|
|
9
|
-
export declare const DAI: Token;
|
|
10
|
-
export declare const USDC: Token;
|
|
11
|
-
export declare const FEE_AMOUNT = FeeAmount.MEDIUM;
|
|
12
|
-
declare type UniswapPools = {
|
|
13
|
-
WETH_USDC_V2: Pair;
|
|
14
|
-
USDC_DAI_V2: Pair;
|
|
15
|
-
WETH_USDC_V3: Pool;
|
|
16
|
-
WETH_USDC_V3_LOW_FEE: Pool;
|
|
17
|
-
USDC_DAI_V3: Pool;
|
|
18
|
-
};
|
|
19
|
-
export declare function getUniswapPools(forkBlock?: number): Promise<UniswapPools>;
|
|
20
|
-
export declare function getPair(tokenA: Token, tokenB: Token, blockNumber: number): Promise<Pair>;
|
|
21
|
-
export declare function getPool(tokenA: Token, tokenB: Token, feeAmount: FeeAmount, blockNumber: number): Promise<Pool>;
|
|
22
|
-
export declare function getPoolTokenize(chainId: ChainId, tokenize: Token): V4Pool;
|
|
23
|
-
export declare function swapOptions(options: Partial<SwapOptions>): SwapOptions;
|
|
24
|
-
export declare function buildTrade(trades: (V2Trade<Currency, Currency, TradeType> | V3Trade<Currency, Currency, TradeType> | V4Trade<Currency, Currency, TradeType> | MixedRouteTrade<Currency, Currency, TradeType>)[]): RouterTrade<Currency, Currency, TradeType>;
|
|
25
|
-
export {};
|