code: public Organization withAvailablePolicyTypes(PolicyTypeSummary... availablePolicyTypes) {
          if (this.availablePolicyTypes == null) {
              setAvailablePolicyTypes(new java.util.ArrayList<PolicyTypeSummary>(availablePolicyTypes.length));
          }
          for (PolicyTypeSummary ele : availablePolicyTypes) {
              this.availablePolicyTypes.add(ele);
          }
          return this;
      }
docs: <p>
  A list of policy types that are enabled for this organization. For example, if your organization has all features
  enabled, then service control policies (SCPs) are included in the list.
  </p>
  <note>
  <p>
  Even if a policy type is shown as available in the organization, you can separately enable and disable them at
  the root level by using <a>EnablePolicyType</a> and <a>DisablePolicyType</a>. Use <a>ListRoots</a> to see the
  status of a policy type in that root.
  </p>
  </note>
  <p>
  <b>NOTE:</b> This method appends the values to the existing list (if any). Use
  {@link #setAvailablePolicyTypes(java.util.Collection)} or {@link #withAvailablePolicyTypes(java.util.Collection)}
  if you want to override the existing values.
  </p>
  
  @param availablePolicyTypes
  A list of policy types that are enabled for this organization. For example, if your organization has all
  features enabled, then service control policies (SCPs) are included in the list.</p> <note>
  <p>
  Even if a policy type is shown as available in the organization, you can separately enable and disable
  them at the root level by using <a>EnablePolicyType</a> and <a>DisablePolicyType</a>. Use <a>ListRoots</a>
  to see the status of a policy type in that root.
  </p>
  @return Returns a reference to this object so that method calls can be chained together.