import { LocalAccount, PublicClient, Transport, Chain as ViemChain, Account, WalletClient } from 'viem'; import { TurnkeyClient } from '@turnkey/http'; import { JwtVerifiedCredential } from '@dynamic-labs/sdk-api-core'; import { WalletBookSchema } from '@dynamic-labs/wallet-book'; import type { Chain, ISendBalanceWalletConnector, WalletConnector } from '@dynamic-labs/wallet-connector-core'; import { IChainRpcProviders } from '@dynamic-labs/rpc-provider-ethereum'; import { EvmNetwork, GenericNetwork, IUITransaction, WalletUiUtils } from '@dynamic-labs/types'; import { TurnkeyWalletConnectorNameAndKey } from '../../types'; import { TurnkeyWalletConnectorBase } from '../TurnkeyWalletConnectorBase'; export type TurnkeyEVMConnectorProps = { walletUiUtils: WalletUiUtils; walletBook: WalletBookSchema; evmNetworks: GenericNetwork[]; appName?: string; chainRpcProviders: IChainRpcProviders; }; export declare class TurnkeyEVMWalletConnector extends TurnkeyWalletConnectorBase implements ISendBalanceWalletConnector { walletFallback: { brand: { alt: string; spriteId: string; }; name: string; }; connectedChain: Chain; supportedChains: Chain[]; evmNetworks: EvmNetwork[]; verifiedCredentialChain: string; private walletUiUtils; private _turnkeyAccount; static lastUsedChainIdStorageKey: string; private _selectedChainId; private __turnkeyClient; constructor(nameAndKey: TurnkeyWalletConnectorNameAndKey, props: TurnkeyEVMConnectorProps); private getLastUsedChainId; getNetwork(): Promise; supportsNetworkSwitching(): boolean; switchNetwork({ networkChainId, }: { networkChainId: number; }): Promise; setVerifiedCredentials(verifiedCredentials: JwtVerifiedCredential[]): void; getRpcUrl(): string | undefined; getBalance(): Promise; signMessage(messageToSign: string): Promise; getPublicClient(): Promise | undefined>; getSigner(): Promise | undefined>; getTurnkeyClient(): TurnkeyClient; getAccount(): Promise; getWalletClient(): WalletClient | undefined; private refreshTurnkeyAccount; private get currentChainId(); private get networkRpcUrl(); private get currentEvmNetwork(); private getTurnkeyAccount; get lastUsedChainId(): number | undefined; set lastUsedChainId(chainId: number | undefined); createUiTransaction(from: string): Promise; }