import React from 'react'; import { ToastRef } from '../components/toast/ReactToast'; import { Option as ChainType } from '../data'; import { ExecutionResult, FunctionFragmentView, WidgetExecutor, WidgetInitializationParams } from '../lib'; import { TransactionOverrides } from '../lib/execution/types'; import { DisplayResult } from '../lib/execution/util'; interface WidgetContextProps { initializeWidgetExecutor: (params: WidgetInitializationParams) => Promise; functionViews: readonly FunctionFragmentView[]; executor: WidgetExecutor | null; provider: EthersTypes.BrowserProvider; updateProvider: (provider: EthersTypes.BrowserProvider) => void; handleAccountsChanged: (accounts: string[]) => void; handleChainChanged: (chainId: number) => void; checkConnection: () => void; readMethod: boolean; updateReadMethod: (readMethod: boolean) => void; connected: boolean; setConnected: (connected: boolean) => void; chainId: number | undefined; queryMainnet: boolean; setQueryMainnet: (queryMainnet: boolean) => void; transactionOverrides: TransactionOverrides[]; setTransactionOverrides: (transactionOverrides: TransactionOverrides[]) => void; displayButton: () => string; executionButton: (toastRef: ToastRef, overlayRef: HTMLDivElement, setShowResult: (result: boolean) => void, toggleOverlay: (toggleState: boolean, overlayRef: HTMLDivElement) => void) => void; response?: Array; networkList: () => ChainType[] | void; updateChainId: (chainId: number) => void; getActiveChainId: () => number | undefined; } export declare const useWidgetContext: () => WidgetContextProps; interface WidgetProviderProps { children: React.ReactNode; } export declare const WidgetProvider: React.FC; export {};