import { Command } from '@oclif/core';
import { AssetTypesEnum, RootMap } from '../../apis/codiac-api/contracts';
import { CommandBaseExec, IEnterpriseEntity } from '../../command-base-exec';
import { AtLeast } from '@codiac.io/codiac-common/contracts';
export type FlatAsset = {
    name: string;
    code: string;
    image: string;
    registry: string;
    registryProvider: string;
    hasIngress?: boolean | undefined;
    ingressInternal?: boolean | undefined;
    allowHttp?: boolean | undefined;
    disableHttps?: boolean | undefined;
    port: number | string;
    enterprise: string;
    product?: string | undefined;
    type?: AssetTypesEnum | undefined;
    routedWithoutName?: boolean | undefined;
};
type AssetListRequest = IEnterpriseEntity & {
    enterprise: string;
    assets: FlatAsset[];
};
export default class AssetList extends CommandBaseExec<AssetListRequest> {
    static description: string;
    private _outputFormat;
    private _query;
    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>;
        output: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
        query: 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>;
    };
    static args: {};
    static examples: Command.Example[];
    captureArgs(): Promise<[Partial<AssetListRequest>, boolean]>;
    buildCandidate_silently(partial: AtLeast<AssetListRequest, "enterprise">, rootMap: RootMap): Promise<AssetListRequest | undefined>;
    buildCandidate_interactively(partial: AtLeast<AssetListRequest, "enterprise">, rootMap: RootMap, takeDefaults: boolean): Promise<AssetListRequest | undefined>;
    buildCommandString(candidate: AssetListRequest, cmd: string[]): string[];
    executeTask(candidate: AssetListRequest): Promise<void>;
    private buildAssetListForText;
    private renderAssetDetails;
    private buildAssetTree;
    private flattenAsset;
}
export {};
