import { ProtocolType } from '@hyperlane-xyz/utils'; import { multiProtocolTestChainMetadata } from '../consts/testChains.js'; import type { ChainMetadata } from '../metadata/chainMetadataTypes.js'; import type { ChainMap, ChainName } from '../types.js'; import { MultiProviderAdapter, MultiProviderAdapterOptions } from './MultiProviderAdapter.js'; import { MultiProvider } from './MultiProvider.js'; import { ProviderType, TypedProvider } from './ProviderType.js'; import type { ProviderBuilderFn } from './providerBuilders.js'; export interface MultiProtocolProviderOptions extends MultiProviderAdapterOptions { } export declare class MultiProtocolProvider extends MultiProviderAdapter { static fromMultiProvider(mp: MultiProvider, options?: MultiProtocolProviderOptions): MultiProtocolProvider; constructor(chainMetadata: ChainMap>, options?: MultiProtocolProviderOptions); protected getProviderBuilder(protocol: ProtocolType, type: ProviderType): ProviderBuilderFn | undefined; extendChainMetadata(additionalMetadata: ChainMap): MultiProtocolProvider; intersect(chains: ChainName[], throwIfNotSubset?: boolean): { intersection: ChainName[]; result: MultiProtocolProvider; }; static createTestMultiProtocolProvider(metadata?: typeof multiProtocolTestChainMetadata, providers?: Partial>): MultiProtocolProvider; static createTestMultiProtocolProvider(metadata: ChainMap>, providers?: Partial>): MultiProtocolProvider; } //# sourceMappingURL=MultiProtocolProvider.d.ts.map