import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * The `scaleway.kubernetes.Cluster` data source is used to retrieve information about a Kubernetes Cluster.
 *
 * Refer to the Kubernetes [documentation](https://www.scaleway.com/en/docs/compute/kubernetes/) and [API documentation](https://www.scaleway.com/en/developers/api/kubernetes/) for more information.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get info by cluster id
 * const myKey = scaleway.kubernetes.getCluster({
 *     clusterId: "11111111-1111-1111-1111-111111111111",
 * });
 * ```
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get info by cluster name
 * const myKey = scaleway.kubernetes.getCluster({
 *     name: "my-cluster-name",
 * });
 * ```
 */
export declare function getCluster(args?: GetClusterArgs, opts?: pulumi.InvokeOptions): Promise<GetClusterResult>;
/**
 * A collection of arguments for invoking getCluster.
 */
export interface GetClusterArgs {
    /**
     * The cluster ID. Only one of `name` and `clusterId` should be specified.
     */
    clusterId?: string;
    /**
     * The cluster name. Only one of `name` and `clusterId` should be specified.
     */
    name?: string;
    /**
     * The ID of the project the cluster is associated with.
     */
    projectId?: string;
    /**
     * `region`) The region in which the cluster exists.
     */
    region?: string;
}
/**
 * A collection of values returned by getCluster.
 */
export interface GetClusterResult {
    /**
     * The list of [admission plugins](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/) enabled on the cluster.
     */
    readonly admissionPlugins: string[];
    readonly apiserverCertSans: string[];
    /**
     * The URL of the Kubernetes API server.
     */
    readonly apiserverUrl: string;
    /**
     * The auto upgrade configuration.
     */
    readonly autoUpgrades: outputs.kubernetes.GetClusterAutoUpgrade[];
    /**
     * The configuration options for the [Kubernetes cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler).
     */
    readonly autoscalerConfigs: outputs.kubernetes.GetClusterAutoscalerConfig[];
    readonly clusterId?: string;
    /**
     * The Container Network Interface (CNI) for the Kubernetes cluster.
     */
    readonly cni: string;
    /**
     * The creation date of the cluster.
     */
    readonly createdAt: string;
    /**
     * A description for the Kubernetes cluster.
     */
    readonly description: string;
    /**
     * The list of [feature gates](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) enabled on the cluster.
     */
    readonly featureGates: string[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly kubeconfigs: outputs.kubernetes.GetClusterKubeconfig[];
    readonly name?: string;
    readonly openIdConnectConfigs: outputs.kubernetes.GetClusterOpenIdConnectConfig[];
    /**
     * The ID of the organization the cluster is associated with.
     */
    readonly organizationId: string;
    readonly podCidr: string;
    /**
     * The ID of the private network of the cluster.
     */
    readonly privateNetworkId: string;
    readonly projectId?: string;
    /**
     * The region in which the cluster is.
     */
    readonly region?: string;
    readonly serviceCidr: string;
    readonly serviceDnsIp: string;
    /**
     * The status of the Kubernetes cluster.
     */
    readonly status: string;
    /**
     * The tags associated with the Kubernetes cluster.
     */
    readonly tags: string[];
    /**
     * The type of the Kubernetes cluster.
     */
    readonly type: string;
    /**
     * The last update date of the cluster.
     */
    readonly updatedAt: string;
    /**
     * True if a newer Kubernetes version is available.
     */
    readonly upgradeAvailable: boolean;
    readonly upgradePools: boolean;
    /**
     * The version of the Kubernetes cluster.
     */
    readonly version: string;
    /**
     * The DNS wildcard that points to all ready nodes.
     */
    readonly wildcardDns: string;
}
/**
 * The `scaleway.kubernetes.Cluster` data source is used to retrieve information about a Kubernetes Cluster.
 *
 * Refer to the Kubernetes [documentation](https://www.scaleway.com/en/docs/compute/kubernetes/) and [API documentation](https://www.scaleway.com/en/developers/api/kubernetes/) for more information.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get info by cluster id
 * const myKey = scaleway.kubernetes.getCluster({
 *     clusterId: "11111111-1111-1111-1111-111111111111",
 * });
 * ```
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // Get info by cluster name
 * const myKey = scaleway.kubernetes.getCluster({
 *     name: "my-cluster-name",
 * });
 * ```
 */
export declare function getClusterOutput(args?: GetClusterOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetClusterResult>;
/**
 * A collection of arguments for invoking getCluster.
 */
export interface GetClusterOutputArgs {
    /**
     * The cluster ID. Only one of `name` and `clusterId` should be specified.
     */
    clusterId?: pulumi.Input<string | undefined>;
    /**
     * The cluster name. Only one of `name` and `clusterId` should be specified.
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * The ID of the project the cluster is associated with.
     */
    projectId?: pulumi.Input<string | undefined>;
    /**
     * `region`) The region in which the cluster exists.
     */
    region?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getCluster.d.ts.map