// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`RestoreClusterFromSnapshot`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`cluster_name(impl ::std::convert::Into<String>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::cluster_name) / [`set_cluster_name(Option<String>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::set_cluster_name): <p>The name of the Elastic DocumentDB cluster.</p>
/// - [`snapshot_arn(impl ::std::convert::Into<String>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::snapshot_arn) / [`set_snapshot_arn(Option<String>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::set_snapshot_arn): <p>The arn of the Elastic DocumentDB snapshot.</p>
/// - [`vpc_security_group_ids(Vec<String>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::vpc_security_group_ids) / [`set_vpc_security_group_ids(Option<Vec<String>>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::set_vpc_security_group_ids): <p>A list of EC2 VPC security groups to associate with the Elastic DocumentDB cluster.</p>
/// - [`subnet_ids(Vec<String>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::subnet_ids) / [`set_subnet_ids(Option<Vec<String>>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::set_subnet_ids): <p>The Amazon EC2 subnet IDs for the Elastic DocumentDB cluster.</p>
/// - [`kms_key_id(impl ::std::convert::Into<String>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::kms_key_id) / [`set_kms_key_id(Option<String>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::set_kms_key_id): <p>The KMS key identifier to use to encrypt the new Elastic DocumentDB cluster.</p> <p>The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key.</p> <p>If an encryption key is not specified here, Elastic DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region.</p>
/// - [`tags(HashMap<String, String>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::tags) / [`set_tags(Option<HashMap<String, String>>)`](crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::set_tags): <p>A list of the tag names to be assigned to the restored DB cluster, in the form of an array of key-value pairs in which the key is the tag name and the value is the key value.</p>
/// - On success, responds with [`RestoreClusterFromSnapshotOutput`](crate::operation::restore_cluster_from_snapshot::RestoreClusterFromSnapshotOutput) with field(s):
/// - [`cluster(Option<Cluster>)`](crate::operation::restore_cluster_from_snapshot::RestoreClusterFromSnapshotOutput::cluster): <p>Returns information about a the restored Elastic DocumentDB cluster.</p>
/// - On failure, responds with [`SdkError<RestoreClusterFromSnapshotError>`](crate::operation::restore_cluster_from_snapshot::RestoreClusterFromSnapshotError)
pub fn restore_cluster_from_snapshot(
&self,
) -> crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder {
crate::operation::restore_cluster_from_snapshot::builders::RestoreClusterFromSnapshotFluentBuilder::new(self.handle.clone())
}
}