import NamingService from './NamingService'; import { BlockhanNetworkUrlMap, NetworkIdMap, nodeHash } from './types'; import Contract from './utils/contract'; import { NamingServiceName, SourceDefinition, ResolutionMethod } from './publicTypes'; export declare abstract class EthereumNamingService extends NamingService { readonly name: NamingServiceName; protected readerContract: Contract; static readonly UrlMap: BlockhanNetworkUrlMap; static readonly NetworkNameMap: { mainnet: number; ropsten: number; rinkeby: number; goerli: number; kovan: number; }; static readonly NetworkIdMap: NetworkIdMap; constructor(source: SourceDefinition | undefined, name: ResolutionMethod); protected abstract defaultRegistry(network: number): string | undefined; protected abstract readerAbi(): any; private networkFromUrl; protected normalizeSource(source: SourceDefinition): SourceDefinition; isSupportedNetwork(): boolean; childhash(parent: nodeHash, label: string): nodeHash; protected callMethod(contract: Contract, method: string, params: (string | string[])[]): Promise; protected buildContract(abi: any, address: string): Contract; protected throwOwnershipError(domain: string, ownerPromise?: Promise): Promise; }