import { _AssetRef, _AssetType, _ChainAsset, _ChainInfo, _MultiChainAsset } from '@soul-wallet/chain-list/types'; import { AssetSetting, ValidateNetworkResponse } from '../../background/KoniTypes'; import { MantaPrivateHandler } from '../../services/chain-service/handler/manta/MantaPrivateHandler'; import { _ChainConnectionStatus, _ChainState, _NetworkUpsertParams, _ValidateCustomAssetRequest, _ValidateCustomAssetResponse } from '../../services/chain-service/types'; import { EventService } from '../../services/event-service'; import { IMetadataItem } from '../../services/storage-service/databases'; import DatabaseService from '../../services/storage-service/DatabaseService'; import { BehaviorSubject, Subject } from 'rxjs'; export declare class ChainService { private dataMap; private dbService; private eventService; private lockChainInfoMap; private substrateChainHandler; private evmChainHandler; private mantaChainHandler; get mantaPay(): MantaPrivateHandler | undefined; private chainInfoMapSubject; private chainStateMapSubject; private assetRegistrySubject; private multiChainAssetMapSubject; private xcmRefMapSubject; private store; private assetSettingSubject; private logger; constructor(dbService: DatabaseService, eventService: EventService); getXcmRefMap(): Record; getEvmApi(slug: string): import("./handler/EvmApi").EvmApi; getEvmApiMap(): Record; getSubstrateApiMap(): Record; getSubstrateApi(slug: string): import("./handler/SubstrateApi").SubstrateApi; getChainCurrentProviderByKey(slug: string): { endpoint: string; providerName: string; }; subscribeChainInfoMap(): Subject>; subscribeAssetRegistry(): Subject>; subscribeMultiChainAssetMap(): Subject>; subscribeXcmRefMap(): Subject>; subscribeChainStateMap(): Subject>; getAssetRegistry(): Record; getMultiChainAssetMap(): Record; getSmartContractTokens(): Record; getChainInfoMap(): Record; getEvmChainInfoMap(): Record; getSubstrateChainInfoMap(): Record; getAllPriceIds(): string[]; getNativeTokenInfo(chainSlug: string): _ChainAsset; getAssetRefMap(): Record; getChainStateMap(): Record; getChainStateByKey(key: string): _ChainState; getActiveChains(): string[]; getSupportedSmartContractTypes(): _AssetType[]; getActiveChainInfoMap(): Record; getActiveChainSlugs(): string[]; getChainInfoByKey(key: string): _ChainInfo; getActiveChainInfos(): Record; getAssetBySlug(slug: string): _ChainAsset; getMantaZkAssets(chain: string): Record; getFungibleTokensByChain(chainSlug: string, checkActive?: boolean): Record; getXcmEqualAssetByChain(destinationChainSlug: string, originTokenSlug: string): _ChainAsset | undefined; getAssetByChainAndType(chainSlug: string, assetTypes: _AssetType[]): Record; getSmartContractNfts(): _ChainAsset[]; forceRemoveChain(slug: string): boolean; removeCustomChain(slug: string): boolean; resetChainInfoMap(excludedChains?: string[]): boolean; setChainConnectionStatus(slug: string, connectionStatus: _ChainConnectionStatus): void; upsertCustomToken(token: _ChainAsset): string; deleteAssetsByChain(chainSlug: string): void; deleteCustomAssets(targetAssets: string[]): void; init(): Promise; private initApis; private initApiForChain; private destroyApiForChain; enableChain(chainSlug: string): Promise; enableChains(chainSlugs: string[]): Promise; reconnectChain(chain: string): Promise; disableChain(chainSlug: string): boolean; private checkExistedPredefinedChain; private fetchLatestData; private initChains; private initAssetRegistry; private updateChainStateMapSubscription; private updateChainInfoMapSubscription; private updateChainSubscription; private updateChain; private insertChain; upsertChain(params: _NetworkUpsertParams): Promise; private generateSlugForCustomChain; validateCustomChain(provider: string, existingChainSlug?: string): Promise; private getChainSpecByProvider; private validateProvider; private getSmartContractTokenInfo; validateCustomToken(data: _ValidateCustomAssetRequest): Promise<_ValidateCustomAssetResponse>; private generateSlugForSmartContractAsset; private generateSlugForNativeToken; refreshSubstrateApi(slug: string): void; refreshEvmApi(slug: string): void; stopAllChainApis(): Promise; resumeAllChainApis(): Promise; checkAndUpdateStatusMapForChain(chainSlug: string): void; initAssetSettings(): Promise; setAssetSettings(assetSettings: Record, emitEvent?: boolean): void; setMantaZkAssetSettings(visible: boolean): void; getStoreAssetSettings(): Promise>; getAssetSettings(): Promise>; updateAssetSetting(assetSlug: string, assetSetting: AssetSetting, autoEnableNativeToken?: boolean): Promise; updateAssetSettingByChain(chainSlug: string, visible: boolean): Promise; subscribeAssetSettings(): BehaviorSubject>; getChainLogoMap(): Promise>; getAssetLogoMap(): Promise>; resetWallet(resetAll: boolean): void; getMetadata(chain: string): import("dexie").PromiseExtended; upsertMetadata(chain: string, metadata: IMetadataItem): import("dexie").PromiseExtended; getMetadataByHash(hash: string): import("dexie").PromiseExtended; }