import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This resource provides the Opensearch Cluster resource in Oracle Cloud Infrastructure Opensearch service.
 * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/opensearch/latest/OpensearchCluster
 *
 * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/opensearch
 *
 * Creates a new OpensearchCluster.
 *
 * ## Prerequisites
 *
 * The below policies must be created in compartment before creating OpensearchCluster
 *
 * ##### {Compartment-Name} - Name of  your compartment
 *
 * For latest documentation on OpenSearch use please refer to https://docs.oracle.com/en-us/iaas/Content/search-opensearch/home.htm\
 * Required permissions: https://docs.oracle.com/en-us/iaas/Content/search-opensearch/Concepts/ocisearchpermissions.htm
 *
 * ## Import
 *
 * OpensearchClusters can be imported using the `id`, e.g.
 *
 * ```sh
 * $ pulumi import oci:Opensearch/cluster:Cluster test_opensearch_cluster "id"
 * ```
 */
export declare class Cluster extends pulumi.CustomResource {
    /**
     * Get an existing Cluster 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?: ClusterState, opts?: pulumi.CustomResourceOptions): Cluster;
    /**
     * Returns true if the given object is an instance of Cluster.  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 Cluster;
    /**
     * The availability domains to distribute the cluser nodes across.
     */
    readonly availabilityDomains: pulumi.Output<string[]>;
    /**
     * (Updatable) Custom certificate config for customer provided certs.
     */
    readonly certificateConfig: pulumi.Output<outputs.Opensearch.ClusterCertificateConfig>;
    /**
     * The OCID of the compartment to create the cluster in.
     */
    readonly compartmentId: pulumi.Output<string>;
    /**
     * (Updatable) An optional property when incremented triggers Configure Outbound Cluster. Could be set to any integer value.
     */
    readonly configureOutboundClusterTrigger: pulumi.Output<number | undefined>;
    /**
     * (Updatable) The number of data nodes to configure for the cluster.
     */
    readonly dataNodeCount: pulumi.Output<number>;
    /**
     * The bare metal shape for the cluster's data nodes.
     */
    readonly dataNodeHostBareMetalShape: pulumi.Output<string>;
    /**
     * (Updatable) The amount of memory in GB, to configure per node for the cluster's data nodes.
     */
    readonly dataNodeHostMemoryGb: pulumi.Output<number>;
    /**
     * (Updatable) The number of OCPUs to configure for the cluster's data nodes.
     */
    readonly dataNodeHostOcpuCount: pulumi.Output<number>;
    /**
     * (Updatable) The node shape for the cluster's data nodes.
     */
    readonly dataNodeHostShape: pulumi.Output<string>;
    /**
     * TThe instance type for the cluster's data nodes.
     */
    readonly dataNodeHostType: pulumi.Output<string>;
    /**
     * (Updatable) The amount of storage in GB, to configure per node for the cluster's data nodes.
     */
    readonly dataNodeStorageGb: pulumi.Output<number>;
    /**
     * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
     */
    readonly definedTags: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * (Updatable) The name of the cluster. Avoid entering confidential information.
     */
    readonly displayName: pulumi.Output<string>;
    /**
     * The fully qualified domain name (FQDN) for the cluster's API endpoint.
     */
    readonly fqdn: pulumi.Output<string>;
    /**
     * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}`
     */
    readonly freeformTags: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * List of inbound clusters that will be queried using cross cluster search
     */
    readonly inboundClusterIds: pulumi.Output<string[]>;
    /**
     * Additional information about the current lifecycle state of the cluster.
     */
    readonly lifecycleDetails: pulumi.Output<string>;
    /**
     * (Updatable) This config is used to choose the load balancer service and bandwidth for OpenSearch and OpenDashboard load balancers.
     */
    readonly loadBalancerConfig: pulumi.Output<outputs.Opensearch.ClusterLoadBalancerConfig>;
    /**
     * (Updatable) Details for creation of maintenance details
     */
    readonly maintenanceDetails: pulumi.Output<outputs.Opensearch.ClusterMaintenanceDetails>;
    /**
     * (Updatable) The number of master nodes to configure for the cluster.
     */
    readonly masterNodeCount: pulumi.Output<number>;
    /**
     * The bare metal shape for the cluster's master nodes.
     */
    readonly masterNodeHostBareMetalShape: pulumi.Output<string>;
    /**
     * (Updatable) The amount of memory in GB, to configure per node for the cluster's master nodes.
     */
    readonly masterNodeHostMemoryGb: pulumi.Output<number>;
    /**
     * (Updatable) The number of OCPUs to configure for the cluser's master nodes.
     */
    readonly masterNodeHostOcpuCount: pulumi.Output<number>;
    /**
     * (Updatable) The node shape for the cluster's master nodes.
     */
    readonly masterNodeHostShape: pulumi.Output<string>;
    /**
     * The instance type for the cluster's master nodes.
     */
    readonly masterNodeHostType: pulumi.Output<string>;
    /**
     * (Updatable) The number of ML nodes configured for the cluster.
     */
    readonly mlNodeCount: pulumi.Output<number>;
    /**
     * (Updatable) The amount of memory in GB, for the cluster's ML nodes.
     */
    readonly mlNodeHostMemoryGb: pulumi.Output<number>;
    /**
     * (Updatable) The number of OCPUs configured for the cluster's ML nodes.
     */
    readonly mlNodeHostOcpuCount: pulumi.Output<number>;
    /**
     * (Updatable) The node shape for the cluster's ML nodes.
     */
    readonly mlNodeHostShape: pulumi.Output<string>;
    /**
     * The instance type for the cluster's ML nodes.
     */
    readonly mlNodeHostType: pulumi.Output<string>;
    /**
     * (Updatable) The amount of storage in GB, to configure per node for the cluster's ML nodes.
     */
    readonly mlNodeStorageGb: pulumi.Output<number>;
    /**
     * The OCID of the NSG where the private endpoint vnic will be attached.
     */
    readonly nsgId: pulumi.Output<string>;
    /**
     * The fully qualified domain name (FQDN) for the cluster's OpenSearch Dashboard API endpoint.
     */
    readonly opendashboardFqdn: pulumi.Output<string>;
    /**
     * (Updatable) The number of OpenSearch Dashboard nodes to configure for the cluster.
     */
    readonly opendashboardNodeCount: pulumi.Output<number>;
    /**
     * (Updatable) The amount of memory in GB, to configure for the cluster's OpenSearch Dashboard nodes.
     */
    readonly opendashboardNodeHostMemoryGb: pulumi.Output<number>;
    /**
     * (Updatable) The number of OCPUs to configure for the cluster's OpenSearch Dashboard nodes.
     */
    readonly opendashboardNodeHostOcpuCount: pulumi.Output<number>;
    /**
     * (Updatable) The node shape for the cluster's OpenSearch Dashboard nodes.
     */
    readonly opendashboardNodeHostShape: pulumi.Output<string>;
    /**
     * The private IP address for the cluster's OpenSearch Dashboard.
     */
    readonly opendashboardPrivateIp: pulumi.Output<string>;
    /**
     * The fully qualified domain name (FQDN) for the cluster's API endpoint.
     */
    readonly opensearchFqdn: pulumi.Output<string>;
    /**
     * The cluster's private IP address.
     */
    readonly opensearchPrivateIp: pulumi.Output<string>;
    /**
     * (Updatable) This configuration is used for passing request details to connect outbound cluster(s) to the inbound cluster (coordinating cluster)
     */
    readonly outboundClusterConfig: pulumi.Output<outputs.Opensearch.ClusterOutboundClusterConfig>;
    /**
     * (Updatable) The customer IP addresses of the endpoint in customer VCN
     */
    readonly reverseConnectionEndpointCustomerIps: pulumi.Output<string[]>;
    /**
     * The list of reverse connection endpoints.
     */
    readonly reverseConnectionEndpoints: pulumi.Output<outputs.Opensearch.ClusterReverseConnectionEndpoint[]>;
    /**
     * (Updatable) The number of search nodes configured for the cluster.
     */
    readonly searchNodeCount: pulumi.Output<number>;
    /**
     * (Updatable) The amount of memory in GB, for the cluster's search nodes.
     */
    readonly searchNodeHostMemoryGb: pulumi.Output<number>;
    /**
     * (Updatable) The number of OCPUs configured for the cluster's search nodes.
     */
    readonly searchNodeHostOcpuCount: pulumi.Output<number>;
    /**
     * (Updatable) The node shape for the cluster's search nodes.
     */
    readonly searchNodeHostShape: pulumi.Output<string>;
    /**
     * The instance type for the cluster's search nodes.
     */
    readonly searchNodeHostType: pulumi.Output<string>;
    /**
     * (Updatable) The amount of storage in GB, to configure per node for the cluster's search nodes.
     */
    readonly searchNodeStorageGb: pulumi.Output<number>;
    /**
     * (Updatable) Security attributes 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: `{"Oracle-ZPR": {"MaxEgressCount": {"value": "42", "mode": "enforce"}}}`
     */
    readonly securityAttributes: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * (Updatable) The name of the master user that are used to manage security config
     */
    readonly securityMasterUserName: pulumi.Output<string>;
    /**
     * (Updatable) The password hash of the master user that are used to manage security config
     */
    readonly securityMasterUserPasswordHash: pulumi.Output<string>;
    /**
     * (Updatable) The security mode of the cluster.
     */
    readonly securityMode: pulumi.Output<string>;
    /**
     * SAML policy is optionally used for Opensearch cluster to config SAML authentication
     */
    readonly securitySamlConfig: pulumi.Output<outputs.Opensearch.ClusterSecuritySamlConfig>;
    /**
     * (Updatable) The version of the software the cluster is running.
     */
    readonly softwareVersion: pulumi.Output<string>;
    /**
     * The current state of the cluster.
     */
    readonly state: pulumi.Output<string>;
    /**
     * The OCID for the compartment where the cluster's subnet is located.
     */
    readonly subnetCompartmentId: pulumi.Output<string>;
    /**
     * The OCID of the cluster's subnet.
     */
    readonly subnetId: pulumi.Output<string>;
    /**
     * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
     */
    readonly systemTags: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * The amount of time in milliseconds since the cluster was created.
     */
    readonly timeCreated: pulumi.Output<string>;
    /**
     * The amount of time in milliseconds since the cluster was updated.
     */
    readonly timeDeleted: pulumi.Output<string>;
    /**
     * The amount of time in milliseconds since the cluster was updated.
     */
    readonly timeUpdated: pulumi.Output<string>;
    /**
     * The size in GB of the cluster's total storage.
     */
    readonly totalStorageGb: pulumi.Output<number>;
    /**
     * An optional property to upgrade the major version of the cluster. This workflow upgrades the cluster without creating a clone. If you want to create a clone and upgrade the clone for testing please use SDK or CLI.
     *
     *
     * ** 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
     */
    readonly upgradeMajorVersionTrigger: pulumi.Output<number>;
    /**
     * The OCID for the compartment where the cluster's VCN is located.
     */
    readonly vcnCompartmentId: pulumi.Output<string>;
    /**
     * The OCID of the cluster's VCN.
     */
    readonly vcnId: pulumi.Output<string>;
    /**
     * Create a Cluster 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: ClusterArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering Cluster resources.
 */
export interface ClusterState {
    /**
     * The availability domains to distribute the cluser nodes across.
     */
    availabilityDomains?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * (Updatable) Custom certificate config for customer provided certs.
     */
    certificateConfig?: pulumi.Input<inputs.Opensearch.ClusterCertificateConfig | undefined>;
    /**
     * The OCID of the compartment to create the cluster in.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) An optional property when incremented triggers Configure Outbound Cluster. Could be set to any integer value.
     */
    configureOutboundClusterTrigger?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The number of data nodes to configure for the cluster.
     */
    dataNodeCount?: pulumi.Input<number | undefined>;
    /**
     * The bare metal shape for the cluster's data nodes.
     */
    dataNodeHostBareMetalShape?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The amount of memory in GB, to configure per node for the cluster's data nodes.
     */
    dataNodeHostMemoryGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The number of OCPUs to configure for the cluster's data nodes.
     */
    dataNodeHostOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The node shape for the cluster's data nodes.
     */
    dataNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * TThe instance type for the cluster's data nodes.
     */
    dataNodeHostType?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The amount of storage in GB, to configure per node for the cluster's data nodes.
     */
    dataNodeStorageGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
     */
    definedTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * (Updatable) The name of the cluster. Avoid entering confidential information.
     */
    displayName?: pulumi.Input<string | undefined>;
    /**
     * The fully qualified domain name (FQDN) for the cluster's API endpoint.
     */
    fqdn?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}`
     */
    freeformTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * List of inbound clusters that will be queried using cross cluster search
     */
    inboundClusterIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Additional information about the current lifecycle state of the cluster.
     */
    lifecycleDetails?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) This config is used to choose the load balancer service and bandwidth for OpenSearch and OpenDashboard load balancers.
     */
    loadBalancerConfig?: pulumi.Input<inputs.Opensearch.ClusterLoadBalancerConfig | undefined>;
    /**
     * (Updatable) Details for creation of maintenance details
     */
    maintenanceDetails?: pulumi.Input<inputs.Opensearch.ClusterMaintenanceDetails | undefined>;
    /**
     * (Updatable) The number of master nodes to configure for the cluster.
     */
    masterNodeCount?: pulumi.Input<number | undefined>;
    /**
     * The bare metal shape for the cluster's master nodes.
     */
    masterNodeHostBareMetalShape?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The amount of memory in GB, to configure per node for the cluster's master nodes.
     */
    masterNodeHostMemoryGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The number of OCPUs to configure for the cluser's master nodes.
     */
    masterNodeHostOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The node shape for the cluster's master nodes.
     */
    masterNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * The instance type for the cluster's master nodes.
     */
    masterNodeHostType?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The number of ML nodes configured for the cluster.
     */
    mlNodeCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The amount of memory in GB, for the cluster's ML nodes.
     */
    mlNodeHostMemoryGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The number of OCPUs configured for the cluster's ML nodes.
     */
    mlNodeHostOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The node shape for the cluster's ML nodes.
     */
    mlNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * The instance type for the cluster's ML nodes.
     */
    mlNodeHostType?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The amount of storage in GB, to configure per node for the cluster's ML nodes.
     */
    mlNodeStorageGb?: pulumi.Input<number | undefined>;
    /**
     * The OCID of the NSG where the private endpoint vnic will be attached.
     */
    nsgId?: pulumi.Input<string | undefined>;
    /**
     * The fully qualified domain name (FQDN) for the cluster's OpenSearch Dashboard API endpoint.
     */
    opendashboardFqdn?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The number of OpenSearch Dashboard nodes to configure for the cluster.
     */
    opendashboardNodeCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The amount of memory in GB, to configure for the cluster's OpenSearch Dashboard nodes.
     */
    opendashboardNodeHostMemoryGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The number of OCPUs to configure for the cluster's OpenSearch Dashboard nodes.
     */
    opendashboardNodeHostOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The node shape for the cluster's OpenSearch Dashboard nodes.
     */
    opendashboardNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * The private IP address for the cluster's OpenSearch Dashboard.
     */
    opendashboardPrivateIp?: pulumi.Input<string | undefined>;
    /**
     * The fully qualified domain name (FQDN) for the cluster's API endpoint.
     */
    opensearchFqdn?: pulumi.Input<string | undefined>;
    /**
     * The cluster's private IP address.
     */
    opensearchPrivateIp?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) This configuration is used for passing request details to connect outbound cluster(s) to the inbound cluster (coordinating cluster)
     */
    outboundClusterConfig?: pulumi.Input<inputs.Opensearch.ClusterOutboundClusterConfig | undefined>;
    /**
     * (Updatable) The customer IP addresses of the endpoint in customer VCN
     */
    reverseConnectionEndpointCustomerIps?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * The list of reverse connection endpoints.
     */
    reverseConnectionEndpoints?: pulumi.Input<pulumi.Input<inputs.Opensearch.ClusterReverseConnectionEndpoint>[] | undefined>;
    /**
     * (Updatable) The number of search nodes configured for the cluster.
     */
    searchNodeCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The amount of memory in GB, for the cluster's search nodes.
     */
    searchNodeHostMemoryGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The number of OCPUs configured for the cluster's search nodes.
     */
    searchNodeHostOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The node shape for the cluster's search nodes.
     */
    searchNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * The instance type for the cluster's search nodes.
     */
    searchNodeHostType?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The amount of storage in GB, to configure per node for the cluster's search nodes.
     */
    searchNodeStorageGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) Security attributes 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: `{"Oracle-ZPR": {"MaxEgressCount": {"value": "42", "mode": "enforce"}}}`
     */
    securityAttributes?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * (Updatable) The name of the master user that are used to manage security config
     */
    securityMasterUserName?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The password hash of the master user that are used to manage security config
     */
    securityMasterUserPasswordHash?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The security mode of the cluster.
     */
    securityMode?: pulumi.Input<string | undefined>;
    /**
     * SAML policy is optionally used for Opensearch cluster to config SAML authentication
     */
    securitySamlConfig?: pulumi.Input<inputs.Opensearch.ClusterSecuritySamlConfig | undefined>;
    /**
     * (Updatable) The version of the software the cluster is running.
     */
    softwareVersion?: pulumi.Input<string | undefined>;
    /**
     * The current state of the cluster.
     */
    state?: pulumi.Input<string | undefined>;
    /**
     * The OCID for the compartment where the cluster's subnet is located.
     */
    subnetCompartmentId?: pulumi.Input<string | undefined>;
    /**
     * The OCID of the cluster's subnet.
     */
    subnetId?: pulumi.Input<string | undefined>;
    /**
     * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
     */
    systemTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * The amount of time in milliseconds since the cluster was created.
     */
    timeCreated?: pulumi.Input<string | undefined>;
    /**
     * The amount of time in milliseconds since the cluster was updated.
     */
    timeDeleted?: pulumi.Input<string | undefined>;
    /**
     * The amount of time in milliseconds since the cluster was updated.
     */
    timeUpdated?: pulumi.Input<string | undefined>;
    /**
     * The size in GB of the cluster's total storage.
     */
    totalStorageGb?: pulumi.Input<number | undefined>;
    /**
     * An optional property to upgrade the major version of the cluster. This workflow upgrades the cluster without creating a clone. If you want to create a clone and upgrade the clone for testing please use SDK or CLI.
     *
     *
     * ** 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
     */
    upgradeMajorVersionTrigger?: pulumi.Input<number | undefined>;
    /**
     * The OCID for the compartment where the cluster's VCN is located.
     */
    vcnCompartmentId?: pulumi.Input<string | undefined>;
    /**
     * The OCID of the cluster's VCN.
     */
    vcnId?: pulumi.Input<string | undefined>;
}
/**
 * The set of arguments for constructing a Cluster resource.
 */
export interface ClusterArgs {
    /**
     * (Updatable) Custom certificate config for customer provided certs.
     */
    certificateConfig?: pulumi.Input<inputs.Opensearch.ClusterCertificateConfig | undefined>;
    /**
     * The OCID of the compartment to create the cluster in.
     */
    compartmentId: pulumi.Input<string>;
    /**
     * (Updatable) An optional property when incremented triggers Configure Outbound Cluster. Could be set to any integer value.
     */
    configureOutboundClusterTrigger?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The number of data nodes to configure for the cluster.
     */
    dataNodeCount: pulumi.Input<number>;
    /**
     * The bare metal shape for the cluster's data nodes.
     */
    dataNodeHostBareMetalShape?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The amount of memory in GB, to configure per node for the cluster's data nodes.
     */
    dataNodeHostMemoryGb: pulumi.Input<number>;
    /**
     * (Updatable) The number of OCPUs to configure for the cluster's data nodes.
     */
    dataNodeHostOcpuCount: pulumi.Input<number>;
    /**
     * (Updatable) The node shape for the cluster's data nodes.
     */
    dataNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * TThe instance type for the cluster's data nodes.
     */
    dataNodeHostType: pulumi.Input<string>;
    /**
     * (Updatable) The amount of storage in GB, to configure per node for the cluster's data nodes.
     */
    dataNodeStorageGb: pulumi.Input<number>;
    /**
     * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
     */
    definedTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * (Updatable) The name of the cluster. Avoid entering confidential information.
     */
    displayName: pulumi.Input<string>;
    /**
     * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}`
     */
    freeformTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * List of inbound clusters that will be queried using cross cluster search
     */
    inboundClusterIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * (Updatable) This config is used to choose the load balancer service and bandwidth for OpenSearch and OpenDashboard load balancers.
     */
    loadBalancerConfig?: pulumi.Input<inputs.Opensearch.ClusterLoadBalancerConfig | undefined>;
    /**
     * (Updatable) Details for creation of maintenance details
     */
    maintenanceDetails?: pulumi.Input<inputs.Opensearch.ClusterMaintenanceDetails | undefined>;
    /**
     * (Updatable) The number of master nodes to configure for the cluster.
     */
    masterNodeCount: pulumi.Input<number>;
    /**
     * The bare metal shape for the cluster's master nodes.
     */
    masterNodeHostBareMetalShape?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The amount of memory in GB, to configure per node for the cluster's master nodes.
     */
    masterNodeHostMemoryGb: pulumi.Input<number>;
    /**
     * (Updatable) The number of OCPUs to configure for the cluser's master nodes.
     */
    masterNodeHostOcpuCount: pulumi.Input<number>;
    /**
     * (Updatable) The node shape for the cluster's master nodes.
     */
    masterNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * The instance type for the cluster's master nodes.
     */
    masterNodeHostType: pulumi.Input<string>;
    /**
     * (Updatable) The number of ML nodes configured for the cluster.
     */
    mlNodeCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The amount of memory in GB, for the cluster's ML nodes.
     */
    mlNodeHostMemoryGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The number of OCPUs configured for the cluster's ML nodes.
     */
    mlNodeHostOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The node shape for the cluster's ML nodes.
     */
    mlNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * The instance type for the cluster's ML nodes.
     */
    mlNodeHostType?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The amount of storage in GB, to configure per node for the cluster's ML nodes.
     */
    mlNodeStorageGb?: pulumi.Input<number | undefined>;
    /**
     * The OCID of the NSG where the private endpoint vnic will be attached.
     */
    nsgId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The number of OpenSearch Dashboard nodes to configure for the cluster.
     */
    opendashboardNodeCount: pulumi.Input<number>;
    /**
     * (Updatable) The amount of memory in GB, to configure for the cluster's OpenSearch Dashboard nodes.
     */
    opendashboardNodeHostMemoryGb: pulumi.Input<number>;
    /**
     * (Updatable) The number of OCPUs to configure for the cluster's OpenSearch Dashboard nodes.
     */
    opendashboardNodeHostOcpuCount: pulumi.Input<number>;
    /**
     * (Updatable) The node shape for the cluster's OpenSearch Dashboard nodes.
     */
    opendashboardNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) This configuration is used for passing request details to connect outbound cluster(s) to the inbound cluster (coordinating cluster)
     */
    outboundClusterConfig?: pulumi.Input<inputs.Opensearch.ClusterOutboundClusterConfig | undefined>;
    /**
     * (Updatable) The customer IP addresses of the endpoint in customer VCN
     */
    reverseConnectionEndpointCustomerIps?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * (Updatable) The number of search nodes configured for the cluster.
     */
    searchNodeCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The amount of memory in GB, for the cluster's search nodes.
     */
    searchNodeHostMemoryGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The number of OCPUs configured for the cluster's search nodes.
     */
    searchNodeHostOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The node shape for the cluster's search nodes.
     */
    searchNodeHostShape?: pulumi.Input<string | undefined>;
    /**
     * The instance type for the cluster's search nodes.
     */
    searchNodeHostType?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The amount of storage in GB, to configure per node for the cluster's search nodes.
     */
    searchNodeStorageGb?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) Security attributes 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: `{"Oracle-ZPR": {"MaxEgressCount": {"value": "42", "mode": "enforce"}}}`
     */
    securityAttributes?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * (Updatable) The name of the master user that are used to manage security config
     */
    securityMasterUserName?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The password hash of the master user that are used to manage security config
     */
    securityMasterUserPasswordHash?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The security mode of the cluster.
     */
    securityMode?: pulumi.Input<string | undefined>;
    /**
     * SAML policy is optionally used for Opensearch cluster to config SAML authentication
     */
    securitySamlConfig?: pulumi.Input<inputs.Opensearch.ClusterSecuritySamlConfig | undefined>;
    /**
     * (Updatable) The version of the software the cluster is running.
     */
    softwareVersion: pulumi.Input<string>;
    /**
     * The OCID for the compartment where the cluster's subnet is located.
     */
    subnetCompartmentId: pulumi.Input<string>;
    /**
     * The OCID of the cluster's subnet.
     */
    subnetId: pulumi.Input<string>;
    /**
     * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
     */
    systemTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * An optional property to upgrade the major version of the cluster. This workflow upgrades the cluster without creating a clone. If you want to create a clone and upgrade the clone for testing please use SDK or CLI.
     *
     *
     * ** 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
     */
    upgradeMajorVersionTrigger?: pulumi.Input<number | undefined>;
    /**
     * The OCID for the compartment where the cluster's VCN is located.
     */
    vcnCompartmentId: pulumi.Input<string>;
    /**
     * The OCID of the cluster's VCN.
     */
    vcnId: pulumi.Input<string>;
}
//# sourceMappingURL=cluster.d.ts.map