import { CloudProviderEnum } from '../../apis/codiac-api/contracts';
import { CspTenantProfileGetsertRequest } from '../../apis/codiac-relay/contracts';
import { CommandBaseExecTenant } from '../../command-base-exec-tenant';
import { InteractionModes } from '../../uilogic/config-ui-utils';
interface ICspTenantProfileRequest extends CspTenantProfileGetsertRequest {
}
export default class CspSetup extends CommandBaseExecTenant<ICspTenantProfileRequest> {
    static description: string;
    static args: {
        provider: import("@oclif/core/lib/interfaces/parser").Arg<string | undefined, Record<string, unknown>>;
    };
    static flags: {
        cspTenantId: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
    };
    static examples: (string | {
        description: string;
        command: string;
    })[];
    static hidden: boolean;
    private get uiCloudProvider();
    private __uiCloudProvider_backing;
    protected bootstrap(): void;
    captureArgs(): Promise<[Partial<ICspTenantProfileRequest>, InteractionModes | undefined, boolean]>;
    buildCandidate_silently(partial: Partial<ICspTenantProfileRequest>): Promise<ICspTenantProfileRequest | undefined>;
    buildCandidate_interactively(partial: Partial<ICspTenantProfileRequest>, takeDefaults: boolean): Promise<ICspTenantProfileRequest | undefined>;
    protected promptForTenantId(provider: CloudProviderEnum, defaultValue?: string): Promise<string>;
    buildCommandString(candidate: ICspTenantProfileRequest, cmd: string[]): string[];
    executeTask(candidate: ICspTenantProfileRequest): Promise<void>;
    executeCspSetupForAzure(candidate: ICspTenantProfileRequest): Promise<void>;
    private authenticateTheRelay;
    /** Hard-coded flag for debugging relay from an ide.
     *
     * ***THIS MUST ALWAYS BE FALSE WHEN COMMITTING CODE!!!!!***
     */
    get bareMetalRelay(): boolean;
    private _bareMetalRelay;
}
export {};
