import { ChainsService } from "../chains"; import { KeyRingCosmosService } from "../keyring-cosmos"; import { KeyRingService } from "../keyring"; import { ChainsUIService } from "../chains-ui"; import { AppCurrency, SupportedPaymentType } from "@keplr-wallet/types"; import { VaultService } from "../vault"; import { KVStore } from "@keplr-wallet/common"; import { KeyRingStarknetService } from "../keyring-starknet"; import { KeyRingBitcoinService } from "../keyring-bitcoin"; import { MessageRequester } from "@keplr-wallet/router"; type Asset = { currency?: AppCurrency; coinMinimalDenom?: string; amount: string; }; export type TokenScanInfo = { bech32Address?: string; ethereumHexAddress?: string; starknetHexAddress?: string; bitcoinAddress?: { bech32Address: string; paymentType: SupportedPaymentType; }; coinType?: number; assets: Asset[]; }; export type TokenScan = { chainId: string; infos: TokenScanInfo[]; linkedChainKey?: string; dismissedInfos?: TokenScanInfo[]; }; export declare class TokenScanService { protected readonly kvStore: KVStore; protected readonly eventMsgRequester: MessageRequester; protected readonly chainsService: ChainsService; protected readonly chainsUIService: ChainsUIService; protected readonly vaultService: VaultService; protected readonly keyRingService: KeyRingService; protected readonly keyRingCosmosService: KeyRingCosmosService; protected readonly keyRingStarknetService: KeyRingStarknetService; protected readonly keyRingBitcoinService: KeyRingBitcoinService; protected vaultToMap: Map; constructor(kvStore: KVStore, eventMsgRequester: MessageRequester, chainsService: ChainsService, chainsUIService: ChainsUIService, vaultService: VaultService, keyRingService: KeyRingService, keyRingCosmosService: KeyRingCosmosService, keyRingStarknetService: KeyRingStarknetService, keyRingBitcoinService: KeyRingBitcoinService); init(): Promise; getTokenScans(vaultId: string): TokenScan[]; protected scanWithAllVaults(chainId: string): Promise; scan(vaultId: string, chainId: string): Promise; scanAll(vaultId: string): Promise; protected calculateTokenScan(vaultId: string, chainId: string): Promise; dismissNewTokenFoundInHome(vaultId: string): void; resetDismiss(vaultId: string): void; isMeaningfulTokenScanChangeBetweenDismissed(tokenScan: TokenScan): boolean; } export {};