import { providers } from 'ethers'; import { Chain, ChainProviderFn, Provider, ProviderWithFallbackConfig, WebSocketProvider } from '../types'; export declare type ConfigureChainsConfig = { pollingInterval?: number; stallTimeout?: number; } & ({ targetQuorum?: number; minQuorum?: never; } | { targetQuorum: number; minQuorum?: number; }); export declare function configureChains(defaultChains: TChain[], providers: ChainProviderFn[], { minQuorum, pollingInterval, targetQuorum, stallTimeout, }?: ConfigureChainsConfig): { readonly chains: TChain[]; readonly provider: ({ chainId }: { chainId?: number | undefined; }) => (ProviderWithFallbackConfig | providers.FallbackProvider) & { chains: TChain[]; pollingInterval: number; }; readonly webSocketProvider: ({ chainId }: { chainId?: number | undefined; }) => (TWebSocketProvider & { chains: TChain[]; }) | undefined; };