/** * ENI IRO 白名单管理 * * 通过 IROOwner 合约管理已创建项目的白名单: * - getTokenWhiteList: 查询代币白名单地址列表 * - addTokenWhiteList: 添加单个白名单 * - batchAddTokenWhiteList: 批量添加白名单 * - removeTokenWhiteList: 移除白名单地址 */ import type { WhiteListQuota } from './types.js'; export declare const IRO_OWNER_WHITELIST_ABI: readonly ["function getTokenWhiteList(address token) view returns (address[])", "function addTokenWhiteList(address token, address addr, uint256 quota)", "function batchAddTokenWhiteList(address token, tuple(address account, uint256 quota)[] list)", "function removeTokenWhiteList(address token, address addr)"]; export declare const WHITELIST_GAS_LIMIT = 500000n; export declare const BATCH_WHITELIST_GAS_LIMIT = 2000000n; export interface WhitelistManageConfig { rpcUrl?: string; chainId?: number; iroOwnerAddress: string; } export interface AddWhitelistParams extends WhitelistManageConfig { privateKey: string; tokenAddress: string; addr: string; quota: bigint; } export interface BatchAddWhitelistParams extends WhitelistManageConfig { privateKey: string; tokenAddress: string; entries: WhiteListQuota[]; } export interface RemoveWhitelistParams extends WhitelistManageConfig { privateKey: string; tokenAddress: string; addr: string; } export interface GetWhitelistParams extends WhitelistManageConfig { tokenAddress: string; } /** * 查询代币白名单地址列表 */ export declare function getTokenWhiteList(params: GetWhitelistParams): Promise; /** * 添加单个白名单地址 (返回签名交易) */ export declare function addTokenWhiteListForSubmit(params: AddWhitelistParams): Promise; /** * 批量添加白名单 (返回签名交易) */ export declare function batchAddTokenWhiteListForSubmit(params: BatchAddWhitelistParams): Promise; /** * 移除白名单地址 (返回签名交易) */ export declare function removeTokenWhiteListForSubmit(params: RemoveWhitelistParams): Promise;