import { ethers, Contract } from 'ethers'; import { Provider } from '@ethersproject/abstract-provider'; import { Signer } from '@ethersproject/abstract-signer'; import { HardhatRuntimeEnvironment } from 'hardhat/types'; import 'hardhat-deploy'; import '@eth-optimism/hardhat-deploy-config'; import '@nomiclabs/hardhat-ethers'; export declare const deploy: ({ hre, name, iface, args, contract, postDeployAction, }: { hre: HardhatRuntimeEnvironment; name: string; args: any[]; contract?: string; iface?: string; postDeployAction?: (contract: Contract) => Promise; }) => Promise; export declare const asAdvancedContract: (opts: { contract: Contract; confirmations?: number; gasPrice?: number; }) => Contract; export declare const getContractFromArtifact: (hre: HardhatRuntimeEnvironment, name: string, opts?: { iface?: string; signerOrProvider?: Signer | Provider | string; }) => Promise; export declare const getContractsFromArtifacts: (hre: HardhatRuntimeEnvironment, configs: Array<{ name: string; iface?: string; signerOrProvider?: Signer | Provider | string; }>) => Promise; export declare const assertContractVariable: (contract: ethers.Contract, variable: string, expected: any) => Promise; export declare const getDeploymentAddress: (hre: HardhatRuntimeEnvironment, name: string) => Promise; export declare const printJsonTransaction: (tx: ethers.PopulatedTransaction) => void; export declare const doOwnershipTransfer: (opts: { isLiveDeployer?: boolean; proxy: ethers.Contract; name: string; transferFunc: string; dictator: ethers.Contract; }) => Promise; export declare const liveDeployer: (opts: { hre: HardhatRuntimeEnvironment; disabled: string | undefined; }) => Promise; export declare const isStep: (dictator: ethers.Contract, step: number) => Promise; export declare const isStartOfPhase: (dictator: ethers.Contract, phase: number) => Promise; export declare const doStep: (opts: { isLiveDeployer?: boolean; SystemDictator: ethers.Contract; step: number; message: string; checks: () => Promise; }) => Promise; export declare const doPhase: (opts: { isLiveDeployer?: boolean; SystemDictator: ethers.Contract; phase: number; message: string; checks: () => Promise; }) => Promise; export declare const printTenderlySimulationLink: (provider: ethers.providers.Provider, tx: ethers.PopulatedTransaction) => Promise; export declare const printCastCommand: (tx: ethers.PopulatedTransaction) => void;