import { Ownable } from '@hyperlane-xyz/core'; import { Address, EvmChainId, ProtocolType } from '@hyperlane-xyz/utils'; import type { EthersLikeProvider } from '../deploy/proxy.js'; import { ChainMetadataManager } from '../metadata/ChainMetadataManager.js'; import { MultiProvider } from '../providers/MultiProvider.js'; import { AnnotatedEV5Transaction } from '../providers/ProviderType.js'; import { ChainMap, ChainNameOrId, Connection, OwnableConfig } from '../types.js'; import { HyperlaneAddresses, HyperlaneAddressesMap, HyperlaneContracts, HyperlaneContractsMap, HyperlaneFactories } from './types.js'; export declare function serializeContractsMap(contractsMap: HyperlaneContractsMap): HyperlaneAddressesMap; export declare function serializeContracts(contracts: HyperlaneContracts): any; export declare function filterAddressesMap(addressesMap: HyperlaneAddressesMap, factories: F): HyperlaneAddressesMap; export declare function filterChainMapToProtocol(contractsMap: ChainMap, protocolType: ProtocolType, metadataManager: ChainMetadataManager): ChainMap; export declare function filterChainMapExcludeProtocol(contractsMap: ChainMap, protocolType: ProtocolType, metadataManager: ChainMetadataManager): ChainMap; export declare function attachContracts(addresses: HyperlaneAddresses, factories: F): HyperlaneContracts; export declare function attachContractsMap(addressesMap: HyperlaneAddressesMap, factories: F): HyperlaneContractsMap; export declare function attachContractsMapAndGetForeignDeployments(addressesMap: HyperlaneAddressesMap, factories: F, metadataManager: ChainMetadataManager): { contractsMap: HyperlaneContractsMap; foreignDeployments: ChainMap
; }; export declare function attachAndConnectContracts(addresses: HyperlaneAddresses, factories: F, connection: Connection): HyperlaneContracts; export declare function connectContracts(contracts: HyperlaneContracts, connection: Connection): HyperlaneContracts; export declare function connectContractsMap(contractsMap: ChainMap>, multiProvider: MultiProvider): ChainMap>; export declare function filterOwnableContracts(contracts: HyperlaneContracts): { [key: string]: Ownable; }; export declare function appFromAddressesMapHelper(addressesMap: HyperlaneAddressesMap, factories: F, multiProvider: MultiProvider): { contractsMap: HyperlaneContractsMap; multiProvider: MultiProvider; }; export declare function transferOwnershipTransactions(chainId: EvmChainId, contract: Address, actual: OwnableConfig, expected: OwnableConfig, label?: string): AnnotatedEV5Transaction[]; export declare function isAddressActive(provider: EthersLikeProvider, address: Address): Promise; /** * Checks if the provided address is a contract */ export declare function isContractAddress(multiProvider: MultiProvider, chain: ChainNameOrId, address: string, blockNumber?: number): Promise; /** * Checks if the provided address is a contract and throws if it isn't */ export declare function assertIsContractAddress(multiProvider: MultiProvider, chain: ChainNameOrId, address: string): Promise; //# sourceMappingURL=contracts.d.ts.map