import { Command } from '@oclif/core';
import { RootMap } from '../../../apis/codiac-api/contracts';
import { ClusterDef } from '../../../apis/codiac-api/contracts';
import { CommandBaseExecTenant } from '../../../command-base-exec-tenant';
import { AtLeast } from '@codiac.io/codiac-common/contracts';
export default class NocClusterDefine extends CommandBaseExecTenant<ClusterDef> {
    static description: string;
    static aliases: string[];
    static examples: Command.Example[];
    static flags: {
        help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
        provider: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        providerSubscription: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        resourceGroup: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        location: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        nodeSpec: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        nodeQty: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        k8sVersion: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        nodesMin: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        nodesMax: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        subnet: import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        networkPlugin: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        identityUserName: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        identityUserId: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        identityUserPassword: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        echo: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        'to-script': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        'take-defaults': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
    };
    static args: {
        name: import("@oclif/core/lib/interfaces/parser").Arg<string | undefined, Record<string, unknown>>;
    };
    private get uiCloudPvd();
    private _uiCloudPvd;
    protected bootstrap(): void;
    captureArgs(): Promise<[Partial<ClusterDef>, boolean]>;
    buildCandidate_silently(partial: AtLeast<ClusterDef, 'name'>, _rootMap: RootMap): Promise<ClusterDef | undefined>;
    buildCandidate_interactively(partial: AtLeast<ClusterDef, 'name'>, takeDefaults: boolean, _rootMap: RootMap): Promise<ClusterDef | undefined>;
    buildCommandString(candidate: ClusterDef, cmd: string[]): string[];
    executeTask(candidate: ClusterDef): Promise<void>;
    /** Attempts to load an existing ClusterDef by name. Returns undefined if not found. */
    private tryLoadExistingDef;
    private stringToEnum;
}
