import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Use this data source to query detailed information of vke addons
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 *
 * const default = volcengine.vke.getAddons({
 *     clusterIds: ["cccctv1vqtofp49d96ujg"],
 * });
 * ```
 */
/** @deprecated volcengine.vke.Addons has been deprecated in favor of volcengine.vke.getAddons */
export declare function addons(args?: AddonsArgs, opts?: pulumi.InvokeOptions): Promise<AddonsResult>;
/**
 * A collection of arguments for invoking Addons.
 */
export interface AddonsArgs {
    /**
     * The IDs of Cluster.
     */
    clusterIds?: string[];
    /**
     * ClientToken when the addon is created successfully. ClientToken is a string that guarantees the idempotency of the request. This string is passed in by the caller.
     */
    createClientToken?: string;
    /**
     * The deploy model, the value is `Managed` or `Unmanaged`.
     */
    deployModes?: string[];
    /**
     * The deploy node types, the value is `Node` or `VirtualNode`. Only effected when deployMode is `Unmanaged`.
     */
    deployNodeTypes?: string[];
    /**
     * A Name Regex of addon.
     */
    nameRegex?: string;
    /**
     * The Names of addons.
     */
    names?: string[];
    /**
     * File name where to save data source results.
     */
    outputFile?: string;
    /**
     * Array of addon states to filter.
     */
    statuses?: inputs.vke.AddonsStatus[];
    /**
     * The ClientToken when the last addon update succeeded. ClientToken is a string that guarantees the idempotency of the request. This string is passed in by the caller.
     */
    updateClientToken?: string;
}
/**
 * A collection of values returned by Addons.
 */
export interface AddonsResult {
    /**
     * The collection of addon query.
     */
    readonly addons: outputs.vke.AddonsAddon[];
    readonly clusterIds?: string[];
    readonly createClientToken?: string;
    readonly deployModes?: string[];
    readonly deployNodeTypes?: string[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly nameRegex?: string;
    readonly names?: string[];
    readonly outputFile?: string;
    readonly statuses?: outputs.vke.AddonsStatus[];
    /**
     * The total count of addon query.
     */
    readonly totalCount: number;
    readonly updateClientToken?: string;
}
/**
 * Use this data source to query detailed information of vke addons
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 *
 * const default = volcengine.vke.getAddons({
 *     clusterIds: ["cccctv1vqtofp49d96ujg"],
 * });
 * ```
 */
/** @deprecated volcengine.vke.Addons has been deprecated in favor of volcengine.vke.getAddons */
export declare function addonsOutput(args?: AddonsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<AddonsResult>;
/**
 * A collection of arguments for invoking Addons.
 */
export interface AddonsOutputArgs {
    /**
     * The IDs of Cluster.
     */
    clusterIds?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * ClientToken when the addon is created successfully. ClientToken is a string that guarantees the idempotency of the request. This string is passed in by the caller.
     */
    createClientToken?: pulumi.Input<string>;
    /**
     * The deploy model, the value is `Managed` or `Unmanaged`.
     */
    deployModes?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * The deploy node types, the value is `Node` or `VirtualNode`. Only effected when deployMode is `Unmanaged`.
     */
    deployNodeTypes?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * A Name Regex of addon.
     */
    nameRegex?: pulumi.Input<string>;
    /**
     * The Names of addons.
     */
    names?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * File name where to save data source results.
     */
    outputFile?: pulumi.Input<string>;
    /**
     * Array of addon states to filter.
     */
    statuses?: pulumi.Input<pulumi.Input<inputs.vke.AddonsStatusArgs>[]>;
    /**
     * The ClientToken when the last addon update succeeded. ClientToken is a string that guarantees the idempotency of the request. This string is passed in by the caller.
     */
    updateClientToken?: pulumi.Input<string>;
}
