import { Env } from "@keplr-wallet/router"; import { AppCurrency, ERC20Currency } from "@keplr-wallet/types"; import { ChainsService } from "../chains"; import { KVStore } from "@keplr-wallet/common"; import { InteractionService } from "../interaction"; import { ERC20TokenInfo } from "./types"; export declare class TokenERC20Service { protected chainsService: ChainsService; protected interactionService: InteractionService; protected readonly kvStore: KVStore; protected tokenMap: Map; constructor(kvStore: KVStore, chainsService: ChainsService, interactionService: InteractionService); init(): Promise; protected readonly onChainRemoved: (chainId: string) => void; getAllERC20TokenInfos: () => Record; suggestERC20Token(env: Env, chainId: string, contractAddress: string): Promise; getERC20Token: (chainId: string, contractAddress: string) => ERC20TokenInfo | undefined; setERC20Token(chainId: string, currency: AppCurrency): Promise; removeERC20Token(chainId: string, contractAddress: string): void; static validateCurrency(currency: AppCurrency): Promise; static validateERC20Currency(currency: ERC20Currency): Promise; }