/** * XLayer EOA 普通模式无币刷量 (Wash Trading) * * 核心逻辑:先买入 → 等待确认 → 查询余额 → 卖出(含利润刮取) * * 特点: * - 非原子执行(买卖分开提交) * - 利润在卖出时直接转账到收益地址(无多跳) * - 与普通买卖使用相同的代码路径 * * 支持池子类型:V2, V3 */ import { Wallet } from 'ethers'; import type { DirectRouterSignConfig } from '../../../dex/direct-router.js'; export type EoaWashPoolType = 'V2' | 'V3'; export interface EoaWashVolumeParams { /** 代币地址 */ tokenAddress: string; /** 钱包私钥列表 */ privateKeys: string[]; /** 每个钱包的买入金额(格式化后的字符串,如 "0.01") */ buyAmounts: string[]; /** 池子类型 */ poolType: EoaWashPoolType; /** V3 pool fee(poolType 为 V3 时必填,如 100, 500, 2500, 10000) */ v3Fee?: number; /** Router 地址 */ routerAddress: string; /** Quote Token 地址(WOKB) */ quoteToken: string; /** Quote Token 精度(默认 18) */ quoteTokenDecimals?: number; /** SDK 配置 */ config: DirectRouterSignConfig; } export interface EoaWashVolumeResult { /** 买入签名交易列表 */ buySignedTransactions: string[]; /** 卖出签名交易列表 */ sellSignedTransactions: string[]; /** 利润跳转钱包(无多跳时为空数组) */ profitHopWallets: Array<{ address: string; privateKey: string; }>; /** 利润金额(格式化后的字符串) */ profitAmount: string; /** 利润接收地址 */ profitRecipient: string; } /** * 签名买入交易(EOA 普通模式无币刷量 - 第一步) * * 生成所有钱包的买入交易签名,但不包含利润刮取(利润在卖出时刮取) */ export declare function signEoaWashBuyTransactions(params: EoaWashVolumeParams): Promise<{ signedTransactions: string[]; wallets: Wallet[]; }>; /** * 签名卖出交易(EOA 普通模式无币刷量 - 第二步) * * 根据钱包的实际代币余额生成卖出交易签名,包含利润刮取 * * @param params 原始参数 * @param wallets 买入时创建的钱包列表 * @param tokenDecimals 代币精度 * @returns 卖出交易签名和利润信息 */ export declare function signEoaWashSellTransactions(params: EoaWashVolumeParams, wallets: Wallet[], tokenDecimals?: number): Promise<{ signedTransactions: string[]; profitHopWallets: Array<{ address: string; privateKey: string; }>; profitAmount: string; profitRecipient: string; }>; /** * 完整的 EOA 普通模式无币刷量签名 * * 生成买入和卖出的所有交易签名 * * 注意:这个函数只生成签名,不提交交易。 * 前端需要: * 1. 先提交买入交易并等待确认 * 2. 再调用 signEoaWashSellTransactions 根据实际余额生成卖出签名 * 3. 提交卖出交易 */ export declare function signEoaWashVolumeTransactions(params: EoaWashVolumeParams): Promise;