import { Logger } from 'pino'; import { Address } from '@hyperlane-xyz/utils'; import { MultiProvider } from '../../providers/MultiProvider.js'; import { ContractVerificationStatus } from '../../token/types.js'; import { ChainMap, ChainName } from '../../types.js'; import { BaseContractVerifier } from './BaseContractVerifier.js'; import { BuildArtifact, CompilerOptions, ContractVerificationInput, SolidityStandardJsonInput } from './types.js'; export declare class ContractVerifier extends BaseContractVerifier { protected readonly multiProvider: MultiProvider; protected readonly apiKeys: ChainMap; protected logger: import("pino").default.Logger; protected readonly compilerOptions: CompilerOptions; constructor(multiProvider: MultiProvider, apiKeys: ChainMap, buildArtifact: BuildArtifact, licenseType: CompilerOptions['licenseType']); protected verify(chain: ChainName, input: ContractVerificationInput, verificationLogger: Logger): Promise; private verifyImplementation; private verifyProxy; private checkStatus; protected prepareImplementationData(sourceName: string, input: ContractVerificationInput, filteredStandardInputJson: SolidityStandardJsonInput): { codeformat: "solidity-standard-json-input"; compilerversion: string; licenseType?: import("../../block-explorer/etherscan.js").ExplorerLicenseType; zksolcversion?: string; sourceCode: SolidityStandardJsonInput; contractname: string; contractaddress: string; constructorArguements: string; }; getContractVerificationStatus(chain: ChainName, address: Address, verificationLogger?: Logger): Promise; } //# sourceMappingURL=ContractVerifier.d.ts.map