// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`DescribeJobTemplate`](crate::operation::describe_job_template::builders::DescribeJobTemplateFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`job_template_id(impl Into<String>)`](crate::operation::describe_job_template::builders::DescribeJobTemplateFluentBuilder::job_template_id) / [`set_job_template_id(Option<String>)`](crate::operation::describe_job_template::builders::DescribeJobTemplateFluentBuilder::set_job_template_id):<br>required: **true**<br><p>The unique identifier of the job template.</p><br>
/// - On success, responds with [`DescribeJobTemplateOutput`](crate::operation::describe_job_template::DescribeJobTemplateOutput) with field(s):
/// - [`job_template_arn(Option<String>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::job_template_arn): <p>The ARN of the job template.</p>
/// - [`job_template_id(Option<String>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::job_template_id): <p>The unique identifier of the job template.</p>
/// - [`description(Option<String>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::description): <p>A description of the job template.</p>
/// - [`document_source(Option<String>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::document_source): <p>An S3 link to the job document.</p>
/// - [`document(Option<String>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::document): <p>The job document.</p>
/// - [`created_at(Option<DateTime>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::created_at): <p>The time, in seconds since the epoch, when the job template was created.</p>
/// - [`presigned_url_config(Option<PresignedUrlConfig>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::presigned_url_config): <p>Configuration for pre-signed S3 URLs.</p>
/// - [`job_executions_rollout_config(Option<JobExecutionsRolloutConfig>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::job_executions_rollout_config): <p>Allows you to create a staged rollout of a job.</p>
/// - [`abort_config(Option<AbortConfig>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::abort_config): <p>The criteria that determine when and how a job abort takes place.</p>
/// - [`timeout_config(Option<TimeoutConfig>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::timeout_config): <p>Specifies the amount of time each device has to finish its execution of the job. A timer is started when the job execution status is set to <code>IN_PROGRESS</code>. If the job execution status is not set to another terminal state before the timer expires, it will be automatically set to <code>TIMED_OUT</code>.</p>
/// - [`job_executions_retry_config(Option<JobExecutionsRetryConfig>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::job_executions_retry_config): <p>The configuration that determines how many retries are allowed for each failure type for a job.</p>
/// - [`maintenance_windows(Option<Vec::<MaintenanceWindow>>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::maintenance_windows): <p>Allows you to configure an optional maintenance window for the rollout of a job document to all devices in the target group for a job.</p>
/// - [`destination_package_versions(Option<Vec::<String>>)`](crate::operation::describe_job_template::DescribeJobTemplateOutput::destination_package_versions): <p>The package version Amazon Resource Names (ARNs) that are installed on the device when the job successfully completes.</p> <p><b>Note:</b>The following Length Constraints relates to a single ARN. Up to 25 package version ARNs are allowed.</p>
/// - On failure, responds with [`SdkError<DescribeJobTemplateError>`](crate::operation::describe_job_template::DescribeJobTemplateError)
pub fn describe_job_template(&self) -> crate::operation::describe_job_template::builders::DescribeJobTemplateFluentBuilder {
crate::operation::describe_job_template::builders::DescribeJobTemplateFluentBuilder::new(self.handle.clone())
}
}