// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`RestoreFromSnapshot`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`namespace_name(impl Into<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::namespace_name) / [`set_namespace_name(Option<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::set_namespace_name): <p>The name of the namespace to restore the snapshot to.</p>
/// - [`workgroup_name(impl Into<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::workgroup_name) / [`set_workgroup_name(Option<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::set_workgroup_name): <p>The name of the workgroup used to restore the snapshot.</p>
/// - [`snapshot_name(impl Into<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::snapshot_name) / [`set_snapshot_name(Option<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::set_snapshot_name): <p>The name of the snapshot to restore from. Must not be specified at the same time as <code>snapshotArn</code>.</p>
/// - [`snapshot_arn(impl Into<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::snapshot_arn) / [`set_snapshot_arn(Option<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::set_snapshot_arn): <p>The Amazon Resource Name (ARN) of the snapshot to restore from. Required if restoring from Amazon Redshift Serverless to a provisioned cluster. Must not be specified at the same time as <code>snapshotName</code>.</p> <p>The format of the ARN is arn:aws:redshift:<region>:<account_id>:snapshot:<cluster_identifier>/<snapshot_identifier>.</p>
/// - [`owner_account(impl Into<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::owner_account) / [`set_owner_account(Option<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::set_owner_account): <p>The Amazon Web Services account that owns the snapshot.</p>
/// - [`manage_admin_password(bool)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::manage_admin_password) / [`set_manage_admin_password(Option<bool>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::set_manage_admin_password): <p>If <code>true</code>, Amazon Redshift uses Secrets Manager to manage the restored snapshot's admin credentials. If <code>MmanageAdminPassword</code> is false or not set, Amazon Redshift uses the admin credentials that the namespace or cluster had at the time the snapshot was taken.</p>
/// - [`admin_password_secret_kms_key_id(impl Into<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::admin_password_secret_kms_key_id) / [`set_admin_password_secret_kms_key_id(Option<String>)`](crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::set_admin_password_secret_kms_key_id): <p>The ID of the Key Management Service (KMS) key used to encrypt and store the namespace's admin credentials secret.</p>
/// - On success, responds with [`RestoreFromSnapshotOutput`](crate::operation::restore_from_snapshot::RestoreFromSnapshotOutput) with field(s):
/// - [`snapshot_name(Option<String>)`](crate::operation::restore_from_snapshot::RestoreFromSnapshotOutput::snapshot_name): <p>The name of the snapshot used to restore the namespace.</p>
/// - [`owner_account(Option<String>)`](crate::operation::restore_from_snapshot::RestoreFromSnapshotOutput::owner_account): <p>The owner Amazon Web Services; account of the snapshot that was restored.</p>
/// - [`namespace(Option<Namespace>)`](crate::operation::restore_from_snapshot::RestoreFromSnapshotOutput::namespace): <p>A collection of database objects and users.</p>
/// - On failure, responds with [`SdkError<RestoreFromSnapshotError>`](crate::operation::restore_from_snapshot::RestoreFromSnapshotError)
pub fn restore_from_snapshot(&self) -> crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder {
crate::operation::restore_from_snapshot::builders::RestoreFromSnapshotFluentBuilder::new(self.handle.clone())
}
}