import { DeployConfig, DeploymentParameters, EIP1193Provider, IgnitionModule, IgnitionModuleResult, StrategyConfig } from "@nomicfoundation/ignition-core";
import { HardhatRuntimeEnvironment } from "hardhat/types";
import { IgnitionModuleResultsToViemContracts } from "./ignition-module-results-to-viem-contracts";
export declare class ViemIgnitionHelper {
    private _hre;
    private _config?;
    type: string;
    private _provider;
    constructor(_hre: HardhatRuntimeEnvironment, _config?: Partial<DeployConfig> | undefined, provider?: EIP1193Provider);
    /**
     * Deploys the given Ignition module and returns the results of the module
     * as Viem contract instances.
     *
     * @param ignitionModule - The Ignition module to deploy.
     * @param options - The options to use for the deployment.
     * @returns Viem contract instances for each contract returned by the module.
     */
    deploy<ModuleIdT extends string, ContractNameT extends string, IgnitionModuleResultsT extends IgnitionModuleResult<ContractNameT>, StrategyT extends keyof StrategyConfig = "basic">(ignitionModule: IgnitionModule<ModuleIdT, ContractNameT, IgnitionModuleResultsT>, { parameters, config: perDeployConfig, defaultSender, strategy, strategyConfig, deploymentId: givenDeploymentId, displayUi, }?: {
        parameters?: DeploymentParameters | string;
        config?: Partial<DeployConfig>;
        defaultSender?: string;
        strategy?: StrategyT;
        strategyConfig?: StrategyConfig[StrategyT];
        deploymentId?: string;
        displayUi?: boolean;
    }): Promise<IgnitionModuleResultsToViemContracts<ContractNameT, IgnitionModuleResultsT>>;
    private static _toViemContracts;
    private static _getContract;
    private static _convertContractFutureToViemContract;
    private static _convertHardhatContractToViemContract;
    private static _convertArtifactToViemContract;
    private static _ensureAddressFormat;
    private static _resolveStrategyConfig;
}
//# sourceMappingURL=viem-ignition-helper.d.ts.map