import type { EthereumProvider } from 'hardhat/types/providers';
interface RpcTransactionReceipt {
    status?: string;
    contractAddress?: string | null;
    transactionHash: string;
}
/**
 * Waits for a transaction receipt by polling the connection's EIP-1193 provider directly. On the
 * in-process auto-mining network this resolves immediately, and on real networks it polls at the
 * configured interval — so the engine owns its transaction-waiting semantics without depending on
 * any client library's provider polling behavior.
 *
 * A mined receipt is accepted only when it reports success, reusing `@openzeppelin/upgrades-core`'s
 * `getTransactionReceipt` (which normalizes the status) and `isReceiptSuccessful` (success iff
 * `status === '0x1'`) — the same revert check core uses when validating deployments. Any mined
 * receipt that is not successful — a revert (`0x0`) or a missing/unknown status that cannot be
 * confirmed — is treated as a failure, rather than optimistically assumed to have succeeded.
 */
export declare function waitForReceipt(provider: EthereumProvider, txHash: string, opts?: {
    pollingInterval?: number;
    timeout?: number;
}): Promise<RpcTransactionReceipt>;
export {};
//# sourceMappingURL=receipt.d.ts.map