import type { Client } from 'viem';
import type { StatusManager } from '../StatusManager';
import type { LiFiStepExtended, SwitchChainHook } from '../types';
/**
 * This method checks whether the wallet client is configured for the correct chain.
 * If yes it returns the wallet clien.
 * If no and if user interaction is allowed it triggers the switchChainHook. If no user interaction is allowed it aborts.
 *
 * Account Type: local -
 * We need to create and return a new connector client from the switchChainHook in order to continue execution on a new chain.
 *
 * Account Type: json-rpc -
 * We can switch chain and return existing connector client from the switchChainHook in order to continue execution on a new chain.
 * @param client
 * @param statusManager
 * @param step
 * @param switchChainHook
 * @param allowUserInteraction
 * @returns New connector client
 */
export declare const switchChain: (client: Client, statusManager: StatusManager, step: LiFiStepExtended, allowUserInteraction: boolean, switchChainHook?: SwitchChainHook) => Promise<Client | undefined>;
//# sourceMappingURL=switchChain.d.ts.map