// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateTrafficPolicy`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`client_token(impl Into<String>)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique token that Amazon SES uses to recognize subsequent retries of the same request.</p><br>
/// - [`traffic_policy_name(impl Into<String>)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::traffic_policy_name) / [`set_traffic_policy_name(Option<String>)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::set_traffic_policy_name):<br>required: **true**<br><p>A user-friendly name for the traffic policy resource.</p><br>
/// - [`policy_statements(PolicyStatement)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::policy_statements) / [`set_policy_statements(Option<Vec::<PolicyStatement>>)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::set_policy_statements):<br>required: **true**<br><p>Conditional statements for filtering email traffic.</p><br>
/// - [`default_action(AcceptAction)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::default_action) / [`set_default_action(Option<AcceptAction>)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::set_default_action):<br>required: **true**<br><p>Default action instructs the traffic policy to either Allow or Deny (block) messages that fall outside of (or not addressed by) the conditions of your policy statements</p><br>
/// - [`max_message_size_bytes(i32)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::max_message_size_bytes) / [`set_max_message_size_bytes(Option<i32>)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::set_max_message_size_bytes):<br>required: **false**<br><p>The maximum message size in bytes of email which is allowed in by this traffic policy—anything larger will be blocked.</p><br>
/// - [`tags(Tag)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::set_tags):<br>required: **false**<br><p>The tags used to organize, track, or control access for the resource. For example, { "tags": {"key1":"value1", "key2":"value2"} }.</p><br>
/// - On success, responds with [`CreateTrafficPolicyOutput`](crate::operation::create_traffic_policy::CreateTrafficPolicyOutput) with field(s):
/// - [`traffic_policy_id(String)`](crate::operation::create_traffic_policy::CreateTrafficPolicyOutput::traffic_policy_id): <p>The identifier of the traffic policy resource.</p>
/// - On failure, responds with [`SdkError<CreateTrafficPolicyError>`](crate::operation::create_traffic_policy::CreateTrafficPolicyError)
pub fn create_traffic_policy(&self) -> crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder {
crate::operation::create_traffic_policy::builders::CreateTrafficPolicyFluentBuilder::new(self.handle.clone())
}
}