code: public GetTemplateResult withStagesAvailable(TemplateStage... stagesAvailable) {
          com.amazonaws.internal.SdkInternalList<String> stagesAvailableCopy = new com.amazonaws.internal.SdkInternalList<String>(stagesAvailable.length);
          for (TemplateStage value : stagesAvailable) {
              stagesAvailableCopy.add(value.toString());
          }
          if (getStagesAvailable() == null) {
              setStagesAvailable(stagesAvailableCopy);
          } else {
              getStagesAvailable().addAll(stagesAvailableCopy);
          }
          return this;
      }
docs: <p>
  The stage of the template that you can retrieve. For stacks, the <code>Original</code> and <code>Processed</code>
  templates are always available. For change sets, the <code>Original</code> template is always available. After
  AWS CloudFormation finishes creating the change set, the <code>Processed</code> template becomes available.
  </p>
  
  @param stagesAvailable
  The stage of the template that you can retrieve. For stacks, the <code>Original</code> and
  <code>Processed</code> templates are always available. For change sets, the <code>Original</code> template
  is always available. After AWS CloudFormation finishes creating the change set, the <code>Processed</code>
  template becomes available.
  @return Returns a reference to this object so that method calls can be chained together.
  @see TemplateStage