/** * Flap Tax Vaults — 常量(地址 / 标签 / ABI) */ import type { VaultType } from './types.js'; /** * 金库类型显示标签 */ export declare const VAULT_TYPE_LABELS: Record; /** * 金库类型分类(对齐 flap.sh 的 category 字段) */ export declare const VAULT_TYPE_CATEGORIES: { official: VaultType[]; community: VaultType[]; }; /** * VaultPortal 合约地址 * * ⚠️ 金库代币通过 VaultPortal 创建,不是普通 Portal * 来源:flap.sh/_next/static/chunks/2601-*.js */ export declare const VAULT_PORTAL_ADDRESSES: Record; /** * VaultFactory 合约地址(每种金库类型 + 每条链) * * ⚠️ 直接从 flap.sh 前端 JS 源码中提取的真实地址 * 来源:flap.sh/_next/static/chunks/2601-*.js 中 taxVaults.vaultTypes[] */ export declare const VAULT_FACTORY_ADDRESSES: Record>; /** * 金库额外配置(如 XVault 的 relayer 端点) */ export declare const VAULT_EXTRA_CONFIG: Record>>; /** * Flap Guardian 合约地址 */ export declare const FLAP_GUARDIAN_ADDRESSES: { readonly BSC: "0x9e27098dcD8844bcc6287a557E0b4D09C86B8a4b"; }; /** * VaultPortal ABI — newTaxTokenWithVault * * ⚠️ 从 flap.sh 前端 JS 源码提取的真实 ABI * 来源:flap.sh/_next/static/chunks/6288-*.js(VaultPortal 合约 ABI) */ export declare const VAULT_PORTAL_ABI: readonly [{ readonly type: "function"; readonly name: "newTaxTokenWithVault"; readonly inputs: readonly [{ readonly name: "params"; readonly type: "tuple"; readonly internalType: "struct IVaultPortalTypes.NewTaxTokenWithVaultParams"; readonly components: readonly [{ readonly name: "name"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "symbol"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "meta"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "dexThresh"; readonly type: "uint8"; readonly internalType: "enum IPortalCommonTypes.DexThreshType"; }, { readonly name: "salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }, { readonly name: "taxRate"; readonly type: "uint16"; readonly internalType: "uint16"; }, { readonly name: "migratorType"; readonly type: "uint8"; readonly internalType: "enum IPortalTypes.MigratorType"; }, { readonly name: "quoteToken"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "quoteAmt"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "permitData"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "extensionID"; readonly type: "bytes32"; readonly internalType: "bytes32"; }, { readonly name: "extensionData"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "dexId"; readonly type: "uint8"; readonly internalType: "enum IPortalTypes.DEXId"; }, { readonly name: "lpFeeProfile"; readonly type: "uint8"; readonly internalType: "enum IPortalTypes.V3LPFeeProfile"; }, { readonly name: "taxDuration"; readonly type: "uint64"; readonly internalType: "uint64"; }, { readonly name: "antiFarmerDuration"; readonly type: "uint64"; readonly internalType: "uint64"; }, { readonly name: "mktBps"; readonly type: "uint16"; readonly internalType: "uint16"; }, { readonly name: "deflationBps"; readonly type: "uint16"; readonly internalType: "uint16"; }, { readonly name: "dividendBps"; readonly type: "uint16"; readonly internalType: "uint16"; }, { readonly name: "lpBps"; readonly type: "uint16"; readonly internalType: "uint16"; }, { readonly name: "minimumShareBalance"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "vaultFactory"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "vaultData"; readonly type: "bytes"; readonly internalType: "bytes"; }]; }]; readonly outputs: readonly [{ readonly name: "token"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "payable"; }, { readonly type: "function"; readonly name: "getVault"; readonly inputs: readonly [{ readonly name: "taxToken"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: "info"; readonly type: "tuple"; readonly internalType: "struct IVaultPortalTypes.VaultInfo"; readonly components: readonly [{ readonly name: "vault"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "vaultFactory"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "description"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "isOfficial"; readonly type: "bool"; readonly internalType: "bool"; }, { readonly name: "riskLevel"; readonly type: "uint8"; readonly internalType: "enum IVaultPortalTypes.RiskLevel"; }]; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "predictTaxTokenV1Address"; readonly inputs: readonly [{ readonly name: "salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: "predictedAddress"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }]; /** * IVaultFactory ABI(V1) */ export declare const VAULT_FACTORY_ABI: string[]; /** * VaultFactoryBaseV2 ABI */ export declare const VAULT_FACTORY_V2_ABI: string[]; /** * VaultBase ABI(V1) */ export declare const VAULT_BASE_ABI: string[]; /** * VaultBaseV2 ABI */ export declare const VAULT_BASE_V2_ABI: string[]; /** extensionID/extensionData 在金库模式下始终为零值 */ export declare const NONE_EXTENSION_ID: string;