import { EthereumProvider, SolanaProvider, ProviderType } from './types'; /** * Handles JSON-RPC request coming from an iFrame by delegating to a given Ethereum provider. * The result will be passed back to the iFrame. * * Additionally, it will forward some special events from the wallet, to the iFrame window, for example connect/disconnect/chainChanged */ export declare class IframeRpcProviderBridge { private iframeWindow; /** * The Ethereum provider instance. * When is null the JSON-RPC bridge is disconnected from the Ethereum provider. * */ private provider; /** Listener for Ethereum provider events */ private processor; private listener; private connectListener; /** * Creates an instance of IframeRpcProviderBridge. * @param iframeWindow - The iFrame window that will post up general RPC messages and to which the IframeRpcProviderBridge will forward the RPC result. * Also it will receive some special RPC events coming from the wallet, like connect/chainChanged,accountChanged */ constructor(iframeWindow: Window, providerType: ProviderType); disconnect(): void; onConnect(newProvider: EthereumProvider | SolanaProvider): void; /** * Process provider events coming from the window (from iFrame). */ private processProviderEventFromWindow; /** * Process connect event for Solana */ private processConnectEvent; }