import { ValidationOptions } from '@openzeppelin/upgrades-core';
import { DeployData } from './deploy-impl.js';
export declare function validateImpl(deployData: DeployData, opts: ValidationOptions, currentImplAddress?: string): Promise<void>;
/**
 * Processes the proxy kind and validates that the implementation in deployData is upgrade safe
 * (compared to the proxy's current implementation if proxyAddress is specified).
 */
export declare function validateProxyImpl(deployData: DeployData, opts: ValidationOptions, proxyAddress?: string): Promise<void>;
/**
 * Asserts that the address is not a proxy and validates that the implementation in deployData is upgrade safe
 * compared to the beacon's current implementation.
 */
export declare function validateBeaconImpl(deployData: DeployData, opts: ValidationOptions, beaconAddress?: string): Promise<void>;
//# sourceMappingURL=validate-impl.d.ts.map