import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * Represents a connected cluster.
 *
 * Uses Azure REST API version 2024-02-01-preview. In version 2.x of the Azure Native provider, it used API version 2022-05-01-preview.
 *
 * Other available API versions: 2021-04-01-preview, 2021-10-01, 2022-05-01-preview, 2022-10-01-preview, 2023-11-01-preview, 2024-01-01, 2024-06-01-preview, 2024-07-01-preview, 2024-07-15-preview, 2024-12-01-preview, 2025-08-01-preview, 2025-12-01-preview. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native kubernetes [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare class ConnectedCluster extends pulumi.CustomResource {
    /**
     * Get an existing ConnectedCluster resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ConnectedCluster;
    /**
     * Returns true if the given object is an instance of ConnectedCluster.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is ConnectedCluster;
    /**
     * AAD profile for the connected cluster.
     */
    readonly aadProfile: pulumi.Output<outputs.kubernetes.AadProfileResponse | undefined>;
    /**
     * Base64 encoded public certificate used by the agent to do the initial handshake to the backend services in Azure.
     */
    readonly agentPublicKeyCertificate: pulumi.Output<string>;
    /**
     * Version of the agent running on the connected cluster resource
     */
    readonly agentVersion: pulumi.Output<string>;
    /**
     * Arc agentry configuration for the provisioned cluster.
     */
    readonly arcAgentProfile: pulumi.Output<outputs.kubernetes.ArcAgentProfileResponse | undefined>;
    /**
     * The Azure API version of the resource.
     */
    readonly azureApiVersion: pulumi.Output<string>;
    /**
     * Indicates whether Azure Hybrid Benefit is opted in
     */
    readonly azureHybridBenefit: pulumi.Output<string | undefined>;
    /**
     * Represents the connectivity status of the connected cluster.
     */
    readonly connectivityStatus: pulumi.Output<string>;
    /**
     * The Kubernetes distribution running on this connected cluster.
     */
    readonly distribution: pulumi.Output<string | undefined>;
    /**
     * The Kubernetes distribution version on this connected cluster.
     */
    readonly distributionVersion: pulumi.Output<string | undefined>;
    /**
     * The identity of the connected cluster.
     */
    readonly identity: pulumi.Output<outputs.kubernetes.ConnectedClusterIdentityResponse>;
    /**
     * The infrastructure on which the Kubernetes cluster represented by this connected cluster is running on.
     */
    readonly infrastructure: pulumi.Output<string | undefined>;
    /**
     * The kind of connected cluster.
     */
    readonly kind: pulumi.Output<string | undefined>;
    /**
     * The Kubernetes version of the connected cluster resource
     */
    readonly kubernetesVersion: pulumi.Output<string>;
    /**
     * Time representing the last instance when heart beat was received from the cluster
     */
    readonly lastConnectivityTime: pulumi.Output<string>;
    /**
     * The geo-location where the resource lives
     */
    readonly location: pulumi.Output<string>;
    /**
     * Expiration time of the managed identity certificate
     */
    readonly managedIdentityCertificateExpirationTime: pulumi.Output<string>;
    /**
     * More properties related to the Connected Cluster
     */
    readonly miscellaneousProperties: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * The name of the resource
     */
    readonly name: pulumi.Output<string>;
    /**
     * Connected cluster offering
     */
    readonly offering: pulumi.Output<string>;
    /**
     * The resource id of the private link scope this connected cluster is assigned to, if any.
     */
    readonly privateLinkScopeResourceId: pulumi.Output<string | undefined>;
    /**
     * Property which describes the state of private link on a connected cluster resource.
     */
    readonly privateLinkState: pulumi.Output<string | undefined>;
    /**
     * Provisioning state of the connected cluster resource.
     */
    readonly provisioningState: pulumi.Output<string | undefined>;
    /**
     * Metadata pertaining to creation and last modification of the resource
     */
    readonly systemData: pulumi.Output<outputs.kubernetes.SystemDataResponse>;
    /**
     * Resource tags.
     */
    readonly tags: pulumi.Output<{
        [key: string]: string;
    } | undefined>;
    /**
     * Number of CPU cores present in the connected cluster resource
     */
    readonly totalCoreCount: pulumi.Output<number>;
    /**
     * Number of nodes present in the connected cluster resource
     */
    readonly totalNodeCount: pulumi.Output<number>;
    /**
     * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     */
    readonly type: pulumi.Output<string>;
    /**
     * Create a ConnectedCluster resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: ConnectedClusterArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a ConnectedCluster resource.
 */
export interface ConnectedClusterArgs {
    /**
     * AAD profile for the connected cluster.
     */
    aadProfile?: pulumi.Input<inputs.kubernetes.AadProfileArgs>;
    /**
     * Base64 encoded public certificate used by the agent to do the initial handshake to the backend services in Azure.
     */
    agentPublicKeyCertificate: pulumi.Input<string>;
    /**
     * Arc agentry configuration for the provisioned cluster.
     */
    arcAgentProfile?: pulumi.Input<inputs.kubernetes.ArcAgentProfileArgs>;
    /**
     * Indicates whether Azure Hybrid Benefit is opted in
     */
    azureHybridBenefit?: pulumi.Input<string | enums.kubernetes.AzureHybridBenefit>;
    /**
     * The name of the Kubernetes cluster on which get is called.
     */
    clusterName?: pulumi.Input<string>;
    /**
     * The Kubernetes distribution running on this connected cluster.
     */
    distribution?: pulumi.Input<string>;
    /**
     * The Kubernetes distribution version on this connected cluster.
     */
    distributionVersion?: pulumi.Input<string>;
    /**
     * The identity of the connected cluster.
     */
    identity: pulumi.Input<inputs.kubernetes.ConnectedClusterIdentityArgs>;
    /**
     * The infrastructure on which the Kubernetes cluster represented by this connected cluster is running on.
     */
    infrastructure?: pulumi.Input<string>;
    /**
     * The kind of connected cluster.
     */
    kind?: pulumi.Input<string | enums.kubernetes.ConnectedClusterKind>;
    /**
     * The geo-location where the resource lives
     */
    location?: pulumi.Input<string>;
    /**
     * The resource id of the private link scope this connected cluster is assigned to, if any.
     */
    privateLinkScopeResourceId?: pulumi.Input<string>;
    /**
     * Property which describes the state of private link on a connected cluster resource.
     */
    privateLinkState?: pulumi.Input<string | enums.kubernetes.PrivateLinkState>;
    /**
     * Provisioning state of the connected cluster resource.
     */
    provisioningState?: pulumi.Input<string | enums.kubernetes.ProvisioningState>;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: pulumi.Input<string>;
    /**
     * Resource tags.
     */
    tags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    }>;
}
