four-flap-meme-sdk 2.0.0 → 2.1.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/dist/__tests__/subpath-exports.test.js +34 -0
- package/dist/chains/index.d.ts +13 -0
- package/dist/chains/index.js +13 -0
- package/dist/chains/xlayer/eip7702/index.d.ts +2 -0
- package/dist/flap/index.d.ts +10 -0
- package/dist/flap/index.js +8 -0
- package/dist/shared/constants/index.d.ts +2 -0
- package/dist/shared/index.d.ts +2 -0
- package/package.json +66 -1
- package/dist/chains/bsc/four/disperse.d.ts +0 -12
- package/dist/chains/bsc/four/disperse.js +0 -470
- package/dist/chains/bsc/four/pairwise.d.ts +0 -7
- package/dist/chains/bsc/four/pairwise.js +0 -308
- package/dist/chains/bsc/four/submit/blockrazor.d.ts +0 -18
- package/dist/chains/bsc/four/submit/blockrazor.js +0 -86
- package/dist/chains/bsc/four/submit/direct.d.ts +0 -66
- package/dist/chains/bsc/four/submit/direct.js +0 -452
- package/dist/chains/bsc/four/submit/helpers.d.ts +0 -18
- package/dist/chains/bsc/four/submit/helpers.js +0 -57
- package/dist/chains/bsc/four/submit/index.d.ts +0 -12
- package/dist/chains/bsc/four/submit/index.js +0 -11
- package/dist/chains/bsc/four/submit/merkle.d.ts +0 -18
- package/dist/chains/bsc/four/submit/merkle.js +0 -74
- package/dist/chains/bsc/four/submit/types.d.ts +0 -143
- package/dist/chains/bsc/four/swap/index.d.ts +0 -32
- package/dist/chains/bsc/four/swap/index.js +0 -829
- package/dist/chains/bsc/four/swap/types.d.ts +0 -70
- package/dist/chains/bsc/four/swap/types.js +0 -1
- package/dist/chains/bsc/four/sweep.d.ts +0 -13
- package/dist/chains/bsc/four/sweep.js +0 -788
- package/dist/chains/bsc/four/utils/index.d.ts +0 -20
- package/dist/chains/bsc/four/utils/index.js +0 -1558
- package/dist/chains/bsc/four/utils/types.d.ts +0 -1
- package/dist/chains/bsc/four/utils/types.js +0 -1
- package/dist/chains/bsc/pancake/bundle-buy-first/index.d.ts +0 -8
- package/dist/chains/bsc/pancake/bundle-buy-first/index.js +0 -907
- package/dist/chains/bsc/pancake/bundle-buy-first/types.d.ts +0 -73
- package/dist/chains/bsc/pancake/bundle-buy-first/types.js +0 -1
- package/dist/chains/bsc/pancake/bundle-swap/helpers.d.ts +0 -102
- package/dist/chains/bsc/pancake/bundle-swap/helpers.js +0 -572
- package/dist/chains/bsc/pancake/bundle-swap/index.d.ts +0 -50
- package/dist/chains/bsc/pancake/bundle-swap/index.js +0 -1066
- package/dist/chains/bsc/pancake/bundle-swap/types.d.ts +0 -202
- package/dist/chains/bsc/pancake/bundle-swap/types.js +0 -3
- package/dist/chains/xlayer/eip7702/bundle-swap/index.d.ts +0 -72
- package/dist/chains/xlayer/eip7702/bundle-swap/index.js +0 -921
- package/dist/chains/xlayer/eip7702/bundle-swap/types.d.ts +0 -65
- package/dist/chains/xlayer/eip7702/bundle-swap/types.js +0 -1
- package/dist/chains/xlayer/eip7702/multi-hop-transfer/index.d.ts +0 -128
- package/dist/chains/xlayer/eip7702/multi-hop-transfer/index.js +0 -857
- package/dist/chains/xlayer/eip7702/multi-hop-transfer/types.d.ts +0 -85
- package/dist/chains/xlayer/eip7702/multi-hop-transfer/types.js +0 -1
- package/dist/chains/xlayer/eip7702/volume/index.d.ts +0 -96
- package/dist/chains/xlayer/eip7702/volume/index.js +0 -793
- package/dist/chains/xlayer/eip7702/volume/types.d.ts +0 -124
- package/dist/chains/xlayer/eip7702/volume/types.js +0 -1
- package/dist/chains/xlayer/eoa/types-core.d.ts +0 -363
- package/dist/chains/xlayer/eoa/types-core.js +0 -53
- package/dist/chains/xlayer/eoa/types-create.d.ts +0 -413
- package/dist/chains/xlayer/eoa/types-create.js +0 -9
- package/dist/chains/xlayer/eoa/types-volume.d.ts +0 -209
- package/dist/chains/xlayer/eoa/types-volume.js +0 -13
- package/dist/dex/direct-router/index.d.ts +0 -70
- package/dist/dex/direct-router/index.js +0 -1410
- package/dist/dex/direct-router/types.d.ts +0 -81
- package/dist/dex/direct-router/types.js +0 -1
- package/dist/shared/abis/TaxToken.json +0 -969
- package/dist/shared/abis/TokenManager.json +0 -836
- package/dist/shared/abis/TokenManager2.json +0 -136
- package/dist/shared/abis/TokenManagerHelper3.json +0 -993
- package/dist/shared/abis 2/TaxToken.json +0 -105
- package/dist/shared/abis 2/TokenManager.json +0 -836
- package/dist/shared/abis 2/TokenManager2.json +0 -60
- package/dist/shared/abis 2/TokenManagerHelper3.json +0 -993
- package/dist/shared/abis 2/common.d.ts +0 -85
- package/dist/shared/abis 2/common.js +0 -254
- package/dist/shared/abis 2/index.d.ts +0 -8
- package/dist/shared/abis 2/index.js +0 -8
- package/dist/shared/clients 2/blockrazor.d.ts +0 -314
- package/dist/shared/clients 2/blockrazor.js +0 -596
- package/dist/shared/clients 2/club48.d.ts +0 -154
- package/dist/shared/clients 2/club48.js +0 -331
- package/dist/shared/clients 2/emitservice.d.ts +0 -47
- package/dist/shared/clients 2/emitservice.js +0 -44
- package/dist/shared/clients 2/four.d.ts +0 -132
- package/dist/shared/clients 2/four.js +0 -281
- package/dist/shared/clients 2/merkle.d.ts +0 -210
- package/dist/shared/clients 2/merkle.js +0 -400
- package/dist/shared/flap/__tests__/curve.test.d.ts +0 -1
- package/dist/shared/flap/__tests__/curve.test.js +0 -85
- package/dist/shared/flap/portal/index.d.ts +0 -12
- package/dist/shared/flap/portal/index.js +0 -11
- package/dist/shared/flap/portal/portal.d.ts +0 -47
- package/dist/shared/flap/portal/portal.js +0 -218
- package/dist/shared/flap/portal/types.d.ts +0 -227
- package/dist/shared/flap/portal/types.js +0 -80
- package/dist/shared/flap/portal/writer.d.ts +0 -121
- package/dist/shared/flap/portal/writer.js +0 -265
- package/dist/shared/flap/portal-bundle-merkle/core/index.d.ts +0 -18
- package/dist/shared/flap/portal-bundle-merkle/core/index.js +0 -938
- package/dist/shared/flap/portal-bundle-merkle/core/types.d.ts +0 -1
- package/dist/shared/flap/portal-bundle-merkle/core/types.js +0 -1
- package/dist/shared/flap/portal-bundle-merkle/swap/index.d.ts +0 -42
- package/dist/shared/flap/portal-bundle-merkle/swap/index.js +0 -1448
- package/dist/shared/flap/portal-bundle-merkle/swap/types.d.ts +0 -84
- package/dist/shared/flap/portal-bundle-merkle/swap/types.js +0 -1
- package/dist/shared/flap/portal-bundle-merkle/utils/index.d.ts +0 -17
- package/dist/shared/flap/portal-bundle-merkle/utils/index.js +0 -1024
- package/dist/shared/flap/portal-bundle-merkle/utils/types.d.ts +0 -16
- package/dist/shared/flap/portal-bundle-merkle/utils/types.js +0 -1
- package/dist/shared/flap/portal-bundle-merkle/utils-helpers.d.ts +0 -100
- package/dist/shared/flap/portal-bundle-merkle/utils-helpers.js +0 -133
- package/dist/shared/flap 2/__tests__/curve.test.d.ts +0 -1
- package/dist/shared/flap 2/__tests__/curve.test.js +0 -85
- package/dist/shared/flap 2/abi.d.ts +0 -4
- package/dist/shared/flap 2/abi.js +0 -4
- package/dist/shared/flap 2/constants.d.ts +0 -128
- package/dist/shared/flap 2/constants.js +0 -143
- package/dist/shared/flap 2/curve.d.ts +0 -33
- package/dist/shared/flap 2/curve.js +0 -84
- package/dist/shared/flap 2/errors.d.ts +0 -37
- package/dist/shared/flap 2/errors.js +0 -114
- package/dist/shared/flap 2/index.d.ts +0 -22
- package/dist/shared/flap 2/index.js +0 -33
- package/dist/shared/flap 2/ipfs.d.ts +0 -21
- package/dist/shared/flap 2/ipfs.js +0 -38
- package/dist/shared/flap 2/meta.d.ts +0 -30
- package/dist/shared/flap 2/meta.js +0 -195
- package/dist/shared/flap 2/permit.d.ts +0 -16
- package/dist/shared/flap 2/permit.js +0 -67
- package/dist/shared/flap 2/pinata.d.ts +0 -40
- package/dist/shared/flap 2/pinata.js +0 -106
- package/dist/shared/flap 2/portal-bundle-merkle/config.d.ts +0 -79
- package/dist/shared/flap 2/portal-bundle-merkle/config.js +0 -133
- package/dist/shared/flap 2/portal-bundle-merkle/core.d.ts +0 -18
- package/dist/shared/flap 2/portal-bundle-merkle/core.js +0 -938
- package/dist/shared/flap 2/portal-bundle-merkle/create-to-dex.d.ts +0 -125
- package/dist/shared/flap 2/portal-bundle-merkle/create-to-dex.js +0 -665
- package/dist/shared/flap 2/portal-bundle-merkle/curve-to-dex.d.ts +0 -88
- package/dist/shared/flap 2/portal-bundle-merkle/curve-to-dex.js +0 -446
- package/dist/shared/flap 2/portal-bundle-merkle/index.d.ts +0 -14
- package/dist/shared/flap 2/portal-bundle-merkle/index.js +0 -26
- package/dist/shared/flap 2/portal-bundle-merkle/pancake-proxy.d.ts +0 -28
- package/dist/shared/flap 2/portal-bundle-merkle/pancake-proxy.js +0 -701
- package/dist/shared/flap 2/portal-bundle-merkle/private.d.ts +0 -17
- package/dist/shared/flap 2/portal-bundle-merkle/private.js +0 -549
- package/dist/shared/flap 2/portal-bundle-merkle/swap-buy-first.d.ts +0 -65
- package/dist/shared/flap 2/portal-bundle-merkle/swap-buy-first.js +0 -831
- package/dist/shared/flap 2/portal-bundle-merkle/swap.d.ts +0 -201
- package/dist/shared/flap 2/portal-bundle-merkle/swap.js +0 -1359
- package/dist/shared/flap 2/portal-bundle-merkle/types.d.ts +0 -358
- package/dist/shared/flap 2/portal-bundle-merkle/types.js +0 -1
- package/dist/shared/flap 2/portal-bundle-merkle/utils.d.ts +0 -89
- package/dist/shared/flap 2/portal-bundle-merkle/utils.js +0 -963
- package/dist/shared/flap 2/portal-bundle.d.ts +0 -119
- package/dist/shared/flap 2/portal-bundle.js +0 -584
- package/dist/shared/flap 2/portal.d.ts +0 -392
- package/dist/shared/flap 2/portal.js +0 -559
- package/dist/shared/flap 2/vanity.d.ts +0 -48
- package/dist/shared/flap 2/vanity.js +0 -110
- package/dist/shared/flap 2/vault.d.ts +0 -240
- package/dist/shared/flap 2/vault.js +0 -366
- package/dist/shared/four 2/index.d.ts +0 -7
- package/dist/shared/four 2/index.js +0 -22
- package/dist/shared/four 2/tax-token.d.ts +0 -176
- package/dist/shared/four 2/tax-token.js +0 -302
- package/dist/shared/index 2.js +0 -10
- package/dist/shared/index.d 2.ts +0 -10
- package/dist/types/distribute.d.ts +0 -72
- package/dist/types/distribute.js +0 -1
- package/dist/types 2/errors.d.ts +0 -27
- package/dist/types 2/errors.js +0 -34
- package/dist/utils/__tests__/errors.test.d.ts +0 -1
- package/dist/utils/__tests__/errors.test.js +0 -76
- package/dist/utils/airdrop-sweep-types.d.ts +0 -1
- package/dist/utils/airdrop-sweep-types.js +0 -1
- package/dist/utils/erc20/index.d.ts +0 -242
- package/dist/utils/erc20/index.js +0 -645
- package/dist/utils/erc20/types.d.ts +0 -77
- package/dist/utils/erc20/types.js +0 -1
- package/dist/utils/erc20-types.d.ts +0 -1
- package/dist/utils/erc20-types.js +0 -1
- package/dist/utils/holders-maker/helpers.d.ts +0 -43
- package/dist/utils/holders-maker/helpers.js +0 -371
- package/dist/utils/holders-maker/index.d.ts +0 -26
- package/dist/utils/holders-maker/index.js +0 -218
- package/dist/utils/holders-maker/types.d.ts +0 -72
- package/dist/utils/holders-maker/types.js +0 -4
- package/dist/utils/holders-maker-types.d.ts +0 -1
- package/dist/utils/holders-maker-types.js +0 -1
- package/dist/utils/lp-inspect/index.d.ts +0 -44
- package/dist/utils/lp-inspect/index.js +0 -937
- package/dist/utils/lp-inspect/types.d.ts +0 -100
- package/dist/utils/lp-inspect/types.js +0 -1
- package/dist/utils/lp-inspect-types.d.ts +0 -1
- package/dist/utils/lp-inspect-types.js +0 -1
- package/dist/utils/private-sale-types.d.ts +0 -1
- package/dist/utils/private-sale-types.js +0 -1
- package/dist/utils/quote-helpers/index.d.ts +0 -107
- package/dist/utils/quote-helpers/index.js +0 -346
- package/dist/utils/quote-helpers/types.d.ts +0 -16
- package/dist/utils/quote-helpers/types.js +0 -1
- package/dist/utils/quote-helpers-types.d.ts +0 -1
- package/dist/utils/quote-helpers-types.js +0 -1
- /package/dist/{chains/bsc/four/submit/types.js → __tests__/subpath-exports.test.d.ts} +0 -0
|
@@ -1,242 +0,0 @@
|
|
|
1
|
-
import { JsonRpcProvider } from 'ethers';
|
|
2
|
-
import type { EnsureAllowanceResult, EnsureAllowanceBatchItemResult, ApproveTokenBatchParams, ApproveTokenBatchRawParams, ApproveTokenBatchResult, ApproveTokenBatchSignResult } from './types.js';
|
|
3
|
-
export type { EnsureAllowanceResult, EnsureAllowanceBatchItemResult, ApproveTokenBatchParams, ApproveTokenBatchRawParams, ApproveTokenBatchResult, ApproveTokenBatchSignResult, } from './types.js';
|
|
4
|
-
/**
|
|
5
|
-
* 检查代币授权状态 - Four.meme V1(只读,不发送交易)
|
|
6
|
-
* @returns 是否已授权足够的额度
|
|
7
|
-
*/
|
|
8
|
-
export declare function checkSellApprovalV1(chain: 'BSC' | 'BASE' | 'ARBITRUM_ONE', rpcUrl: string, token: string, owner: string, amount: bigint): Promise<{
|
|
9
|
-
isApproved: boolean;
|
|
10
|
-
currentAllowance: bigint;
|
|
11
|
-
requiredAllowance: bigint;
|
|
12
|
-
}>;
|
|
13
|
-
/**
|
|
14
|
-
* 确保代币已授权给 Four.meme V1 代理合约
|
|
15
|
-
* 用于 Four.meme V1 代币的卖出操作
|
|
16
|
-
* @returns 授权结果,包含是否已授权、当前额度、交易回执等信息
|
|
17
|
-
*/
|
|
18
|
-
export declare function ensureSellApprovalV1(chain: 'BSC' | 'BASE' | 'ARBITRUM_ONE', rpcUrl: string, privateKey: string, token: string, owner: string, amount: bigint): Promise<EnsureAllowanceResult>;
|
|
19
|
-
/**
|
|
20
|
-
* 检查代币授权状态 - Four.meme V2(只读,不发送交易)
|
|
21
|
-
* @returns 是否已授权足够的额度
|
|
22
|
-
*/
|
|
23
|
-
export declare function checkSellApprovalV2(chain: 'BSC' | 'BASE' | 'ARBITRUM_ONE', rpcUrl: string, token: string, owner: string, amount: bigint): Promise<{
|
|
24
|
-
isApproved: boolean;
|
|
25
|
-
currentAllowance: bigint;
|
|
26
|
-
requiredAllowance: bigint;
|
|
27
|
-
}>;
|
|
28
|
-
/**
|
|
29
|
-
* 确保代币已授权给 Four.meme V2 代理合约
|
|
30
|
-
* 用于 Four.meme V2 代币的卖出操作
|
|
31
|
-
* @returns 授权结果,包含是否已授权、当前额度、交易回执等信息
|
|
32
|
-
*/
|
|
33
|
-
export declare function ensureSellApprovalV2(chain: 'BSC' | 'BASE' | 'ARBITRUM_ONE', rpcUrl: string, privateKey: string, token: string, owner: string, amount: bigint): Promise<EnsureAllowanceResult>;
|
|
34
|
-
/**
|
|
35
|
-
* 检查代币授权状态 - Four.meme(通用,默认使用 V2)
|
|
36
|
-
* @deprecated 建议使用明确版本的方法:checkSellApprovalV1 或 checkSellApprovalV2
|
|
37
|
-
*/
|
|
38
|
-
export declare function checkSellApproval(chain: 'BSC' | 'BASE' | 'ARBITRUM_ONE', rpcUrl: string, token: string, owner: string, amount: bigint): Promise<{
|
|
39
|
-
isApproved: boolean;
|
|
40
|
-
currentAllowance: bigint;
|
|
41
|
-
requiredAllowance: bigint;
|
|
42
|
-
}>;
|
|
43
|
-
/**
|
|
44
|
-
* 确保代币已授权给 Four.meme 代理合约(通用,默认使用 V2)
|
|
45
|
-
* @deprecated 建议使用明确版本的方法:ensureSellApprovalV1 或 ensureSellApprovalV2
|
|
46
|
-
*/
|
|
47
|
-
export declare function ensureSellApproval(chain: 'BSC' | 'BASE' | 'ARBITRUM_ONE', rpcUrl: string, privateKey: string, token: string, owner: string, amount: bigint): Promise<EnsureAllowanceResult>;
|
|
48
|
-
/**
|
|
49
|
-
* 检查代币授权状态 - Flap Protocol(只读,不发送交易)
|
|
50
|
-
* @returns 是否已授权足够的额度
|
|
51
|
-
*/
|
|
52
|
-
export declare function checkFlapSellApproval(chain: 'BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD', rpcUrl: string, token: string, owner: string, amount: bigint): Promise<{
|
|
53
|
-
isApproved: boolean;
|
|
54
|
-
currentAllowance: bigint;
|
|
55
|
-
requiredAllowance: bigint;
|
|
56
|
-
}>;
|
|
57
|
-
/**
|
|
58
|
-
* 确保代币已授权给 Flap Protocol 代理合约
|
|
59
|
-
* 用于 Flap Protocol 代币的卖出操作
|
|
60
|
-
* @returns 授权结果,包含是否已授权、当前额度、交易回执等信息
|
|
61
|
-
*/
|
|
62
|
-
export declare function ensureFlapSellApproval(chain: 'BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD', rpcUrl: string, privateKey: string, token: string, owner: string, amount: bigint): Promise<EnsureAllowanceResult>;
|
|
63
|
-
/**
|
|
64
|
-
* 批量确保代币已授权给 Flap Protocol 代理合约(默认授权上限 2^256-1)
|
|
65
|
-
* @param privateKeys 拥有者私钥数组(每个地址需自行签名)
|
|
66
|
-
* @returns 每个地址的授权结果(包含 owner 与交易回执等信息)
|
|
67
|
-
*/
|
|
68
|
-
export declare function ensureFlapSellApprovalBatch(chain: 'BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD', rpcUrl: string, privateKeys: string[], token: string, required?: bigint): Promise<EnsureAllowanceBatchItemResult[]>;
|
|
69
|
-
/**
|
|
70
|
-
* 批量检查 Flap Protocol 授权状态(默认按上限 2^256-1 判断)
|
|
71
|
-
* ✅ 使用 Multicall3 批量查询,减少 RPC 调用次数
|
|
72
|
-
*/
|
|
73
|
-
export declare function checkFlapSellApprovalBatch(chain: 'BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD', rpcUrl: string, token: string, owners: string[], required?: bigint): Promise<Array<{
|
|
74
|
-
owner: string;
|
|
75
|
-
isApproved: boolean;
|
|
76
|
-
currentAllowance: bigint;
|
|
77
|
-
requiredAllowance: bigint;
|
|
78
|
-
}>>;
|
|
79
|
-
/**
|
|
80
|
-
* 使用 Multicall3 批量查询 ERC20 授权额度
|
|
81
|
-
* @param provider - Provider 实例
|
|
82
|
-
* @param tokenAddress - ERC20 代币地址
|
|
83
|
-
* @param owners - 所有者地址数组
|
|
84
|
-
* @param spender - 被授权的 spender 地址
|
|
85
|
-
* @returns 每个地址的授权额度数组
|
|
86
|
-
*/
|
|
87
|
-
export declare function batchCheckAllowances(provider: JsonRpcProvider, tokenAddress: string, owners: string[], spender: string): Promise<bigint[]>;
|
|
88
|
-
/**
|
|
89
|
-
* ✅ 智能路由:检查单个 ERC20 授权额度(自动选择 spender)
|
|
90
|
-
*
|
|
91
|
-
* @param chain - 链名称 ('BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD')
|
|
92
|
-
* @param platform - 平台名称 ('flap' | 'four' | 'pancake-v2' | 'pancake-v3')
|
|
93
|
-
* @param rpcUrl - RPC 节点地址
|
|
94
|
-
* @param tokenAddress - 代币合约地址
|
|
95
|
-
* @param ownerAddress - 代币持有者地址
|
|
96
|
-
* @returns 当前授权额度(bigint)
|
|
97
|
-
*/
|
|
98
|
-
export declare function checkAllowance(chain: 'BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD', platform: 'flap' | 'four' | 'pancake-v2' | 'pancake-v3', rpcUrl: string, tokenAddress: string, ownerAddress: string): Promise<bigint>;
|
|
99
|
-
/**
|
|
100
|
-
* ✅ 底层方法:检查 ERC20 代币授权额度(手动指定 spender)
|
|
101
|
-
* 适用于任意 spender 地址(Flap、Four、PancakeSwap V2/V3 等)
|
|
102
|
-
*
|
|
103
|
-
* @param rpcUrl - RPC 节点地址
|
|
104
|
-
* @param tokenAddress - 代币合约地址
|
|
105
|
-
* @param ownerAddress - 代币持有者地址
|
|
106
|
-
* @param spenderAddress - 被授权的合约地址(如 Router、Portal、TokenManager 等)
|
|
107
|
-
* @returns 当前授权额度(bigint)
|
|
108
|
-
*/
|
|
109
|
-
export declare function checkAllowanceRaw(rpcUrl: string, tokenAddress: string, ownerAddress: string, spenderAddress: string): Promise<bigint>;
|
|
110
|
-
/**
|
|
111
|
-
* ✅ 智能路由:授权 ERC20 代币(自动选择 spender,自动检查,只在不足时才发送交易)
|
|
112
|
-
*
|
|
113
|
-
* @param chain - 链名称 ('BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD')
|
|
114
|
-
* @param platform - 平台名称 ('flap' | 'four' | 'pancake-v2' | 'pancake-v3')
|
|
115
|
-
* @param rpcUrl - RPC 节点地址
|
|
116
|
-
* @param privateKey - 私钥
|
|
117
|
-
* @param tokenAddress - 代币合约地址
|
|
118
|
-
* @param amount - 授权数量(bigint),传 'max' 表示最大授权
|
|
119
|
-
* @returns 授权结果
|
|
120
|
-
*/
|
|
121
|
-
export declare function approveToken(chain: 'BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD', platform: 'flap' | 'four' | 'pancake-v2' | 'pancake-v3', rpcUrl: string, privateKey: string, tokenAddress: string, amount: bigint | 'max'): Promise<EnsureAllowanceResult>;
|
|
122
|
-
/**
|
|
123
|
-
* ✅ 底层方法:授权 ERC20 代币给指定合约(手动指定 spender)
|
|
124
|
-
* 适用于任意 spender 地址(Flap、Four、PancakeSwap V2/V3 等)
|
|
125
|
-
*
|
|
126
|
-
* @param rpcUrl - RPC 节点地址
|
|
127
|
-
* @param privateKey - 私钥
|
|
128
|
-
* @param tokenAddress - 代币合约地址
|
|
129
|
-
* @param spenderAddress - 被授权的合约地址(如 Router、Portal、TokenManager 等)
|
|
130
|
-
* @param amount - 授权数量(bigint),传 'max' 或 ethers.MaxUint256 表示最大授权
|
|
131
|
-
* @returns 授权结果
|
|
132
|
-
*/
|
|
133
|
-
export declare function approveTokenRaw(rpcUrl: string, privateKey: string, tokenAddress: string, spenderAddress: string, amount: bigint | 'max'): Promise<EnsureAllowanceResult>;
|
|
134
|
-
/**
|
|
135
|
-
* ✅ 智能路由:批量检查多个钱包的授权额度(自动选择 spender)
|
|
136
|
-
*
|
|
137
|
-
* @param chain - 链名称 ('BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD')
|
|
138
|
-
* @param platform - 平台名称 ('flap' | 'four' | 'pancake-v2' | 'pancake-v3')
|
|
139
|
-
* @param rpcUrl - RPC 节点地址
|
|
140
|
-
* @param tokenAddress - 代币合约地址
|
|
141
|
-
* @param ownerAddresses - 代币持有者地址数组
|
|
142
|
-
* @returns 每个地址的授权额度数组
|
|
143
|
-
*/
|
|
144
|
-
export declare function checkAllowanceBatch(chain: 'BSC' | 'BASE' | 'XLAYER' | 'MORPH' | 'MONAD', platform: 'flap' | 'four' | 'pancake-v2' | 'pancake-v3', rpcUrl: string, tokenAddress: string, ownerAddresses: string[]): Promise<bigint[]>;
|
|
145
|
-
/**
|
|
146
|
-
* ✅ 底层方法:批量检查多个钱包的授权额度(手动指定 spender)
|
|
147
|
-
* 适用于任意 spender 地址(Flap、Four、PancakeSwap V2/V3 等)
|
|
148
|
-
*
|
|
149
|
-
* @param rpcUrl - RPC 节点地址
|
|
150
|
-
* @param tokenAddress - 代币合约地址
|
|
151
|
-
* @param ownerAddresses - 代币持有者地址数组
|
|
152
|
-
* @param spenderAddress - 被授权的合约地址
|
|
153
|
-
* @returns 每个地址的授权额度数组
|
|
154
|
-
*/
|
|
155
|
-
export declare function checkAllowanceBatchRaw(rpcUrl: string, tokenAddress: string, ownerAddresses: string[], spenderAddress: string): Promise<bigint[]>;
|
|
156
|
-
/** signOnly=false 时的返回结果(直接发送交易) */
|
|
157
|
-
/** signOnly=true 时的返回结果(仅签名) */
|
|
158
|
-
/**
|
|
159
|
-
* ✅ 智能路由:批量授权 ERC20 代币(自动选择 spender,自动检查,只在不足时才发送交易)
|
|
160
|
-
*
|
|
161
|
-
* @param params - 批量授权参数
|
|
162
|
-
* @param params.signOnly - 是否只签名不提交(默认 false)
|
|
163
|
-
* - false: 直接发送交易并等待确认,返回 ApproveTokenBatchResult
|
|
164
|
-
* - true: 只签名不提交,返回 ApproveTokenBatchSignResult,前端可通过 submitBundleToBlockRazor 提交
|
|
165
|
-
* @returns 批量授权结果
|
|
166
|
-
*
|
|
167
|
-
* @example
|
|
168
|
-
* ```typescript
|
|
169
|
-
* // 模式1:直接发送交易(默认)
|
|
170
|
-
* const result = await approveTokenBatch({
|
|
171
|
-
* chain: 'BSC',
|
|
172
|
-
* platform: 'four',
|
|
173
|
-
* rpcUrl: 'https://bsc-dataseed.binance.org',
|
|
174
|
-
* privateKeys: [key1, key2],
|
|
175
|
-
* tokenAddress: '0x...',
|
|
176
|
-
* amounts: ['max', 'max']
|
|
177
|
-
* });
|
|
178
|
-
*
|
|
179
|
-
* // 模式2:只签名,前端提交
|
|
180
|
-
* const signResult = await approveTokenBatch({
|
|
181
|
-
* chain: 'BSC',
|
|
182
|
-
* platform: 'four',
|
|
183
|
-
* rpcUrl: 'https://bsc-dataseed.binance.org',
|
|
184
|
-
* privateKeys: [key1, key2],
|
|
185
|
-
* tokenAddress: '0x...',
|
|
186
|
-
* amounts: ['max', 'max'],
|
|
187
|
-
* signOnly: true
|
|
188
|
-
* });
|
|
189
|
-
* // 提交到 BlockRazor
|
|
190
|
-
* if (signResult.signedTransactions.length > 0) {
|
|
191
|
-
* await submitBundleToBlockRazor(signResult.signedTransactions, { blockOffset: 10 });
|
|
192
|
-
* }
|
|
193
|
-
* ```
|
|
194
|
-
*/
|
|
195
|
-
export declare function approveTokenBatch(params: ApproveTokenBatchParams & {
|
|
196
|
-
signOnly: true;
|
|
197
|
-
}): Promise<ApproveTokenBatchSignResult>;
|
|
198
|
-
export declare function approveTokenBatch(params: ApproveTokenBatchParams & {
|
|
199
|
-
signOnly?: false;
|
|
200
|
-
}): Promise<ApproveTokenBatchResult>;
|
|
201
|
-
/**
|
|
202
|
-
* ✅ 底层方法:批量授权 ERC20 代币(手动指定 spender)
|
|
203
|
-
* 适用于任意 spender 地址(Flap、Four、PancakeSwap V2/V3 等)
|
|
204
|
-
*
|
|
205
|
-
* @param params - 批量授权参数
|
|
206
|
-
* @param params.signOnly - 是否只签名不提交(默认 false)
|
|
207
|
-
* - false: 直接发送交易并等待确认,返回 ApproveTokenBatchResult
|
|
208
|
-
* - true: 只签名不提交,返回 ApproveTokenBatchSignResult,前端可通过 submitBundleToBlockRazor 提交
|
|
209
|
-
* @returns 批量授权结果
|
|
210
|
-
*
|
|
211
|
-
* @example
|
|
212
|
-
* ```typescript
|
|
213
|
-
* // 模式1:直接发送交易(默认)
|
|
214
|
-
* const result = await approveTokenBatchRaw({
|
|
215
|
-
* rpcUrl: 'https://bsc-dataseed.binance.org',
|
|
216
|
-
* privateKeys: [key1, key2],
|
|
217
|
-
* tokenAddress: '0x...',
|
|
218
|
-
* spenderAddress: '0x...',
|
|
219
|
-
* amounts: ['max', 'max']
|
|
220
|
-
* });
|
|
221
|
-
*
|
|
222
|
-
* // 模式2:只签名,前端提交
|
|
223
|
-
* const signResult = await approveTokenBatchRaw({
|
|
224
|
-
* rpcUrl: 'https://bsc-dataseed.binance.org',
|
|
225
|
-
* privateKeys: [key1, key2],
|
|
226
|
-
* tokenAddress: '0x...',
|
|
227
|
-
* spenderAddress: '0x...',
|
|
228
|
-
* amounts: ['max', 'max'],
|
|
229
|
-
* signOnly: true
|
|
230
|
-
* });
|
|
231
|
-
* // 提交到 BlockRazor
|
|
232
|
-
* if (signResult.signedTransactions.length > 0) {
|
|
233
|
-
* await submitBundleToBlockRazor(signResult.signedTransactions, { blockOffset: 10 });
|
|
234
|
-
* }
|
|
235
|
-
* ```
|
|
236
|
-
*/
|
|
237
|
-
export declare function approveTokenBatchRaw(params: ApproveTokenBatchRawParams & {
|
|
238
|
-
signOnly: true;
|
|
239
|
-
}): Promise<ApproveTokenBatchSignResult>;
|
|
240
|
-
export declare function approveTokenBatchRaw(params: ApproveTokenBatchRawParams & {
|
|
241
|
-
signOnly?: false;
|
|
242
|
-
}): Promise<ApproveTokenBatchResult>;
|