import type { HardhatRuntimeEnvironment } from 'hardhat/types/hre';
import type { Etherscan, EtherscanCustomApiCallOptions, EtherscanVerifyArgs, EtherscanResponseBody } from '@nomicfoundation/hardhat-verify/types';
export type { Etherscan, EtherscanCustomApiCallOptions, EtherscanVerifyArgs, EtherscanResponseBody };
export declare const RESPONSE_OK = "1";
/**
 * Gets the Etherscan instance from the network connection (hardhat-verify v3.0.10+).
 * Requires @nomicfoundation/hardhat-verify to be loaded and the network to expose verification.etherscan.
 */
export declare function getEtherscanFromConnection(hre: HardhatRuntimeEnvironment): Promise<Etherscan>;
/**
 * Call the Etherscan API via hardhat-verify's customApiCall (adds apikey and chainid as needed).
 */
export declare function callEtherscanApi(etherscan: Etherscan, params: Record<string, string | number | undefined>, options?: EtherscanCustomApiCallOptions): Promise<EtherscanResponseBody>;
/**
 * Submit contract for verification and poll for status using the Etherscan instance.
 */
export declare function verifyAndGetStatus(params: EtherscanVerifyArgs, etherscan: Etherscan): Promise<{
    success: boolean;
    message: string;
}>;
//# sourceMappingURL=etherscan-api.d.ts.map