import { Wallet } from './Wallet'; import Web3 from 'web3'; interface ConnectInfo { chainId: string; } interface ProviderRpcError extends Error { message: string; code: number; data?: unknown; } export declare class WalletEVMMetaMask extends Wallet { w3: Web3; chains: Array; constructor(obj?: any, chainId?: string); createChainArray(achains: Array): void; handleAccountChange(accounts: any): void; handleChainChange(chainId: string): void; handleConnect(connectInfo: ConnectInfo): void; handleDisconnect(error: ProviderRpcError): void; getAlreadyConnected(): Promise; connect(): Promise; disconnect(): Promise; signCustom(nonce: string, message: string): Promise; signVerify(address: string, message: string, nonce: string, signature: string): Promise; getPrivateBalance(): Promise; getBaseSymbol(): string; isTestNet(): boolean; /** * call contract * @param contract_name * @param function_name * @param params * @returns */ callContract(contract_name: string, function_name: string, params: { [id: string]: any; }): Promise; approve(contract_address: string, amount: number): Promise; /** * * @param account_address * @param contract_address * @param decimals * @returns */ getAllowance(account_address: string, contract_address: string, decimals: number): Promise; /** * * @param contract_address * @returns */ getPrivateContract(contract_address: string): Promise; /** * * @param amount * @param decimals * @returns */ getAmount(amount: number, decimals?: number): number; /** * * @param contract_address * @param event_name * @param handle_name */ contractOn(contract_address: string, event_name: string, handle_name: () => void): void; /** * * @param contract_address * @param event_name * @param handle_name */ contractOff(contract_address: string, event_name: string, handle_name: () => void): void; } export {};