import "reflect-metadata";
import { Command } from '@oclif/core';
import { VersionConfig, RootMap } from '../apis/codiac-api/contracts';
import { AssetVersion, CabinetScope } from "../apis/codiac-relay/contracts";
import { CommandBaseExec, IEnterpriseEntity } from '../command-base-exec';
import { AtLeast } from '@codiac.io/codiac-common/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 = "?";
export declare const PROMPT_ME_DESIGNATOR_MACOS = "??";
type DeployRequest = IEnterpriseEntity & {
    enterprise: string;
    assetVersions: AssetVersion[];
    cabinetScope: CabinetScope;
    cabCluster?: string;
    providerUserName?: string;
    providerPassword?: string;
    overrideConditions?: boolean;
};
export default class Deploy extends CommandBaseExec<DeployRequest> {
    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>;
        tag: import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        tagMatch: 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>;
        tagAsset: import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        providerUserName: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        providerPassword: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        "override-conditions": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        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[];
    protected bootstrap(): void;
    captureArgs(): Promise<[Partial<DeployRequest>, boolean]>;
    buildCandidate_silently(partial: AtLeast<DeployRequest, "enterprise">, rootMap: RootMap): Promise<DeployRequest | undefined>;
    buildCandidate_interactively(partial: AtLeast<DeployRequest, "enterprise">, rootMap: RootMap, takeDefaults: boolean): Promise<DeployRequest | undefined>;
    buildCommandString(candidate: DeployRequest, cmd: string[]): string[];
    executeTask(candidate: DeployRequest): Promise<void>;
    private reportSkipped;
    private resolveCabinetSilently;
    private resolveCabinetByTag;
    private promptForAsset;
    private promptForVersion;
    private searchVersions;
    /** Expands a string list of key=value into properties on an object. */
    parseToDictionary(theseEqualThose: string[]): {
        [name: string]: string;
    };
    /** Writes Asset versions to the Codiac API. */
    protected declareAssetVersions(assets: string[], enterpriseCode: string, versionToUse: string): Promise<VersionConfig[]>;
}
export {};
