UNPKG

@openzeppelin/hardhat-upgrades

Version:

[![Docs](https://img.shields.io/badge/docs-%F0%9F%93%84-blue)](https://docs.openzeppelin.com/upgrades-plugins/hardhat-upgrades) [![NPM Package](https://img.shields.io/npm/v/@openzeppelin/hardhat-upgrades.svg)](https://www.npmjs.org/package/@openzeppelin/h

32 lines • 1.98 kB
import { StorageLayout, ValidationDataCurrent, ValidationOptions, Version } from '@openzeppelin/upgrades-core'; import type { EthereumProvider } from 'hardhat/types/providers'; import type { ContractInfo, DeployedContract, EngineBinding } from './binding.js'; import { StandaloneOptions, UpgradeOptions } from './options.js'; export interface DeployedImpl { impl: string; /** The implementation deployment record, used by the bindings to expose a transaction response. */ deployment: DeployedContract; } export interface DeployedProxyImpl extends DeployedImpl { kind: NonNullable<ValidationOptions['kind']>; } export interface DeployData { provider: EthereumProvider; validations: ValidationDataCurrent; unlinkedBytecode: string; encodedArgs: string; version: Version; layout: StorageLayout; fullOpts: Required<UpgradeOptions>; } export declare function getDeployData(binding: EngineBinding, info: ContractInfo, opts: UpgradeOptions): Promise<DeployData>; export declare function deployUpgradeableImpl(binding: EngineBinding, info: ContractInfo, opts: StandaloneOptions, currentImplAddress: string | undefined): Promise<DeployedImpl>; export declare function deployProxyImpl(binding: EngineBinding, info: ContractInfo, opts: UpgradeOptions, proxyAddress: string | undefined): Promise<DeployedProxyImpl>; export declare function deployBeaconImpl(binding: EngineBinding, info: ContractInfo, opts: UpgradeOptions, beaconAddress: string | undefined): Promise<DeployedImpl>; /** * To import an already deployed contract we reuse fetchOrDeploy for its ability to validate a * deployment and record it in the network file, by "simulating" a deployment: the deploy callback * simply returns the contract to be imported rather than deploying anything. */ export declare function simulateDeployImpl(binding: EngineBinding, info: ContractInfo, opts: UpgradeOptions, implAddress: string): Promise<void>; //# sourceMappingURL=deploy-impl.d.ts.map