import { AtLeast } from '@codiac.io/codiac-common/contracts';
import { Probe, ProbeActionTypesEnum, ProbeCriteria, RootMap } from '../../../apis/codiac-api/contracts';
import { CommandBaseExec } from '../../../command-base-exec';
import { InteractionModes } from "../../../uilogic/config-ui-utils";
import { OutputFormatEnum } from '../../../cli-entities/output-format-enum';
import { IOutputStyler } from '../../../ops';
import { KvpStoreTypesEnum } from '../../../relay/contracts';
export type IProbeQuery = ProbeCriteria & {
    enterprise: string;
    outputFormat: OutputFormatEnum;
};
export declare class AssetProbeUiLogic {
    /** Determines an overall true/false result for the given input
     * over the given collection of individual boolean checks.  */
    static checkAll<T>(input: T, filters: ((x: T) => boolean)[]): boolean;
    /** COnverts to the name of the kvp store technology WITHOUT the cloud provider prefix.
     * eg: `azKeyVault` converts to `"Key Vault"`
     */
    static friendlyNameFor(type: KvpStoreTypesEnum): string;
    static actionTypeFor(entity: Probe): ProbeActionTypesEnum;
    static actionAbbrvFor(entity: Probe): string;
    static displayNameFor(entity: Probe, styler: IOutputStyler, hilite?: boolean): string;
}
export default class AssetProbeList extends CommandBaseExec<IProbeQuery> {
    static description: string;
    static examples: string[];
    /** The values that this command supports for the "type" flag.  */
    private static readonly STORE_TYPE_OPTIONS;
    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>;
        type: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        action: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        output: import("@oclif/core/lib/interfaces").OptionFlag<string, 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<IProbeQuery>, (InteractionModes | undefined), boolean]>;
    buildCandidate_silently(partial: AtLeast<IProbeQuery, "enterprise">, rootMap: RootMap): Promise<IProbeQuery | undefined>;
    buildCandidate_interactively(partial: AtLeast<IProbeQuery, "enterprise">, rootMap: RootMap, takeDefaults: boolean): Promise<IProbeQuery | undefined>;
    buildCommandString(candidate: IProbeQuery, cmd: string[]): string[];
    executeTask(candidate: IProbeQuery): Promise<void>;
    /** TODO: This method is generic.  Promote it to a shared utility lib. */
    private renderAs;
}
