import { AppProject, PackageProject, ProxyAdminProject, App, Package, ImplementationDirectory, TxParams } from 'zos-lib'; import NetworkController from './NetworkController'; import ZosPackageFile from '../files/ZosPackageFile'; import ZosNetworkFile from '../files/ZosNetworkFile'; interface PartialDeploy { app?: App; thepackage?: Package; directory?: ImplementationDirectory; } declare class BaseProjectDeployer { protected controller: NetworkController; protected packageFile: ZosPackageFile; protected networkFile: ZosNetworkFile; protected txParams: TxParams; protected requestedVersion: string; constructor(controller: NetworkController, requestedVersion: string); } declare class BasePackageProjectDeployer extends BaseProjectDeployer { readonly packageAddress: string; protected _tryRegisterPartialDeploy({ thepackage, directory, }: PartialDeploy): void; protected _registerPackage({ address }: { address: string; }): void; protected _registerVersion(version: string, { address }: { address: string; }): void; } export declare class PackageProjectDeployer extends BasePackageProjectDeployer { project: PackageProject; fetchOrDeploy(): Promise; } export declare class AppProjectDeployer extends BasePackageProjectDeployer { project: AppProject; fetchOrDeploy(): Promise; fromProxyAdminProject(proxyAdminProject: ProxyAdminProject): Promise; readonly appAddress: string; readonly proxyAdminAddress: string; readonly proxyFactoryAddress: string; private _run; protected _tryRegisterPartialDeploy({ thepackage, app, directory, }: PartialDeploy): void; private _registerDeploy; private _registerApp; } export declare class ProxyAdminProjectDeployer extends BaseProjectDeployer { project: ProxyAdminProject; fetchOrDeploy(): Promise; } export {};