import "reflect-metadata";
import { Command } from '@oclif/core';
import { CabinetClusterRoot, RootMap } from '../../apis/codiac-api/contracts';
import { CommandBaseExec, IEnterpriseEntity } from '../../command-base-exec';
import { AtLeast } from '@codiac.io/codiac-common/contracts';
import { AssetVersion, CabinetScope } from "../../apis/codiac-relay/contracts";
/** The value provided as input that indicates
 * a user's desire to be prompted with a list from which choose the value(s),
 * instead of entering them manually or taking a default. */
export declare const PROMPT_ME_DESIGNATOR = "?";
type ConfigDeployRequest = IEnterpriseEntity & {
    enterprise: string;
    assetName?: string;
    cabinetName?: string;
    assetVersions: AssetVersion[];
    cabinet: CabinetClusterRoot;
    cabCntx: CabinetScope;
};
export default class ConfigDeploy extends CommandBaseExec<ConfigDeployRequest> {
    static description: string;
    static flags: {
        help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
        enterpriseCode: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        cabinetName: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        asset: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        version: 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>;
    };
    static args: {};
    static examples: Command.Example[];
    captureArgs(): Promise<[Partial<ConfigDeployRequest>, boolean]>;
    buildCandidate_silently(partial: AtLeast<ConfigDeployRequest, "enterprise">, rootMap: RootMap): Promise<ConfigDeployRequest | undefined>;
    buildCandidate_interactively(partial: AtLeast<ConfigDeployRequest, "enterprise">, rootMap: RootMap, takeDefaults: boolean): Promise<ConfigDeployRequest | undefined>;
    buildCommandString(candidate: ConfigDeployRequest, cmd: string[]): string[];
    executeTask(candidate: ConfigDeployRequest): Promise<void>;
    private selectCabinet;
    private createEmbellisherForConfigDeploy;
    private extractAssetVersions;
    private promptForAsset;
}
export {};
