/**
 * SPDX-License-Identifier: Apache-2.0
 */
import { type ListrTask } from 'listr2';
import { BaseCommand, type Opts } from './base.js';
import { type CommandBuilder, type NodeAliases } from '../types/aliases.js';
import { NamespaceName } from '../core/kube/resources/namespace/namespace_name.js';
import { type Optional } from '../types/index.js';
export declare class RelayCommand extends BaseCommand {
    private readonly profileManager;
    private readonly accountManager;
    constructor(opts: Opts);
    static get DEPLOY_CONFIGS_NAME(): string;
    static get DEPLOY_FLAGS_LIST(): import("../types/flag_types.js").CommandFlag[];
    static get DESTROY_FLAGS_LIST(): import("../types/flag_types.js").CommandFlag[];
    prepareValuesArg(valuesFile: string, nodeAliases: NodeAliases, chainID: string, relayRelease: string, replicaCount: number, operatorID: string, operatorKey: string, namespace: NamespaceName, context?: Optional<string>): Promise<string>;
    /**
     * created a json string to represent the map between the node keys and their ids
     * output example '{"node-1": "0.0.3", "node-2": "0.004"}'
     */
    prepareNetworkJsonString(nodeAliases: NodeAliases, namespace: NamespaceName): Promise<string>;
    prepareReleaseName(nodeAliases?: NodeAliases): string;
    deploy(argv: any): Promise<boolean>;
    destroy(argv: any): Promise<boolean>;
    getCommandDefinition(): {
        command: string;
        desc: string;
        builder: CommandBuilder;
    };
    /** Adds the relay component to remote config. */
    addRelayComponent(): ListrTask<any, any, any>;
    /** Remove the relay component from remote config. */
    removeRelayComponent(): ListrTask<any, any, any>;
    close(): Promise<void>;
}
