// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`EnableFastLaunch`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`image_id(impl Into<String>)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::image_id) / [`set_image_id(Option<String>)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::set_image_id):<br>required: **true**<br><p>The ID of the image for which you’re enabling faster launching.</p><br>
/// - [`resource_type(impl Into<String>)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::resource_type) / [`set_resource_type(Option<String>)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::set_resource_type):<br>required: **false**<br><p>The type of resource to use for pre-provisioning the Windows AMI for faster launching. Supported values include: <code>snapshot</code>, which is the default value.</p><br>
/// - [`snapshot_configuration(FastLaunchSnapshotConfigurationRequest)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::snapshot_configuration) / [`set_snapshot_configuration(Option<FastLaunchSnapshotConfigurationRequest>)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::set_snapshot_configuration):<br>required: **false**<br><p>Configuration settings for creating and managing the snapshots that are used for pre-provisioning the Windows AMI for faster launching. The associated <code>ResourceType</code> must be <code>snapshot</code>.</p><br>
/// - [`launch_template(FastLaunchLaunchTemplateSpecificationRequest)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::launch_template) / [`set_launch_template(Option<FastLaunchLaunchTemplateSpecificationRequest>)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::set_launch_template):<br>required: **false**<br><p>The launch template to use when launching Windows instances from pre-provisioned snapshots. Launch template parameters can include either the name or ID of the launch template, but not both.</p><br>
/// - [`max_parallel_launches(i32)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::max_parallel_launches) / [`set_max_parallel_launches(Option<i32>)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::set_max_parallel_launches):<br>required: **false**<br><p>The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching. Value must be <code>6</code> or greater.</p><br>
/// - [`dry_run(bool)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::set_dry_run):<br>required: **false**<br><p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p><br>
/// - On success, responds with [`EnableFastLaunchOutput`](crate::operation::enable_fast_launch::EnableFastLaunchOutput) with field(s):
/// - [`image_id(Option<String>)`](crate::operation::enable_fast_launch::EnableFastLaunchOutput::image_id): <p>The image ID that identifies the Windows AMI for which faster launching was enabled.</p>
/// - [`resource_type(Option<FastLaunchResourceType>)`](crate::operation::enable_fast_launch::EnableFastLaunchOutput::resource_type): <p>The type of resource that was defined for pre-provisioning the Windows AMI for faster launching.</p>
/// - [`snapshot_configuration(Option<FastLaunchSnapshotConfigurationResponse>)`](crate::operation::enable_fast_launch::EnableFastLaunchOutput::snapshot_configuration): <p>Settings to create and manage the pre-provisioned snapshots that Amazon EC2 uses for faster launches from the Windows AMI. This property is returned when the associated <code>resourceType</code> is <code>snapshot</code>.</p>
/// - [`launch_template(Option<FastLaunchLaunchTemplateSpecificationResponse>)`](crate::operation::enable_fast_launch::EnableFastLaunchOutput::launch_template): <p>The launch template that is used when launching Windows instances from pre-provisioned snapshots.</p>
/// - [`max_parallel_launches(Option<i32>)`](crate::operation::enable_fast_launch::EnableFastLaunchOutput::max_parallel_launches): <p>The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching.</p>
/// - [`owner_id(Option<String>)`](crate::operation::enable_fast_launch::EnableFastLaunchOutput::owner_id): <p>The owner ID for the Windows AMI for which faster launching was enabled.</p>
/// - [`state(Option<FastLaunchStateCode>)`](crate::operation::enable_fast_launch::EnableFastLaunchOutput::state): <p>The current state of faster launching for the specified Windows AMI.</p>
/// - [`state_transition_reason(Option<String>)`](crate::operation::enable_fast_launch::EnableFastLaunchOutput::state_transition_reason): <p>The reason that the state changed for faster launching for the Windows AMI.</p>
/// - [`state_transition_time(Option<DateTime>)`](crate::operation::enable_fast_launch::EnableFastLaunchOutput::state_transition_time): <p>The time that the state changed for faster launching for the Windows AMI.</p>
/// - On failure, responds with [`SdkError<EnableFastLaunchError>`](crate::operation::enable_fast_launch::EnableFastLaunchError)
pub fn enable_fast_launch(&self) -> crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder {
crate::operation::enable_fast_launch::builders::EnableFastLaunchFluentBuilder::new(self.handle.clone())
}
}