import { type CommandFlag, type CommandFlags } from '../types/flag-types.js';
import { type AnyObject, type AnyYargs } from '../types/aliases.js';
import { type ClusterReferenceName } from '../types/index.js';
export declare class Flags {
    static KEY_COMMON: string;
    private static prompt;
    private static promptText;
    private static promptToggle;
    /**
     * Disable prompts for the given set of flags
     * @param flags list of flags to disable prompts for
     */
    static disablePrompts(flags: CommandFlag[]): void;
    /**
     * Set flag from the flag option
     * @param y instance of yargs
     * @param commandFlags a set of command flags
     *
     */
    static setRequiredCommandFlags(y: AnyYargs, ...commandFlags: CommandFlag[]): void;
    /**
     * Set flag from the flag option
     * @param y instance of yargs
     * @param commandFlags a set of command flags
     *
     */
    static setOptionalCommandFlags(y: AnyYargs, ...commandFlags: CommandFlag[]): void;
    static readonly devMode: CommandFlag;
    static readonly predefinedAccounts: CommandFlag;
    static readonly forcePortForward: CommandFlag;
    static readonly clusterRef: CommandFlag;
    static readonly clusterSetupNamespace: CommandFlag;
    static readonly namespace: CommandFlag;
    static readonly mirrorNamespace: CommandFlag;
    /**
     * Parse the values files input string that includes the cluster reference and the values file path
     * <p>It supports input as below:
     * <p>--values-file aws-cluster=aws/solo-values.yaml,aws-cluster=aws/solo-values2.yaml,gcp-cluster=gcp/solo-values.yaml,gcp-cluster=gcp/solo-values2.yaml
     * @param input
     */
    static parseValuesFilesInput(input: string): Record<ClusterReferenceName, Array<string>>;
    static readonly valuesFile: CommandFlag;
    static readonly networkDeploymentValuesFile: CommandFlag;
    static readonly profileFile: CommandFlag;
    static readonly profileName: CommandFlag;
    static readonly deployPrometheusStack: CommandFlag;
    static readonly enablePrometheusSvcMonitor: CommandFlag;
    static readonly deployMinio: CommandFlag;
    static readonly deployCertManager: CommandFlag;
    static readonly deployCertManagerCrds: CommandFlag;
    static readonly deployJsonRpcRelay: CommandFlag;
    static readonly stateFile: CommandFlag;
    static readonly upgradeZipFile: CommandFlag;
    static readonly releaseTag: CommandFlag;
    static readonly upgradeVersion: CommandFlag;
    static readonly imageTag: CommandFlag;
    static readonly relayReleaseTag: CommandFlag;
    static readonly cacheDir: CommandFlag;
    static readonly nodeAliasesUnparsed: CommandFlag;
    static readonly force: CommandFlag;
    static readonly chartDirectory: CommandFlag;
    static readonly replicaCount: CommandFlag;
    static readonly chainId: CommandFlag;
    static readonly operatorId: CommandFlag;
    static readonly operatorKey: CommandFlag;
    static readonly privateKey: CommandFlag;
    static readonly generateGossipKeys: CommandFlag;
    static readonly generateTlsKeys: CommandFlag;
    static readonly enableTimeout: CommandFlag;
    static readonly tlsClusterIssuerType: CommandFlag;
    static readonly enableExplorerTls: CommandFlag;
    static readonly ingressControllerValueFile: CommandFlag;
    static readonly explorerStaticIp: CommandFlag;
    static readonly explorerTlsHostName: CommandFlag;
    static readonly deletePvcs: CommandFlag;
    static readonly deleteSecrets: CommandFlag;
    static readonly soloChartVersion: CommandFlag;
    static readonly blockNodeChartVersion: CommandFlag;
    static readonly applicationProperties: CommandFlag;
    static readonly applicationEnv: CommandFlag;
    static readonly apiPermissionProperties: CommandFlag;
    static readonly bootstrapProperties: CommandFlag;
    static readonly genesisThrottlesFile: CommandFlag;
    static readonly settingTxt: CommandFlag;
    static readonly app: CommandFlag;
    static readonly appConfig: CommandFlag;
    static readonly localBuildPath: CommandFlag;
    static readonly newAccountNumber: CommandFlag;
    static readonly newAdminKey: CommandFlag;
    static readonly gossipPublicKey: CommandFlag;
    static readonly gossipPrivateKey: CommandFlag;
    static readonly tlsPublicKey: CommandFlag;
    static readonly tlsPrivateKey: CommandFlag;
    static readonly log4j2Xml: CommandFlag;
    static readonly updateAccountKeys: CommandFlag;
    static readonly ed25519PrivateKey: CommandFlag;
    static readonly generateEcdsaKey: CommandFlag;
    static readonly ecdsaPrivateKey: CommandFlag;
    static readonly setAlias: CommandFlag;
    static readonly accountId: CommandFlag;
    static readonly amount: CommandFlag;
    static readonly createAmount: CommandFlag;
    static readonly nodeAlias: CommandFlag;
    static readonly skipNodeAlias: CommandFlag;
    static readonly gossipEndpoints: CommandFlag;
    static readonly grpcEndpoints: CommandFlag;
    static readonly endpointType: CommandFlag;
    static readonly persistentVolumeClaims: CommandFlag;
    static readonly debugNodeAlias: CommandFlag;
    static readonly outputDir: CommandFlag;
    static readonly inputDir: CommandFlag;
    static readonly adminKey: CommandFlag;
    static readonly adminPublicKeys: CommandFlag;
    static readonly quiet: CommandFlag;
    static readonly mirrorNodeVersion: CommandFlag;
    static readonly enableIngress: CommandFlag;
    static readonly mirrorStaticIp: CommandFlag;
    static readonly explorerVersion: CommandFlag;
    static readonly context: CommandFlag;
    static readonly deployment: CommandFlag;
    static readonly deploymentClusters: CommandFlag;
    static readonly pinger: CommandFlag;
    static readonly grpcTlsCertificatePath: CommandFlag;
    static readonly grpcWebTlsCertificatePath: CommandFlag;
    static readonly useExternalDatabase: CommandFlag;
    static readonly externalDatabaseHost: CommandFlag;
    static readonly externalDatabaseOwnerUsername: CommandFlag;
    static readonly externalDatabaseOwnerPassword: CommandFlag;
    static readonly externalDatabaseReadonlyUsername: CommandFlag;
    static readonly externalDatabaseReadonlyPassword: CommandFlag;
    static readonly username: CommandFlag;
    static readonly grpcTlsKeyPath: CommandFlag;
    static readonly grpcWebTlsKeyPath: CommandFlag;
    static readonly stakeAmounts: CommandFlag;
    static readonly haproxyIps: CommandFlag;
    static readonly envoyIps: CommandFlag;
    static readonly storageType: CommandFlag;
    static readonly gcsWriteAccessKey: CommandFlag;
    static readonly gcsWriteSecrets: CommandFlag;
    static readonly gcsEndpoint: CommandFlag;
    static readonly gcsBucket: CommandFlag;
    static readonly gcsBucketPrefix: CommandFlag;
    static readonly awsWriteAccessKey: CommandFlag;
    static readonly awsWriteSecrets: CommandFlag;
    static readonly awsEndpoint: CommandFlag;
    static readonly awsBucket: CommandFlag;
    static readonly awsBucketRegion: CommandFlag;
    static readonly awsBucketPrefix: CommandFlag;
    static readonly backupBucket: CommandFlag;
    static readonly backupWriteAccessKey: CommandFlag;
    static readonly backupWriteSecrets: CommandFlag;
    static readonly backupEndpoint: CommandFlag;
    static readonly backupRegion: CommandFlag;
    static readonly backupProvider: CommandFlag;
    static readonly storageReadAccessKey: CommandFlag;
    static readonly storageReadSecrets: CommandFlag;
    static readonly storageEndpoint: CommandFlag;
    static readonly storageBucket: CommandFlag;
    static readonly storageBucketPrefix: CommandFlag;
    static readonly storageBucketRegion: CommandFlag;
    static readonly loadBalancerEnabled: CommandFlag;
    static readonly enableCertManager: CommandFlag;
    static readonly numberOfConsensusNodes: CommandFlag;
    static readonly dnsBaseDomain: CommandFlag;
    static readonly dnsConsensusNodePattern: CommandFlag;
    static readonly domainName: CommandFlag;
    static readonly domainNames: CommandFlag;
    static readonly realm: CommandFlag;
    static readonly shard: CommandFlag;
    static readonly allFlags: CommandFlag[];
    /** Resets the definition.disablePrompt for all flags */
    private static resetDisabledPrompts;
    static readonly allFlagsMap: Map<string, CommandFlag>;
    static readonly nodeConfigFileFlags: Map<string, CommandFlag>;
    static readonly integerFlags: Map<string, CommandFlag>;
    static readonly DEFAULT_FLAGS: CommandFlags;
    /**
     * Processes the Argv arguments and returns them as string, all with full flag names.
     * - removes flags that match the default value.
     * - removes flags with undefined and null values.
     * - removes boolean flags that are false.
     * - masks all sensitive flags with their dataMask property.
     */
    static stringifyArgv(argv: AnyObject): string;
}
