import { ChainsService } from "../chains"; import { KeyRingService } from "../keyring"; import { InteractionService } from "../interaction"; import { AnalyticsService } from "../analytics"; import { Env } from "@keplr-wallet/router"; import { EthereumSignResponse, EthSignType } from "@keplr-wallet/types"; import { KeyRingCosmosService } from "../keyring-cosmos"; import { PermissionService } from "../permission"; import { BackgroundTxEthereumService } from "../tx-ethereum"; import { TokenERC20Service } from "../token-erc20"; import { PermissionInteractiveService } from "../permission-interactive"; export declare class KeyRingEthereumService { protected readonly chainsService: ChainsService; protected readonly keyRingService: KeyRingService; protected readonly keyRingCosmosService: KeyRingCosmosService; protected readonly interactionService: InteractionService; protected readonly analyticsService: AnalyticsService; protected readonly permissionService: PermissionService; protected readonly permissionInteractiveService: PermissionInteractiveService; protected readonly backgroundTxEthereumService: BackgroundTxEthereumService; protected readonly tokenERC20Service: TokenERC20Service; protected websocketSubscriptionMap: Map; constructor(chainsService: ChainsService, keyRingService: KeyRingService, keyRingCosmosService: KeyRingCosmosService, interactionService: InteractionService, analyticsService: AnalyticsService, permissionService: PermissionService, permissionInteractiveService: PermissionInteractiveService, backgroundTxEthereumService: BackgroundTxEthereumService, tokenERC20Service: TokenERC20Service); init(): Promise; signEthereumSelected(env: Env, origin: string, chainId: string, signer: string, message: Uint8Array, signType: EthSignType): Promise; signEthereum(env: Env, origin: string, vaultId: string, chainId: string, signer: string, message: Uint8Array, signType: EthSignType): Promise; /** * Sign an Ethereum transaction with pre-authorization * @dev only sign the transaction, not simulate or broadcast */ signEthereumPreAuthorized(vaultId: string, chainId: string, signer: string, message: Uint8Array, signType: EthSignType): Promise; request(env: Env, origin: string, method: string, params?: unknown[] | Record, providerId?: string, chainId?: string): Promise; getNewCurrentChainIdFromRequest(method: string, params?: unknown[] | Record): string | undefined; checkNeedEnableAccess(method: string): boolean; private getCurrentChainId; private forceGetCurrentChainId; private getEVMChainId; private toHexQty; private normalizeUnsignedTx; }