import { BaseCommand, type Opts } from './base.js';
import { type CommandBuilder } from '../types/aliases.js';
import { type NamespaceName } from '../core/kube/resources/namespace/namespace_name.js';
interface ExplorerDeployConfigClass {
    chartDirectory: string;
    clusterRef: string;
    clusterContext: string;
    enableIngress: boolean;
    enableHederaExplorerTls: boolean;
    hederaExplorerTlsHostName: string;
    hederaExplorerStaticIp: string | '';
    hederaExplorerVersion: string;
    mirrorStaticIp: string;
    namespace: NamespaceName;
    profileFile: string;
    profileName: string;
    tlsClusterIssuerType: string;
    valuesFile: string;
    valuesArg: string;
    getUnusedConfigs: () => string[];
    clusterSetupNamespace: NamespaceName;
    soloChartVersion: string;
}
export declare class ExplorerCommand extends BaseCommand {
    private readonly profileManager;
    constructor(opts: Opts);
    static get DEPLOY_CONFIGS_NAME(): string;
    static get DEPLOY_FLAGS_LIST(): import("../types/flag_types.js").CommandFlag[];
    /**
     * @param config - the configuration object
     */
    prepareHederaExplorerValuesArg(config: ExplorerDeployConfigClass): Promise<string>;
    /**
     * @param config - the configuration object
     */
    private prepareSoloChartSetupValuesArg;
    prepareValuesArg(config: ExplorerDeployConfigClass): Promise<string>;
    deploy(argv: any): Promise<boolean>;
    destroy(argv: any): Promise<boolean>;
    /** Return Yargs command definition for 'explorer' command */
    getCommandDefinition(): {
        command: string;
        desc: string;
        builder: CommandBuilder;
    };
    /** Removes the explorer components from remote config. */
    private removeMirrorNodeExplorerComponents;
    /** Adds the explorer components to remote config. */
    private addMirrorNodeExplorerComponents;
    close(): Promise<void>;
}
export {};
