import { Command } from '@oclif/core';
import { CommandBaseExec } from '../../command-base-exec';
import { AtLeast } from '@codiac.io/codiac-common/contracts';
import { RootMap } from "../../apis/codiac-api/contracts";
import { ILocalEntity } from '../../codiac-entities/i-local-entity';
export type CabinetDefineCandidate = {
    enterprise: string;
    environment: string;
    cabinet: string;
    cluster: string;
} & Partial<ILocalEntity>;
export default class CabinetDefine extends CommandBaseExec<CabinetDefineCandidate> {
    static description: string;
    static aliases: string[];
    protected infrxAliases: string[] | undefined;
    static args: {
        cabinet: import("@oclif/core/lib/interfaces/parser").Arg<string | undefined, Record<string, unknown>>;
    };
    static examples: Command.Example[];
    static flags: {
        help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
        enterprise: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        environment: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        cluster: 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>;
        as: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        remember: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        rememberAs: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        unremember: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        withoutdefaults: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
    };
    protected bootstrap(): void;
    captureArgs(): Promise<[Partial<CabinetDefineCandidate>, boolean, Partial<CabinetDefineCandidate>]>;
    buildCandidate_silently(partial: CabinetDefineCandidate, rootMap: RootMap): Promise<CabinetDefineCandidate>;
    buildCandidate_interactively(partial: AtLeast<CabinetDefineCandidate, "enterprise">, rootMap: RootMap, takeDefaults: boolean): Promise<CabinetDefineCandidate>;
    buildCommandString(candidate: CabinetDefineCandidate, cmd: string[]): string[];
    executeTask(candidate: CabinetDefineCandidate): Promise<void>;
}
