import { AtLeast } from '@codiac.io/codiac-common/contracts';
import { ProbeUsageTypesEnum, RootMap } from '../../../apis/codiac-api/contracts';
import { CommandBaseExec } from '../../../command-base-exec';
import { InteractionModes } from "../../../uilogic/config-ui-utils";
/** Fully declares one and only one ScopedHostNameConfig via a unique index */
export type IProbeSpecifier = {
    enterprise: string;
    descriptor?: {
        asset?: string;
        usage?: ProbeUsageTypesEnum;
        versionRange?: string | undefined;
    } | undefined;
    ids?: string[] | undefined;
};
export default class AssetProbeDelete extends CommandBaseExec<IProbeSpecifier> {
    /** Value to specify for version range to delete probes for all version ranges. */
    static readonly VERSION_RANGE_WILDCARD = "*";
    static description: string;
    static examples: string[];
    static flags: {
        enterprise: 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>;
        usage: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        "version-range": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        id: 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: {};
    captureArgs(): Promise<[Partial<IProbeSpecifier>, (InteractionModes | undefined), boolean]>;
    buildCandidate_silently(partial: AtLeast<IProbeSpecifier, "enterprise">, rootMap: RootMap): Promise<IProbeSpecifier | undefined>;
    buildCandidate_interactively(partial: AtLeast<IProbeSpecifier, "enterprise">, rootMap: RootMap, takeDefaults: boolean): Promise<IProbeSpecifier | undefined>;
    buildCommandString(candidate: IProbeSpecifier, cmd: string[]): string[];
    executeTask(candidate: IProbeSpecifier): Promise<void>;
    /** TEMP!! until we verify that deleteWhere properly fulfills embeds.  */
    private batchDelete;
}
