import { ethers } from 'ethers'; import { YlideRegistryV3 } from '@ylide/ethereum-contracts'; import { ExternalYlidePublicKey } from '@ylide/sdk'; import { EthereumBlockchainReader } from '../controllers/helpers/EthereumBlockchainReader'; import { IEVMEnrichedEvent, IEVMRegistryContractLink } from '../misc'; import { ContractCache } from './ContractCache'; import { KeyAttachedEventObject } from '@ylide/ethereum-contracts/lib/YlideRegistryV3'; export declare class EthereumRegistryV3Wrapper { readonly blockchainReader: EthereumBlockchainReader; readonly cache: ContractCache; constructor(blockchainReader: EthereumBlockchainReader); static deploy(signer: ethers.Signer, from: string, previousContractAddress?: string): Promise; processKeyAttachedEvent(event: IEVMEnrichedEvent): { address: string; key: ExternalYlidePublicKey; }; getPublicKeyByAddress(registry: IEVMRegistryContractLink, address: string): Promise; getPublicKeysHistoryForAddress(registry: IEVMRegistryContractLink, address: string): Promise; attachPublicKey(registry: IEVMRegistryContractLink, signer: ethers.Signer, from: string, publicKey: ExternalYlidePublicKey): Promise; }