code: func expandClusterDasConfigInfo(d *schema.ResourceData, version viapi.VSphereVersion) *types.ClusterDasConfigInfo {
  	obj := &types.ClusterDasConfigInfo{
  		DefaultVmSettings:          expandClusterDasVMSettings(d, version),
  		Enabled:                    structure.GetBool(d, "ha_enabled"),
  		HBDatastoreCandidatePolicy: d.Get("ha_heartbeat_datastore_policy").(string),
  		HostMonitoring:             d.Get("ha_host_monitoring").(string),
  		Option:                     expandResourceVSphereComputeClusterDasAdvancedOptions(d),
  		VmMonitoring:               d.Get("ha_vm_monitoring").(string),
  		HeartbeatDatastore: structure.SliceInterfacesToManagedObjectReferences(
  			d.Get("ha_heartbeat_datastore_ids").(*schema.Set).List(),
  			"Datastore",
  		),
  	}
  
  	policy := d.Get("ha_admission_control_policy").(string)
  	if policy != clusterAdmissionControlTypeDisabled {
  		obj.AdmissionControlEnabled = structure.BoolPtr(true)
  	} else {
  		obj.AdmissionControlEnabled = structure.BoolPtr(false)
  	}
  	obj.AdmissionControlPolicy = expandBaseClusterDasAdmissionControlPolicy(d, policy, version)
  
  	if version.Newer(viapi.VSphereVersion{Product: version.Product, Major: 6}) {
  		obj.VmComponentProtecting = d.Get("ha_vm_component_protection").(string)
  	}
  
  	return obj
  }
docs: // expandClusterDasConfigInfo reads certain ResourceData keys and returns a
  // ClusterDasConfigInfo.