UNPKG

@hyperlane-xyz/sdk

Version:

The official SDK for the Hyperlane Network

41 lines 2.96 kB
import { Logger } from 'pino'; import { ProtocolType } from '@hyperlane-xyz/utils'; import { ChainMetadataManager } from '../metadata/ChainMetadataManager.js'; import type { ChainMetadata } from '../metadata/chainMetadataTypes.js'; import type { ChainMap, ChainName, ChainNameOrId } from '../types.js'; import { AleoProvider, CosmJsNativeProvider, CosmJsProvider, CosmJsWasmProvider, EthersV5Provider, ProviderMap, ProviderType, RadixProvider, SolanaWeb3Provider, StarknetJsProvider, TronProvider, TypedProvider, ViemProvider } from './ProviderType.js'; import type { ProviderBuilderFn, ProviderBuilderMap } from './providerBuilders.js'; export interface MinimalProviderRegistryOptions { logger?: Logger; providers?: ChainMap<ProviderMap<TypedProvider>>; providerBuilders?: Partial<ProviderBuilderMap>; } export declare class MinimalProviderRegistry<MetaExt = {}> extends ChainMetadataManager<MetaExt> { protected readonly options: MinimalProviderRegistryOptions; protected readonly providers: ChainMap<ProviderMap<TypedProvider>>; protected readonly providerBuilders: Partial<ProviderBuilderMap>; readonly logger: Logger; constructor(chainMetadata: ChainMap<ChainMetadata<MetaExt>>, options?: MinimalProviderRegistryOptions); extendChainMetadata<NewExt = {}>(additionalMetadata: ChainMap<NewExt>): MinimalProviderRegistry<MetaExt & NewExt>; protected getProviderBuilder(_protocol: ProtocolType, type: ProviderType): ProviderBuilderFn<TypedProvider> | undefined; tryGetProvider(chainNameOrId: ChainNameOrId, type?: ProviderType): TypedProvider | null; getProvider(chainNameOrId: ChainNameOrId, type?: ProviderType): TypedProvider; protected getSpecificProvider<T>(chainNameOrId: ChainNameOrId, type: ProviderType): T; getEthersV5Provider(chainNameOrId: ChainNameOrId): EthersV5Provider['provider']; getViemProvider(chainNameOrId: ChainNameOrId): ViemProvider['provider']; getSolanaWeb3Provider(chainNameOrId: ChainNameOrId): SolanaWeb3Provider['provider']; getCosmJsProvider(chainNameOrId: ChainNameOrId): CosmJsProvider['provider']; getCosmJsWasmProvider(chainNameOrId: ChainNameOrId): CosmJsWasmProvider['provider']; getCosmJsNativeProvider(chainNameOrId: ChainNameOrId): CosmJsNativeProvider['provider']; getStarknetProvider(chainNameOrId: ChainNameOrId): StarknetJsProvider['provider']; getRadixProvider(chainNameOrId: ChainNameOrId): RadixProvider['provider']; getAleoProvider(chainNameOrId: ChainNameOrId): AleoProvider['provider']; getTronProvider(chainNameOrId: ChainNameOrId): TronProvider['provider']; setProvider(chainNameOrId: ChainNameOrId, provider: TypedProvider): TypedProvider; setProviders(providers: ChainMap<TypedProvider>): void; intersect(chains: ChainName[], throwIfNotSubset?: boolean): { intersection: ChainName[]; result: MinimalProviderRegistry<MetaExt>; }; } //# sourceMappingURL=MinimalProviderRegistry.d.ts.map