// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`ModifyAccountVpcEncryptionControl`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`dry_run(bool)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::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>
/// - [`mode(AccountVpcEncryptionControlMode)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::mode) / [`set_mode(Option<AccountVpcEncryptionControlMode>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::set_mode):<br>required: **false**<br><p>The encryption mode for the account encryption control configuration.</p><br>
/// - [`internet_gateway(VpcEncryptionControlExclusionStateInput)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::internet_gateway) / [`set_internet_gateway(Option<VpcEncryptionControlExclusionStateInput>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::set_internet_gateway):<br>required: **false**<br><p>Specifies whether to exclude internet gateway resource from account-level encryption enforcement.</p><br>
/// - [`egress_only_internet_gateway(VpcEncryptionControlExclusionStateInput)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::egress_only_internet_gateway) / [`set_egress_only_internet_gateway(Option<VpcEncryptionControlExclusionStateInput>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::set_egress_only_internet_gateway):<br>required: **false**<br><p>Specifies whether to exclude egress-only internet gateway resource from account-level encryption enforcement.</p><br>
/// - [`nat_gateway(VpcEncryptionControlExclusionStateInput)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::nat_gateway) / [`set_nat_gateway(Option<VpcEncryptionControlExclusionStateInput>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::set_nat_gateway):<br>required: **false**<br><p>Specifies whether to exclude NAT gateway resource from account-level encryption enforcement.</p><br>
/// - [`virtual_private_gateway(VpcEncryptionControlExclusionStateInput)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::virtual_private_gateway) / [`set_virtual_private_gateway(Option<VpcEncryptionControlExclusionStateInput>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::set_virtual_private_gateway):<br>required: **false**<br><p>Specifies whether to exclude virtual private gateway resource from account-level encryption enforcement.</p><br>
/// - [`vpc_peering(VpcEncryptionControlExclusionStateInput)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::vpc_peering) / [`set_vpc_peering(Option<VpcEncryptionControlExclusionStateInput>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::set_vpc_peering):<br>required: **false**<br><p>Specifies whether to exclude VPC peering connection resource from account-level encryption enforcement.</p><br>
/// - [`lambda(VpcEncryptionControlExclusionStateInput)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::lambda) / [`set_lambda(Option<VpcEncryptionControlExclusionStateInput>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::set_lambda):<br>required: **false**<br><p>Specifies whether to exclude Lambda service from account-level encryption enforcement.</p><br>
/// - [`vpc_lattice(VpcEncryptionControlExclusionStateInput)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::vpc_lattice) / [`set_vpc_lattice(Option<VpcEncryptionControlExclusionStateInput>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::set_vpc_lattice):<br>required: **false**<br><p>Specifies whether to exclude VPC Lattice service from account-level encryption enforcement.</p><br>
/// - [`elastic_file_system(VpcEncryptionControlExclusionStateInput)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::elastic_file_system) / [`set_elastic_file_system(Option<VpcEncryptionControlExclusionStateInput>)`](crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::set_elastic_file_system):<br>required: **false**<br><p>Specifies whether to exclude Elastic File System service from account-level encryption enforcement.</p><br>
/// - On success, responds with [`ModifyAccountVpcEncryptionControlOutput`](crate::operation::modify_account_vpc_encryption_control::ModifyAccountVpcEncryptionControlOutput) with field(s):
/// - [`account_vpc_encryption_control(Option<AccountVpcEncryptionControl>)`](crate::operation::modify_account_vpc_encryption_control::ModifyAccountVpcEncryptionControlOutput::account_vpc_encryption_control): <p>Information about the account-level VPC Encryption Control configuration.</p>
/// - On failure, responds with [`SdkError<ModifyAccountVpcEncryptionControlError>`](crate::operation::modify_account_vpc_encryption_control::ModifyAccountVpcEncryptionControlError)
pub fn modify_account_vpc_encryption_control(
&self,
) -> crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder {
crate::operation::modify_account_vpc_encryption_control::builders::ModifyAccountVpcEncryptionControlFluentBuilder::new(self.handle.clone())
}
}