import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This resource provides the Esxi Host resource in Oracle Cloud Infrastructure Oracle Cloud VMware Solution service.
 * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/vmware/latest/EsxiHost
 *
 * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/ocvp
 *
 * Adds another ESXi host to an existing SDDC. The attributes of the specified
 * `Sddc` determine the VMware software and other configuration settings used
 * by the ESXi host.
 *
 * Use the [WorkRequest](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/WorkRequest/) operations to track the
 * creation of the ESXi host.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testEsxiHost = new oci.ocvp.EsxiHost("test_esxi_host", {
 *     clusterId: testCluster.id,
 *     billingDonorHostId: testBillingDonorHost.id,
 *     capacityReservationId: testCapacityReservation.id,
 *     computeAvailabilityDomain: esxiHostComputeAvailabilityDomain,
 *     currentCommitment: esxiHostCurrentCommitment,
 *     definedTags: {
 *         "Operations.CostCenter": "42",
 *     },
 *     displayName: esxiHostDisplayName,
 *     esxiSoftwareVersion: esxiHostEsxiSoftwareVersion,
 *     freeformTags: {
 *         Department: "Finance",
 *     },
 *     hostOcpuCount: esxiHostHostOcpuCount,
 *     hostShapeName: testShape.name,
 *     isVsanByolEnabled: esxiHostIsVsanByolEnabled === "true",
 *     nextCommitment: esxiHostNextCommitment,
 *     vcfByolAllocationId: testByolAllocation.id,
 * });
 * ```
 *
 * ## How to migrate from deprecated fields to new fields
 *
 * 1. Before starting migration, back up your terraform state file.
 * 2. Get the ESXi host OCID for the `oci.Ocvp.EsxiHost` resource you plan to migrate.
 * 3. Remove the `oci.Ocvp.EsxiHost` resource from Terraform state via command: terraform state rm \<resource address\>
 * 4. Update `oci.Ocvp.EsxiHost` resource config. Remove all deprecated fields and add corresponding new fields to the resource config.
 * 5. Import `oci.Ocvp.EsxiHost` resource to Terraform state using command: terraform import \<resource address\> \<ESXi host OCID\>.
 * 6. Run `pulumi preview` to check if there is any planned change for `oci.Ocvp.EsxiHost` resource. If there is any planned change, update `oci.Ocvp.EsxiHost` resource config until there is no planned change.
 *
 * ## Import
 *
 * EsxiHosts can be imported using the `id`, e.g.
 *
 * ```sh
 * $ pulumi import oci:Ocvp/esxiHost:EsxiHost test_esxi_host "id"
 * ```
 */
export declare class EsxiHost extends pulumi.CustomResource {
    /**
     * Get an existing EsxiHost 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 state Any extra arguments used during the lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, state?: EsxiHostState, opts?: pulumi.CustomResourceOptions): EsxiHost;
    /**
     * Returns true if the given object is an instance of EsxiHost.  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 EsxiHost;
    readonly attachDatastoreClusterIds: pulumi.Output<string[] | undefined>;
    /**
     * Current billing cycle end date. If the value in `currentCommitment` and `nextCommitment` are different, the value specified in `nextCommitment` becomes the new `currentCommitment` when the `contractEndDate` is reached. Example: `2016-08-25T21:10:29.600Z`
     */
    readonly billingContractEndDate: pulumi.Output<string>;
    /**
     * (Optional) (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the deleted ESXi Host with LeftOver billing cycle.
     *
     * @deprecated This 'billing_donor_host_id' argument has been deprecated and will be computed only.
     */
    readonly billingDonorHostId: pulumi.Output<string>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Capacity Reservation.
     */
    readonly capacityReservationId: pulumi.Output<string>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Cluster to add the ESXi host to.
     */
    readonly clusterId: pulumi.Output<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment that contains the Cluster.
     */
    readonly compartmentId: pulumi.Output<string>;
    /**
     * The availability domain to create the ESXi host in. If keep empty, for AD-specific Cluster, new ESXi host will be created in the same availability domain; for multi-AD Cluster, new ESXi host will be auto assigned to the next availability domain following evenly distribution strategy.
     */
    readonly computeAvailabilityDomain: pulumi.Output<string>;
    /**
     * In terms of implementation, an ESXi host is a Compute instance that is configured with the chosen bundle of VMware software. The `computeInstanceId` is the [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of that Compute instance.
     */
    readonly computeInstanceId: pulumi.Output<string>;
    /**
     * The billing option currently used by the ESXi host. [ListSupportedCommitments](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedCommitmentSummary/ListSupportedCommitments).
     */
    readonly currentCommitment: pulumi.Output<string>;
    /**
     * (Optional) The billing option currently used by the ESXi host. It is only effective during resource creation. Changes to its value after creation will be ignored. [ListSupportedSkus](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20200501/SupportedSkuSummary/ListSupportedSkus). **Deprecated**. Please use `currentCommitment` instead.
     *
     * @deprecated The 'current_sku' field has been deprecated. It is no longer supported.
     */
    readonly currentSku: pulumi.Output<string>;
    /**
     * List of DatastoreAttachment objects containing information about attachment details
     */
    readonly datastoreAttachments: pulumi.Output<outputs.Ocvp.EsxiHostDatastoreAttachment[]>;
    /**
     * A list of datastore clusters.
     */
    readonly datastoreClusterIds: pulumi.Output<string[]>;
    /**
     * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
     */
    readonly definedTags: pulumi.Output<{
        [key: string]: string;
    }>;
    readonly detachDatastoreClusterIds: pulumi.Output<string[] | undefined>;
    /**
     * (Updatable) A descriptive name for the ESXi host. It's changeable. Esxi Host name requirements are 1-25 character length limit, Must start with a letter,  Must be English letters, numbers, - only, No repeating hyphens, Must be unique within the Cluster.
     *
     * If this attribute is not specified, the Cluster's `instanceDisplayNamePrefix` attribute is used to name and incrementally number the ESXi host. For example, if you're creating the fourth ESXi host in the Cluster, and `instanceDisplayNamePrefix` is `MyCluster`, the host's display name is `MyCluster-4`.
     *
     * Avoid entering confidential information.
     */
    readonly displayName: pulumi.Output<string>;
    /**
     * (Updatable) The ESXi software bundle to install on the ESXi host.  Only versions under the same vmwareSoftwareVersion and have been validate by Oracle Cloud VMware Solution will be accepted. To get a list of the available versions, use [ListSupportedVmwareSoftwareVersions](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedVmwareSoftwareVersionSummary/ListSupportedVmwareSoftwareVersions).
     */
    readonly esxiSoftwareVersion: pulumi.Output<string>;
    /**
     * (Optional) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ESXi host that is failed. This is an optional parameter. If this parameter is specified, a new ESXi host will be created to replace the failed one, and the `failedEsxiHostId` field will be updated in the newly created Esxi host.
     *
     * @deprecated This 'failed_esxi_host_id' argument has been deprecated and will be computed only.
     */
    readonly failedEsxiHostId: pulumi.Output<string>;
    /**
     * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
     */
    readonly freeformTags: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * The date and time when the new esxi host should start billing cycle. [RFC3339](https://tools.ietf.org/html/rfc3339). Example: `2021-07-25T21:10:29.600Z`
     */
    readonly gracePeriodEndDate: pulumi.Output<string>;
    /**
     * The OCPU count of the ESXi host.
     */
    readonly hostOcpuCount: pulumi.Output<number>;
    /**
     * The compute shape name of the ESXi host. [ListSupportedHostShapes](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedHostShapes/ListSupportedHostShapes).
     */
    readonly hostShapeName: pulumi.Output<string>;
    /**
     * Indicates whether this host is in the progress of billing continuation.
     */
    readonly isBillingContinuationInProgress: pulumi.Output<boolean>;
    /**
     * Indicates whether this host is in the progress of swapping billing.
     */
    readonly isBillingSwappingInProgress: pulumi.Output<boolean>;
    /**
     * (Updatable) Indicates whether this host embedded VMware vSAN with BYOL Allocation.
     */
    readonly isVsanByolEnabled: pulumi.Output<boolean>;
    /**
     * (Updatable) The billing option to switch to after the existing billing cycle ends. If `nextCommitment` is null or empty, `currentCommitment` continues to the next billing cycle. [ListSupportedCommitments](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedCommitmentSummary/ListSupportedCommitments).
     */
    readonly nextCommitment: pulumi.Output<string>;
    /**
     * (Optional) (Updatable) The billing option to switch to after the existing billing cycle ends. If `nextSku` is null or empty, `currentSku` continues to the next billing cycle. In case of [SwapBilling](https://docs.oracle.com/en-us/iaas/api/#/en/vmware/20200501/EsxiHost/SwapBilling) which is not supported by Terraform, its value may be swapped with the other ESXi host. In this case, `nextSku` needs to be updated manually for both ESXi hosts in Terraform config to match the updated values. [ListSupportedSkus](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20200501/SupportedSkuSummary/ListSupportedSkus).  **Deprecated**. Please use `nextCommitment` instead.
     *
     * @deprecated The 'next_sku' field has been deprecated. It is no longer supported.
     */
    readonly nextSku: pulumi.Output<string>;
    /**
     * (Optional) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ESXi host that will be upgraded. This is an optional parameter. If this parameter is specified, an ESXi host with the new software version is created to replace the original one, and the `nonUpgradedEsxiHostId` field is updated in the newly created Esxi host. See [Upgrading VMware Software](https://docs.cloud.oracle.com/iaas/Content/VMware/Concepts/upgrade.htm) for more information.
     *
     * @deprecated This 'non_upgraded_esxi_host_id' argument has been deprecated and will be computed only.
     */
    readonly nonUpgradedEsxiHostId: pulumi.Output<string>;
    readonly primaryVnicMacAddress: pulumi.Output<string>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the esxi host that is newly created to replace the failed node.
     */
    readonly replacementEsxiHostId: pulumi.Output<string>;
    /**
     * (Optional) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SDDC to add the ESXi host to. This field has been deprecated. Please use `clusterId` instead. Either `sddcId` or `clusterId` must be configured for `oci.Ocvp.EsxiHost` resource.  **Deprecated**. Please use `clusterId` instead.
     *
     *
     * ** IMPORTANT **
     * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
     *
     * @deprecated The 'sddc_id' field has been deprecated. Please use 'cluster_id' instead.
     */
    readonly sddcId: pulumi.Output<string | undefined>;
    /**
     * The current state of the ESXi host.
     */
    readonly state: pulumi.Output<string>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the active ESXi Host to swap billing with current host.
     */
    readonly swapBillingHostId: pulumi.Output<string>;
    /**
     * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{orcl-cloud: {free-tier-retain: true}}`
     */
    readonly systemTags: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * The date and time the ESXi host was created, in the format defined by [RFC3339](https://tools.ietf.org/html/rfc3339).  Example: `2016-08-25T21:10:29.600Z`
     */
    readonly timeCreated: pulumi.Output<string>;
    /**
     * The date and time the ESXi host was updated, in the format defined by [RFC3339](https://tools.ietf.org/html/rfc3339).
     */
    readonly timeUpdated: pulumi.Output<string>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ESXi host that is newly created to upgrade the original host.
     */
    readonly upgradedReplacementEsxiHostId: pulumi.Output<string>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Byol Allocation for VCF (VMware Cloud Foundation) deployment.
     */
    readonly vcfByolAllocationId: pulumi.Output<string>;
    /**
     * The version of VMware software that Oracle Cloud VMware Solution installed on the ESXi hosts.
     */
    readonly vmwareSoftwareVersion: pulumi.Output<string>;
    /**
     * Create a EsxiHost 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?: EsxiHostArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering EsxiHost resources.
 */
export interface EsxiHostState {
    attachDatastoreClusterIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Current billing cycle end date. If the value in `currentCommitment` and `nextCommitment` are different, the value specified in `nextCommitment` becomes the new `currentCommitment` when the `contractEndDate` is reached. Example: `2016-08-25T21:10:29.600Z`
     */
    billingContractEndDate?: pulumi.Input<string | undefined>;
    /**
     * (Optional) (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the deleted ESXi Host with LeftOver billing cycle.
     *
     * @deprecated This 'billing_donor_host_id' argument has been deprecated and will be computed only.
     */
    billingDonorHostId?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Capacity Reservation.
     */
    capacityReservationId?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Cluster to add the ESXi host to.
     */
    clusterId?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment that contains the Cluster.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    /**
     * The availability domain to create the ESXi host in. If keep empty, for AD-specific Cluster, new ESXi host will be created in the same availability domain; for multi-AD Cluster, new ESXi host will be auto assigned to the next availability domain following evenly distribution strategy.
     */
    computeAvailabilityDomain?: pulumi.Input<string | undefined>;
    /**
     * In terms of implementation, an ESXi host is a Compute instance that is configured with the chosen bundle of VMware software. The `computeInstanceId` is the [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of that Compute instance.
     */
    computeInstanceId?: pulumi.Input<string | undefined>;
    /**
     * The billing option currently used by the ESXi host. [ListSupportedCommitments](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedCommitmentSummary/ListSupportedCommitments).
     */
    currentCommitment?: pulumi.Input<string | undefined>;
    /**
     * (Optional) The billing option currently used by the ESXi host. It is only effective during resource creation. Changes to its value after creation will be ignored. [ListSupportedSkus](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20200501/SupportedSkuSummary/ListSupportedSkus). **Deprecated**. Please use `currentCommitment` instead.
     *
     * @deprecated The 'current_sku' field has been deprecated. It is no longer supported.
     */
    currentSku?: pulumi.Input<string | undefined>;
    /**
     * List of DatastoreAttachment objects containing information about attachment details
     */
    datastoreAttachments?: pulumi.Input<pulumi.Input<inputs.Ocvp.EsxiHostDatastoreAttachment>[] | undefined>;
    /**
     * A list of datastore clusters.
     */
    datastoreClusterIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
     */
    definedTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    detachDatastoreClusterIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * (Updatable) A descriptive name for the ESXi host. It's changeable. Esxi Host name requirements are 1-25 character length limit, Must start with a letter,  Must be English letters, numbers, - only, No repeating hyphens, Must be unique within the Cluster.
     *
     * If this attribute is not specified, the Cluster's `instanceDisplayNamePrefix` attribute is used to name and incrementally number the ESXi host. For example, if you're creating the fourth ESXi host in the Cluster, and `instanceDisplayNamePrefix` is `MyCluster`, the host's display name is `MyCluster-4`.
     *
     * Avoid entering confidential information.
     */
    displayName?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The ESXi software bundle to install on the ESXi host.  Only versions under the same vmwareSoftwareVersion and have been validate by Oracle Cloud VMware Solution will be accepted. To get a list of the available versions, use [ListSupportedVmwareSoftwareVersions](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedVmwareSoftwareVersionSummary/ListSupportedVmwareSoftwareVersions).
     */
    esxiSoftwareVersion?: pulumi.Input<string | undefined>;
    /**
     * (Optional) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ESXi host that is failed. This is an optional parameter. If this parameter is specified, a new ESXi host will be created to replace the failed one, and the `failedEsxiHostId` field will be updated in the newly created Esxi host.
     *
     * @deprecated This 'failed_esxi_host_id' argument has been deprecated and will be computed only.
     */
    failedEsxiHostId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
     */
    freeformTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * The date and time when the new esxi host should start billing cycle. [RFC3339](https://tools.ietf.org/html/rfc3339). Example: `2021-07-25T21:10:29.600Z`
     */
    gracePeriodEndDate?: pulumi.Input<string | undefined>;
    /**
     * The OCPU count of the ESXi host.
     */
    hostOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * The compute shape name of the ESXi host. [ListSupportedHostShapes](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedHostShapes/ListSupportedHostShapes).
     */
    hostShapeName?: pulumi.Input<string | undefined>;
    /**
     * Indicates whether this host is in the progress of billing continuation.
     */
    isBillingContinuationInProgress?: pulumi.Input<boolean | undefined>;
    /**
     * Indicates whether this host is in the progress of swapping billing.
     */
    isBillingSwappingInProgress?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Indicates whether this host embedded VMware vSAN with BYOL Allocation.
     */
    isVsanByolEnabled?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) The billing option to switch to after the existing billing cycle ends. If `nextCommitment` is null or empty, `currentCommitment` continues to the next billing cycle. [ListSupportedCommitments](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedCommitmentSummary/ListSupportedCommitments).
     */
    nextCommitment?: pulumi.Input<string | undefined>;
    /**
     * (Optional) (Updatable) The billing option to switch to after the existing billing cycle ends. If `nextSku` is null or empty, `currentSku` continues to the next billing cycle. In case of [SwapBilling](https://docs.oracle.com/en-us/iaas/api/#/en/vmware/20200501/EsxiHost/SwapBilling) which is not supported by Terraform, its value may be swapped with the other ESXi host. In this case, `nextSku` needs to be updated manually for both ESXi hosts in Terraform config to match the updated values. [ListSupportedSkus](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20200501/SupportedSkuSummary/ListSupportedSkus).  **Deprecated**. Please use `nextCommitment` instead.
     *
     * @deprecated The 'next_sku' field has been deprecated. It is no longer supported.
     */
    nextSku?: pulumi.Input<string | undefined>;
    /**
     * (Optional) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ESXi host that will be upgraded. This is an optional parameter. If this parameter is specified, an ESXi host with the new software version is created to replace the original one, and the `nonUpgradedEsxiHostId` field is updated in the newly created Esxi host. See [Upgrading VMware Software](https://docs.cloud.oracle.com/iaas/Content/VMware/Concepts/upgrade.htm) for more information.
     *
     * @deprecated This 'non_upgraded_esxi_host_id' argument has been deprecated and will be computed only.
     */
    nonUpgradedEsxiHostId?: pulumi.Input<string | undefined>;
    primaryVnicMacAddress?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the esxi host that is newly created to replace the failed node.
     */
    replacementEsxiHostId?: pulumi.Input<string | undefined>;
    /**
     * (Optional) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SDDC to add the ESXi host to. This field has been deprecated. Please use `clusterId` instead. Either `sddcId` or `clusterId` must be configured for `oci.Ocvp.EsxiHost` resource.  **Deprecated**. Please use `clusterId` instead.
     *
     *
     * ** IMPORTANT **
     * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
     *
     * @deprecated The 'sddc_id' field has been deprecated. Please use 'cluster_id' instead.
     */
    sddcId?: pulumi.Input<string | undefined>;
    /**
     * The current state of the ESXi host.
     */
    state?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the active ESXi Host to swap billing with current host.
     */
    swapBillingHostId?: pulumi.Input<string | undefined>;
    /**
     * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{orcl-cloud: {free-tier-retain: true}}`
     */
    systemTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * The date and time the ESXi host was created, in the format defined by [RFC3339](https://tools.ietf.org/html/rfc3339).  Example: `2016-08-25T21:10:29.600Z`
     */
    timeCreated?: pulumi.Input<string | undefined>;
    /**
     * The date and time the ESXi host was updated, in the format defined by [RFC3339](https://tools.ietf.org/html/rfc3339).
     */
    timeUpdated?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ESXi host that is newly created to upgrade the original host.
     */
    upgradedReplacementEsxiHostId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Byol Allocation for VCF (VMware Cloud Foundation) deployment.
     */
    vcfByolAllocationId?: pulumi.Input<string | undefined>;
    /**
     * The version of VMware software that Oracle Cloud VMware Solution installed on the ESXi hosts.
     */
    vmwareSoftwareVersion?: pulumi.Input<string | undefined>;
}
/**
 * The set of arguments for constructing a EsxiHost resource.
 */
export interface EsxiHostArgs {
    attachDatastoreClusterIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * (Optional) (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the deleted ESXi Host with LeftOver billing cycle.
     *
     * @deprecated This 'billing_donor_host_id' argument has been deprecated and will be computed only.
     */
    billingDonorHostId?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Capacity Reservation.
     */
    capacityReservationId?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Cluster to add the ESXi host to.
     */
    clusterId?: pulumi.Input<string | undefined>;
    /**
     * The availability domain to create the ESXi host in. If keep empty, for AD-specific Cluster, new ESXi host will be created in the same availability domain; for multi-AD Cluster, new ESXi host will be auto assigned to the next availability domain following evenly distribution strategy.
     */
    computeAvailabilityDomain?: pulumi.Input<string | undefined>;
    /**
     * (Optional) The billing option currently used by the ESXi host. It is only effective during resource creation. Changes to its value after creation will be ignored. [ListSupportedSkus](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20200501/SupportedSkuSummary/ListSupportedSkus). **Deprecated**. Please use `currentCommitment` instead.
     *
     * @deprecated The 'current_sku' field has been deprecated. It is no longer supported.
     */
    currentSku?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
     */
    definedTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    detachDatastoreClusterIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * (Updatable) A descriptive name for the ESXi host. It's changeable. Esxi Host name requirements are 1-25 character length limit, Must start with a letter,  Must be English letters, numbers, - only, No repeating hyphens, Must be unique within the Cluster.
     *
     * If this attribute is not specified, the Cluster's `instanceDisplayNamePrefix` attribute is used to name and incrementally number the ESXi host. For example, if you're creating the fourth ESXi host in the Cluster, and `instanceDisplayNamePrefix` is `MyCluster`, the host's display name is `MyCluster-4`.
     *
     * Avoid entering confidential information.
     */
    displayName?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The ESXi software bundle to install on the ESXi host.  Only versions under the same vmwareSoftwareVersion and have been validate by Oracle Cloud VMware Solution will be accepted. To get a list of the available versions, use [ListSupportedVmwareSoftwareVersions](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedVmwareSoftwareVersionSummary/ListSupportedVmwareSoftwareVersions).
     */
    esxiSoftwareVersion?: pulumi.Input<string | undefined>;
    /**
     * (Optional) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ESXi host that is failed. This is an optional parameter. If this parameter is specified, a new ESXi host will be created to replace the failed one, and the `failedEsxiHostId` field will be updated in the newly created Esxi host.
     *
     * @deprecated This 'failed_esxi_host_id' argument has been deprecated and will be computed only.
     */
    failedEsxiHostId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
     */
    freeformTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * The OCPU count of the ESXi host.
     */
    hostOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * The compute shape name of the ESXi host. [ListSupportedHostShapes](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20230701/SupportedHostShapes/ListSupportedHostShapes).
     */
    hostShapeName?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Indicates whether this host embedded VMware vSAN with BYOL Allocation.
     */
    isVsanByolEnabled?: pulumi.Input<boolean | undefined>;
    /**
     * (Optional) (Updatable) The billing option to switch to after the existing billing cycle ends. If `nextSku` is null or empty, `currentSku` continues to the next billing cycle. In case of [SwapBilling](https://docs.oracle.com/en-us/iaas/api/#/en/vmware/20200501/EsxiHost/SwapBilling) which is not supported by Terraform, its value may be swapped with the other ESXi host. In this case, `nextSku` needs to be updated manually for both ESXi hosts in Terraform config to match the updated values. [ListSupportedSkus](https://docs.cloud.oracle.com/iaas/api/#/en/vmware/20200501/SupportedSkuSummary/ListSupportedSkus).  **Deprecated**. Please use `nextCommitment` instead.
     *
     * @deprecated The 'next_sku' field has been deprecated. It is no longer supported.
     */
    nextSku?: pulumi.Input<string | undefined>;
    /**
     * (Optional) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the ESXi host that will be upgraded. This is an optional parameter. If this parameter is specified, an ESXi host with the new software version is created to replace the original one, and the `nonUpgradedEsxiHostId` field is updated in the newly created Esxi host. See [Upgrading VMware Software](https://docs.cloud.oracle.com/iaas/Content/VMware/Concepts/upgrade.htm) for more information.
     *
     * @deprecated This 'non_upgraded_esxi_host_id' argument has been deprecated and will be computed only.
     */
    nonUpgradedEsxiHostId?: pulumi.Input<string | undefined>;
    /**
     * (Optional) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the SDDC to add the ESXi host to. This field has been deprecated. Please use `clusterId` instead. Either `sddcId` or `clusterId` must be configured for `oci.Ocvp.EsxiHost` resource.  **Deprecated**. Please use `clusterId` instead.
     *
     *
     * ** IMPORTANT **
     * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
     *
     * @deprecated The 'sddc_id' field has been deprecated. Please use 'cluster_id' instead.
     */
    sddcId?: pulumi.Input<string | undefined>;
    /**
     * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{orcl-cloud: {free-tier-retain: true}}`
     */
    systemTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Byol Allocation for VCF (VMware Cloud Foundation) deployment.
     */
    vcfByolAllocationId?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=esxiHost.d.ts.map