/** * XLayer SDK 常量配置 * * XLayer 链 (chainId: 196) 的核心配置信息 * 支持 ERC-4337 AA 钱包模式进行 Flap 内盘交易 * * ⚠️ 通用常量请使用 shared/constants,此文件仅包含 XLayer 特有的配置 */ /** XLayer 链 ID */ export declare const XLAYER_CHAIN_ID: 196; /** XLayer 链名称 */ export declare const XLAYER_CHAIN_NAME = "xlayer"; /** 默认 RPC URL */ export declare const DEFAULT_RPC_URL: "https://xlayerrpc.okx.com"; /** 零地址(表示原生代币) */ export declare const ZERO_ADDRESS: "0x0000000000000000000000000000000000000000"; /** 高级 RPC URL(QuikNode) */ export declare const QUIKNODE_RPC_URL = "https://stylish-practical-valley.xlayer-mainnet.quiknode.pro/84bb5dedac404fa486f57ab6387e32254dee1f83"; /** Particle Bundler URL */ export declare const PARTICLE_BUNDLER_URL = "https://bundler.particle.network"; /** EntryPoint v0.6 合约地址 */ export declare const ENTRYPOINT_V06: "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789"; /** SimpleAccountFactory 合约地址 */ export declare const SIMPLE_ACCOUNT_FACTORY: "0x9406Cc6185a346906296840746125a0E44976454"; /** Flap Portal 合约地址(XLayer 内盘) */ export declare const FLAP_PORTAL: "0xb30D8c4216E1f21F27444D2FfAee3ad577808678"; /** Flap Token 实现合约地址 */ export declare const FLAP_TOKEN_IMPL: "0x12Dc83157Bf1cfCB8Db5952b3ba5bb56Cc38f8C9"; /** WOKB 原生包装代币 */ export declare const WOKB: "0xe538905cf8410324e03a5a23c1c177a474d59b2b"; /** USDT 代币地址(XLayer,6 位精度) */ export declare const USDT: "0x1e4a5963abfd975d8c9021ce480b42188849d41d"; /** USDC (6位精度) */ export declare const USDC: "0x74b7f16337b8972027f6196a17a631ac6de26d22"; /** USD₮0 / USDT0 (6位精度) - Flap xLayer 支持的稳定币计价 */ export declare const USDT0: "0x779ded0c9e1022225f8e0630b35a9b54be713736"; /** Multicall3 合约 */ export declare const MULTICALL3: "0xca11bde05977b3631167028862be2a173976ca11"; /** PotatoSwap V2 Router */ export declare const POTATOSWAP_V2_ROUTER: "0x881fb2f98c13d521009464e7d1cbf16e1b394e8e"; /** PotatoSwap SwapRouter02 */ export declare const POTATOSWAP_SWAP_ROUTER02: "0xB45D0149249488333E3F3f9F359807F4b810C1FC"; /** PotatoSwap V3 Router */ export declare const POTATOSWAP_V3_ROUTER: "0xBB069e9465BcabC4F488d21e793BDEf0F2d41D41"; /** PotatoSwap V3 Factory */ export declare const POTATOSWAP_V3_FACTORY: "0xa1415fAe79c4B196d087F02b8aD5a622B8A827E5"; /** 默认 Gas Price 兜底值(0.1 gwei) */ export declare const DEFAULT_GAS_PRICE: 100000000n; /** Gas 估算安全余量(20%) */ export declare const GAS_LIMIT_MULTIPLIER: 1.2; /** 验证 Gas 上限(未部署账户) */ export declare const VERIFICATION_GAS_LIMIT_DEPLOY: 800000n; /** 验证 Gas 上限(已部署账户) */ export declare const VERIFICATION_GAS_LIMIT_NORMAL: 250000n; /** Pre-verification Gas */ export declare const PRE_VERIFICATION_GAS: 60000n; /** 默认 Call Gas Limit(对齐 BSC,买入/卖出共用保守值) */ export declare const DEFAULT_CALL_GAS_LIMIT_SELL: 800000n; /** 默认 Salt(用于 AA 账户派生) */ export declare const DEFAULT_SALT = 0n; /** 默认 Withdraw Reserve(保留在 sender 的最小 OKB) */ export declare const DEFAULT_WITHDRAW_RESERVE = "0.00005"; /** XLayer Flap 买入手续费率 (1.5%) */ export declare const FLAP_BUY_FEE_RATE = 0.015; /** XLayer Flap 卖出手续费率 (1.5%) */ export declare const FLAP_SELL_FEE_RATE = 0.015; /** SimpleAccountFactory ABI */ export declare const FACTORY_ABI: readonly ["function createAccount(address owner, uint256 salt) returns (address)", "function getAddress(address owner, uint256 salt) view returns (address)", "function accountImplementation() view returns (address)"]; /** EntryPoint v0.6 ABI */ export declare const ENTRYPOINT_ABI: readonly ["function getNonce(address sender, uint192 key) view returns (uint256)", "function getUserOpHash((address sender,uint256 nonce,bytes initCode,bytes callData,uint256 callGasLimit,uint256 verificationGasLimit,uint256 preVerificationGas,uint256 maxFeePerGas,uint256 maxPriorityFeePerGas,bytes paymasterAndData,bytes signature) userOp) view returns (bytes32)", "function handleOps((address sender,uint256 nonce,bytes initCode,bytes callData,uint256 callGasLimit,uint256 verificationGasLimit,uint256 preVerificationGas,uint256 maxFeePerGas,uint256 maxPriorityFeePerGas,bytes paymasterAndData,bytes signature)[] ops, address payable beneficiary) external", "function depositTo(address account) public payable", "function balanceOf(address account) public view returns (uint256)", "function withdrawTo(address payable withdrawAddress, uint256 withdrawAmount) external", "function addStake(uint32 unstakeDelaySec) external payable", "function unlockStake() external", "function withdrawStake(address payable withdrawAddress) external", "event UserOperationEvent(bytes32 indexed userOpHash, address indexed sender, address indexed paymaster, uint256 nonce, bool success, uint256 actualGasCost, uint256 actualGasUsed)"]; /** SimpleAccount ABI */ export declare const SIMPLE_ACCOUNT_ABI: readonly ["function execute(address dest, uint256 value, bytes func) external", "function executeBatch(address[] calldata dest, bytes[] calldata func) external", "function executeBatch(address[] calldata dest, uint256[] calldata values, bytes[] calldata func) external"]; /** Flap Portal ABI */ export declare const PORTAL_ABI: readonly ["function swapExactInput((address inputToken,address outputToken,uint256 inputAmount,uint256 minOutputAmount,bytes permitData) params) payable returns (uint256)", "function swapExactInputV3((address inputToken,address outputToken,uint256 inputAmount,uint256 minOutputAmount,bytes permitData,bytes extensionData)) external payable returns (uint256)", "function buy(address token, address to, uint256 minAmount) external payable returns (uint256)", "function sell(address token, uint256 amount, uint256 minEth) external returns (uint256)", "function quoteExactInput((address inputToken,address outputToken,uint256 inputAmount)) external returns (uint256)", "function previewBuy(address token, uint256 ethAmount) external view returns (uint256)", "function previewSell(address token, uint256 tokenAmount) external view returns (uint256)", "function getTokenV5(address token) external view returns ((uint8,uint256,uint256,uint256,uint8,uint256,uint256,uint256,uint256,address,bool,bytes32))", "function getTokenV7(address token) external view returns ((uint8,uint256,uint256,uint256,uint8,uint256,uint256,uint256,uint256,address,bool,bytes32,uint16,address,uint256,uint8))", "function newTokenV2((string name,string symbol,string meta,uint8 dexThresh,bytes32 salt,uint16 taxRate,uint8 migratorType,address quoteToken,uint256 quoteAmt,address beneficiary,bytes permitData) params) external payable returns (address)", "function newTokenV3((string name,string symbol,string meta,uint8 dexThresh,bytes32 salt,uint16 taxRate,uint8 migratorType,address quoteToken,uint256 quoteAmt,address beneficiary,bytes permitData,bytes32 extensionID,bytes extensionData) params) external payable returns (address)", "function newTokenV4((string name,string symbol,string meta,uint8 dexThresh,bytes32 salt,uint16 taxRate,uint8 migratorType,address quoteToken,uint256 quoteAmt,address beneficiary,bytes permitData,bytes32 extensionID,bytes extensionData,uint8 dexId,uint8 lpFeeProfile) params) external payable returns (address)", "function newTokenV5((string name,string symbol,string meta,uint8 dexThresh,bytes32 salt,uint16 taxRate,uint8 migratorType,address quoteToken,uint256 quoteAmt,address beneficiary,bytes permitData,bytes32 extensionID,bytes extensionData,uint8 dexId,uint8 lpFeeProfile,uint64 taxDuration,uint64 antiFarmerDuration,uint16 mktBps,uint16 deflationBps,uint16 dividendBps,uint16 lpBps,uint256 minimumShareBalance) params) external payable returns (address)"]; /** ERC20 ABI */ export declare const ERC20_ABI: readonly ["function balanceOf(address account) view returns (uint256)", "function allowance(address owner, address spender) view returns (uint256)", "function approve(address spender, uint256 amount) returns (bool)", "function transfer(address to, uint256 amount) returns (bool)", "function decimals() view returns (uint8)", "function symbol() view returns (string)", "function name() view returns (string)"]; /** PotatoSwap V2 Router ABI */ export declare const POTATOSWAP_V2_ROUTER_ABI: readonly ["function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts)", "function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts)", "function swapExactTokensForTokens(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts)", "function swapExactETHForTokensSupportingFeeOnTransferTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable", "function swapExactTokensForETHSupportingFeeOnTransferTokens(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external", "function swapExactTokensForTokensSupportingFeeOnTransferTokens(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external", "function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts)", "function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts)", "function WETH() external pure returns (address)"]; /** PotatoSwap V3 Router ABI (SwapRouter - Legacy 版本,deadline 在 struct 内部) */ export declare const POTATOSWAP_V3_ROUTER_ABI: readonly ["function exactInputSingle((address tokenIn, address tokenOut, uint24 fee, address recipient, uint256 deadline, uint256 amountIn, uint256 amountOutMinimum, uint160 sqrtPriceLimitX96) params) external payable returns (uint256 amountOut)", "function exactOutputSingle((address tokenIn, address tokenOut, uint24 fee, address recipient, uint256 deadline, uint256 amountOut, uint256 amountInMaximum, uint160 sqrtPriceLimitX96) params) external payable returns (uint256 amountIn)", "function multicall(bytes[] calldata data) external payable returns (bytes[] memory results)", "function unwrapWETH9(uint256 amountMinimum, address recipient) external payable", "function refundETH() external payable"]; export type HexString = `0x${string}`;