import { ApiPromise } from '@polkadot/api'; import { Web3 } from 'web3'; import { Signer, ethers } from 'ethers'; import { ProviderConfig, ProviderType } from '../types/config.js'; import { MoonwallProvider } from '../types/context.js'; declare function prepareProviders(providerConfigs: ProviderConfig[]): MoonwallProvider[]; declare function populateProviderInterface(name: string, type: ProviderType, connect: () => Promise | Signer | Web3 | void): Promise<{ name: string; api: ApiPromise; type: "polkadotJs"; greet: () => { rtVersion: number; rtName: string; }; disconnect: () => Promise; } | { name: string; api: ApiPromise; type: "moon"; greet: () => { rtVersion: number; rtName: string; }; disconnect: () => Promise; } | { name: string; api: ethers.Signer; type: "ethers"; greet: () => Promise; disconnect: () => Promise; } | { name: string; api: Web3; type: "web3"; greet: () => Promise; disconnect: () => Promise; }>; export { populateProviderInterface, prepareProviders };