// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`UpdateMicrosoftTeamsChannelConfiguration`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`chat_configuration_arn(impl Into<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::chat_configuration_arn) / [`set_chat_configuration_arn(Option<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::set_chat_configuration_arn):<br>required: **true**<br>The ARN of the MicrosoftTeamsChannelConfiguration to update.<br>
/// - [`channel_id(impl Into<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::channel_id) / [`set_channel_id(Option<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::set_channel_id):<br>required: **true**<br>The ID of the Microsoft Teams channel.<br>
/// - [`channel_name(impl Into<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::channel_name) / [`set_channel_name(Option<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::set_channel_name):<br>required: **false**<br>The name of the Microsoft Teams channel.<br>
/// - [`sns_topic_arns(impl Into<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::sns_topic_arns) / [`set_sns_topic_arns(Option<Vec::<String>>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::set_sns_topic_arns):<br>required: **false**<br>The ARNs of the SNS topics that deliver notifications to AWS Chatbot.<br>
/// - [`iam_role_arn(impl Into<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::iam_role_arn) / [`set_iam_role_arn(Option<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::set_iam_role_arn):<br>required: **false**<br>The ARN of the IAM role that defines the permissions for AWS Chatbot. This is a user-defined role that AWS Chatbot will assume. This is not the service-linked role. For more information, see IAM Policies for AWS Chatbot.<br>
/// - [`logging_level(impl Into<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::logging_level) / [`set_logging_level(Option<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::set_logging_level):<br>required: **false**<br>Logging levels include ERROR, INFO, or NONE.<br>
/// - [`guardrail_policy_arns(impl Into<String>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::guardrail_policy_arns) / [`set_guardrail_policy_arns(Option<Vec::<String>>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::set_guardrail_policy_arns):<br>required: **false**<br>The list of IAM policy ARNs that are applied as channel guardrails. The AWS managed 'AdministratorAccess' policy is applied by default if this is not set.<br>
/// - [`user_authorization_required(bool)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::user_authorization_required) / [`set_user_authorization_required(Option<bool>)`](crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::set_user_authorization_required):<br>required: **false**<br>Enables use of a user role requirement in your chat configuration.<br>
/// - On success, responds with [`UpdateMicrosoftTeamsChannelConfigurationOutput`](crate::operation::update_microsoft_teams_channel_configuration::UpdateMicrosoftTeamsChannelConfigurationOutput) with field(s):
/// - [`channel_configuration(Option<TeamsChannelConfiguration>)`](crate::operation::update_microsoft_teams_channel_configuration::UpdateMicrosoftTeamsChannelConfigurationOutput::channel_configuration): The configuration for a Microsoft Teams channel configured with AWS Chatbot.
/// - On failure, responds with [`SdkError<UpdateMicrosoftTeamsChannelConfigurationError>`](crate::operation::update_microsoft_teams_channel_configuration::UpdateMicrosoftTeamsChannelConfigurationError)
pub fn update_microsoft_teams_channel_configuration(
&self,
) -> crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder {
crate::operation::update_microsoft_teams_channel_configuration::builders::UpdateMicrosoftTeamsChannelConfigurationFluentBuilder::new(
self.handle.clone(),
)
}
}