// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`ValidateTemplate`](crate::operation::validate_template::builders::ValidateTemplateFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`template_body(impl Into<String>)`](crate::operation::validate_template::builders::ValidateTemplateFluentBuilder::template_body) / [`set_template_body(Option<String>)`](crate::operation::validate_template::builders::ValidateTemplateFluentBuilder::set_template_body):<br>required: **false**<br><p>Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html">Template Anatomy</a> in the <i>CloudFormation User Guide</i>.</p> <p>Conditional: You must pass <code>TemplateURL</code> or <code>TemplateBody</code>. If both are passed, only <code>TemplateBody</code> is used.</p><br>
/// - [`template_url(impl Into<String>)`](crate::operation::validate_template::builders::ValidateTemplateFluentBuilder::template_url) / [`set_template_url(Option<String>)`](crate::operation::validate_template::builders::ValidateTemplateFluentBuilder::set_template_url):<br>required: **false**<br><p>Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems Manager document. For more information, go to <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html">Template Anatomy</a> in the <i>CloudFormation User Guide</i>.</p> <p>Conditional: You must pass <code>TemplateURL</code> or <code>TemplateBody</code>. If both are passed, only <code>TemplateBody</code> is used.</p><br>
/// - On success, responds with [`ValidateTemplateOutput`](crate::operation::validate_template::ValidateTemplateOutput) with field(s):
/// - [`parameters(Option<Vec::<TemplateParameter>>)`](crate::operation::validate_template::ValidateTemplateOutput::parameters): <p>A list of <code>TemplateParameter</code> structures.</p>
/// - [`description(Option<String>)`](crate::operation::validate_template::ValidateTemplateOutput::description): <p>The description found within the template.</p>
/// - [`capabilities(Option<Vec::<Capability>>)`](crate::operation::validate_template::ValidateTemplateOutput::capabilities): <p>The capabilities found within the template. If your template contains IAM resources, you must specify the CAPABILITY_IAM or CAPABILITY_NAMED_IAM value for this parameter when you use the <code>CreateStack</code> or <code>UpdateStack</code> actions with your template; otherwise, those actions return an InsufficientCapabilities error.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities">Acknowledging IAM Resources in CloudFormation Templates</a>.</p>
/// - [`capabilities_reason(Option<String>)`](crate::operation::validate_template::ValidateTemplateOutput::capabilities_reason): <p>The list of resources that generated the values in the <code>Capabilities</code> response element.</p>
/// - [`declared_transforms(Option<Vec::<String>>)`](crate::operation::validate_template::ValidateTemplateOutput::declared_transforms): <p>A list of the transforms that are declared in the template.</p>
/// - On failure, responds with [`SdkError<ValidateTemplateError>`](crate::operation::validate_template::ValidateTemplateError)
pub fn validate_template(&self) -> crate::operation::validate_template::builders::ValidateTemplateFluentBuilder {
crate::operation::validate_template::builders::ValidateTemplateFluentBuilder::new(self.handle.clone())
}
}