/** * Portal 发币交易构建(newTokenV6 / newTokenV7 / VaultPortal) * * 对齐 Flap 官方文档: * - newTokenV6:TOKEN_V2_PERMIT / TOKEN_TAXED_V3 * - newTokenV7:TOKEN_V3_PERMIT(BSC 标准 V3 / PCS Infinity CL,与 Flap 官网一致) * - newTokenV4:已弃用(Portal 侧 FeatureDisabled,勿再使用) * - VaultPortal.newTaxTokenWithVault:带金库的税币(legacy 参数结构) */ import { Contract, type TransactionRequest, type Wallet } from 'ethers'; import { type TaxVaultConfig } from './vault.js'; /** 分红代币:将 launching token 本身作为分红代币 */ export declare const MAGIC_DIVIDEND_SELF = "0xfEEDFEEDfeEDFEedFEEdFEEDFeEdfEEdFeEdFEEd"; export type NormalizedTaxLaunchConfig = { taxDuration: number; antiFarmerDuration: number; mktBps: number; deflationBps: number; dividendBps: number; lpBps: number; minimumShareBalance?: number; buyTaxRate: number; sellTaxRate: number; dividendToken?: string; commissionReceiver?: string; vaultConfig?: TaxVaultConfig; }; export type PopulateCreateTokenParams = { chain: string; devWallet: Wallet; originalPortal: Contract; tokenInfo: { name: string; symbol: string; meta: string; }; quoteToken?: string; beneficiary: string; dexThresh?: number; salt?: string; migratorType?: number; /** legacy 单税率(bps),无 buy/sell 时作为对称税率 */ taxRate?: number; dexId?: number; lpFeeProfile?: number; extensionID?: string; extensionData?: string; /** 标准 V3 / TOKEN_V3_PERMIT(newTokenV7 + PCS_INFINITY_CL_MIGRATOR,对齐 Flap Portal v5.8.6+) */ useV7Portal?: boolean; /** @deprecated 使用 useV7Portal */ useV4Portal?: boolean; /** @deprecated 已合并到 useV7Portal */ useClInfinityLaunch?: boolean; /** 高级税币 / 税币 V3 配置 */ taxConfig?: NormalizedTaxLaunchConfig; /** 创建时内嵌买入(Flap 文档方式 A:quoteAmt + msg.value) */ initialQuoteAmt?: bigint; }; /** 将 TaxV2Config(含 distribution 嵌套)或 flat 结构归一化 */ export declare function normalizeTaxLaunchConfig(input?: { taxDuration: number; antiFarmerDuration: number; mktBps?: number; deflationBps?: number; dividendBps?: number; lpBps?: number; minimumShareBalance?: number; buyTaxRate?: number; sellTaxRate?: number; dividendToken?: string; commissionReceiver?: string; vaultConfig?: TaxVaultConfig; distribution?: { mktBps: number; deflationBps: number; dividendBps: number; lpBps: number; minimumShareBalance?: number; }; }, fallbackTaxRate?: number): NormalizedTaxLaunchConfig | undefined; export declare function populateCreateTokenTransaction(params: PopulateCreateTokenParams): Promise;