import { type GeneratedWallet } from '../../../utils/wallet.js'; import { type PancakeSwapSignConfig, type RouteParams } from './bundle-swap-helpers.js'; /** 交叉换手参数(PancakeSwap V2/V3) */ export interface PancakeCrossSwapParams { /** 卖方私钥列表(按顺序轮流卖出) */ sellerPrivateKeys: string[]; /** 每个卖方的卖出数量(与 sellerPrivateKeys 长度一致) */ sellAmounts: string[]; /** 买方私钥列表(按顺序轮流分配,每笔平分) */ buyerPrivateKeys: string[]; tokenAddress: string; routeParams: RouteParams; config: PancakeSwapSignConfig; quoteToken?: string; quoteTokenDecimals?: number; /** 每次卖出分配给多少个买方(默认使用全部买方平分) */ buyersPerSell?: number; /** 转账多跳数(可选) */ disperseHopCount?: number; } /** 交叉换手结果(PancakeSwap V2/V3) */ export interface PancakeCrossSwapResult { signedTransactions: string[]; /** 每轮的元数据列表 */ rounds: Array<{ sellerAddress: string; buyerAddresses: string[]; sellAmount: string; bundleHash?: string; }>; /** 汇总的中间钱包信息(转账/利润) */ disperseHopWallets?: GeneratedWallet[]; profitHopWallets?: GeneratedWallet[]; } /** * PancakeSwap 交叉换手(多卖多买,循环执行) * - 每个卖方单独卖出,买入金额由卖出所得等分分配给当轮买方 * - 利润刮取、转账多跳逻辑继承 pancakeQuickBatchSwapMerkle * - 结果按顺序拼接 signedTransactions(可交由前端/后端顺序广播) * - ✅ 正确处理 nonce:同一钱包在多轮中使用时 nonce 自动递增 */ export declare function pancakeCrossSwapMerkle(params: PancakeCrossSwapParams): Promise;