import { IParallelDeploymentTimelineAdapter, NetworkInfo, WalletInfo, ParallelDeploymentState, DeploymentEvent, DeploymentResult, DeploymentProgress, DeploymentDetails } from './types';
import { PreDeploymentCheck } from '../../../types/upgrade';
import { ethers } from 'ethers';
export declare class ParallelDeploymentTimelineAdapter implements IParallelDeploymentTimelineAdapter {
    private timeline;
    private state;
    private startTime;
    private totalModules;
    private spinner;
    private spinnerFrames;
    private currentFrame;
    constructor();
    setTotalModules(total: number): void;
    startDeployment(networkInfo: NetworkInfo): void;
    logPreDeploymentChecks(checks: PreDeploymentCheck[]): void;
    logWalletGeneration(wallets: WalletInfo[]): void;
    handleDeploymentEvent(event: DeploymentEvent): void;
    getDeploymentState(): ParallelDeploymentState;
    displayCurrentProgress(): void;
    displaySummary(results: DeploymentResult[], duration: number): void;
    startModuleDeployment(moduleName: string, index: number): void;
    logTransactionSent(moduleName: string, txHash: string): void;
    logDeploymentSuccess(moduleName: string, address: string, gasUsed: ethers.BigNumber, blockNumber: number, details?: DeploymentDetails): void;
    logDeploymentError(moduleName: string, error: string): void;
    updateModuleProgress(progress: DeploymentProgress): void;
    logWarning(message: string): void;
    /**
     * Log an error message
     * @param message Error message to display
     */
    logError(message: string): void;
    /**
     * Log a library deployment error
     */
    logLibraryDeploymentError(libraryName: string, error: string): void;
    /**
     * Log a library deployment success
     */
    logLibraryDeploymentSuccess(libraryName: string, address: string): void;
    /**
     * Log a library detection error
     */
    logLibraryDetectionError(moduleName: string, error: unknown): void;
    /**
     * Log an informational message
     */
    logInfo(message: string): void;
    /**
     * Log a success message
     */
    logSuccess(message: string): void;
    private getStatusIcon;
    private formatBytes;
    private formatGas;
    private formatDuration;
    private capitalizeFirstLetter;
    startSpinner(message: string): void;
    stopSpinner(): void;
}
//# sourceMappingURL=parallelDeploymentTimelineAdapter.d.ts.map