// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[derive(Debug)]
pub(crate) struct Handle {
    pub(crate) client: aws_smithy_client::Client<
        aws_smithy_client::erase::DynConnector,
        aws_smithy_client::erase::DynMiddleware<aws_smithy_client::erase::DynConnector>,
    >,
    pub(crate) conf: crate::Config,
}

/// Client for Partners
///
/// Client for invoking operations on Partners. Each operation on Partners is a method on this
/// this struct. `.send()` MUST be invoked on the generated operations to dispatch the request to the service.
///
/// # Examples
/// **Constructing a client and invoking an operation**
/// ```rust,no_run
/// # async fn docs() {
///     // create a shared configuration. This can be used & shared between multiple service clients.
///     let shared_config = stedi_sdk_config::load_from_env().await;
///     let client = stedi_sdk_client_partners::Client::new(&shared_config);
///     // invoke an operation
///     /* let rsp = client
///         .<operation_name>().
///         .<param>("some value")
///         .send().await; */
/// # }
/// ```
/// **Constructing a client with custom configuration**
/// ```rust,no_run
/// use stedi_sdk_config::retry::RetryConfig;
/// # async fn docs() {
/// let shared_config = stedi_sdk_config::load_from_env().await;
/// let config = stedi_sdk_client_partners::config::Builder::from(&shared_config)
///   .retry_config(RetryConfig::disabled())
///   .build();
/// let client = stedi_sdk_client_partners::Client::from_conf(config);
/// # }
#[derive(std::fmt::Debug)]
pub struct Client {
    handle: std::sync::Arc<Handle>,
}

impl std::clone::Clone for Client {
    fn clone(&self) -> Self {
        Self {
            handle: self.handle.clone(),
        }
    }
}

#[doc(inline)]
pub use aws_smithy_client::Builder;

impl
    From<
        aws_smithy_client::Client<
            aws_smithy_client::erase::DynConnector,
            aws_smithy_client::erase::DynMiddleware<aws_smithy_client::erase::DynConnector>,
        >,
    > for Client
{
    fn from(
        client: aws_smithy_client::Client<
            aws_smithy_client::erase::DynConnector,
            aws_smithy_client::erase::DynMiddleware<aws_smithy_client::erase::DynConnector>,
        >,
    ) -> Self {
        Self::with_config(client, crate::Config::builder().build())
    }
}

impl Client {
    /// Creates a client with the given service configuration.
    pub fn with_config(
        client: aws_smithy_client::Client<
            aws_smithy_client::erase::DynConnector,
            aws_smithy_client::erase::DynMiddleware<aws_smithy_client::erase::DynConnector>,
        >,
        conf: crate::Config,
    ) -> Self {
        Self {
            handle: std::sync::Arc::new(Handle { client, conf }),
        }
    }

    /// Returns the client's configuration.
    pub fn conf(&self) -> &crate::Config {
        &self.handle.conf
    }
}
impl Client {
    /// Constructs a fluent builder for the [`CreateInboundX12TransactionSettings`](crate::client::fluent_builders::CreateInboundX12TransactionSettings) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`release(X12Release)`](crate::client::fluent_builders::CreateInboundX12TransactionSettings::release) / [`set_release(Option<X12Release>)`](crate::client::fluent_builders::CreateInboundX12TransactionSettings::set_release): (undocumented)
    ///   - [`transaction_set_identifier(X12TransactionSetCode)`](crate::client::fluent_builders::CreateInboundX12TransactionSettings::transaction_set_identifier) / [`set_transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::client::fluent_builders::CreateInboundX12TransactionSettings::set_transaction_set_identifier): (undocumented)
    ///   - [`guide_id(impl Into<String>)`](crate::client::fluent_builders::CreateInboundX12TransactionSettings::guide_id) / [`set_guide_id(Option<String>)`](crate::client::fluent_builders::CreateInboundX12TransactionSettings::set_guide_id): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::CreateInboundX12TransactionSettings::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::CreateInboundX12TransactionSettings::set_partnership_id): (undocumented)
    /// - On success, responds with [`CreateInboundX12TransactionSettingsOutput`](crate::output::CreateInboundX12TransactionSettingsOutput) with field(s):
    ///   - [`release(Option<X12Release>)`](crate::output::CreateInboundX12TransactionSettingsOutput::release): (undocumented)
    ///   - [`transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::output::CreateInboundX12TransactionSettingsOutput::transaction_set_identifier): (undocumented)
    ///   - [`guide_id(Option<String>)`](crate::output::CreateInboundX12TransactionSettingsOutput::guide_id): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::CreateInboundX12TransactionSettingsOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::CreateInboundX12TransactionSettingsOutput::updated_at): (undocumented)
    ///   - [`inbound_x12_transaction_settings_id(Option<String>)`](crate::output::CreateInboundX12TransactionSettingsOutput::inbound_x12_transaction_settings_id): (undocumented)
    /// - On failure, responds with [`SdkError<CreateInboundX12TransactionSettingsError>`](crate::error::CreateInboundX12TransactionSettingsError)
    pub fn create_inbound_x12_transaction_settings(
        &self,
    ) -> fluent_builders::CreateInboundX12TransactionSettings {
        fluent_builders::CreateInboundX12TransactionSettings::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`CreateOutboundX12TransactionSettings`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`release(X12Release)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::release) / [`set_release(Option<X12Release>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::set_release): (undocumented)
    ///   - [`transaction_set_identifier(X12TransactionSetCode)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::transaction_set_identifier) / [`set_transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::set_transaction_set_identifier): (undocumented)
    ///   - [`guide_id(impl Into<String>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::guide_id) / [`set_guide_id(Option<String>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::set_guide_id): (undocumented)
    ///   - [`local_application_id(impl Into<String>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::local_application_id) / [`set_local_application_id(Option<String>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::set_local_application_id): (undocumented)
    ///   - [`partner_application_id(impl Into<String>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::partner_application_id) / [`set_partner_application_id(Option<String>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::set_partner_application_id): (undocumented)
    ///   - [`bucket_connection(X12OutboundTransactionBucketConnection)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::bucket_connection) / [`set_bucket_connection(Option<X12OutboundTransactionBucketConnection>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::set_bucket_connection): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::CreateOutboundX12TransactionSettings::set_partnership_id): (undocumented)
    /// - On success, responds with [`CreateOutboundX12TransactionSettingsOutput`](crate::output::CreateOutboundX12TransactionSettingsOutput) with field(s):
    ///   - [`release(Option<X12Release>)`](crate::output::CreateOutboundX12TransactionSettingsOutput::release): (undocumented)
    ///   - [`transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::output::CreateOutboundX12TransactionSettingsOutput::transaction_set_identifier): (undocumented)
    ///   - [`guide_id(Option<String>)`](crate::output::CreateOutboundX12TransactionSettingsOutput::guide_id): (undocumented)
    ///   - [`local_application_id(Option<String>)`](crate::output::CreateOutboundX12TransactionSettingsOutput::local_application_id): (undocumented)
    ///   - [`partner_application_id(Option<String>)`](crate::output::CreateOutboundX12TransactionSettingsOutput::partner_application_id): (undocumented)
    ///   - [`bucket_connection(Option<X12OutboundTransactionBucketConnection>)`](crate::output::CreateOutboundX12TransactionSettingsOutput::bucket_connection): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::CreateOutboundX12TransactionSettingsOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::CreateOutboundX12TransactionSettingsOutput::updated_at): (undocumented)
    ///   - [`outbound_x12_transaction_settings_id(Option<String>)`](crate::output::CreateOutboundX12TransactionSettingsOutput::outbound_x12_transaction_settings_id): (undocumented)
    /// - On failure, responds with [`SdkError<CreateOutboundX12TransactionSettingsError>`](crate::error::CreateOutboundX12TransactionSettingsError)
    pub fn create_outbound_x12_transaction_settings(
        &self,
    ) -> fluent_builders::CreateOutboundX12TransactionSettings {
        fluent_builders::CreateOutboundX12TransactionSettings::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`CreateX12BucketConnection`](crate::client::fluent_builders::CreateX12BucketConnection) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`inbound_subdirectory(impl Into<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::inbound_subdirectory) / [`set_inbound_subdirectory(Option<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::set_inbound_subdirectory): (undocumented)
    ///   - [`outbound_subdirectory(impl Into<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::outbound_subdirectory) / [`set_outbound_subdirectory(Option<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::set_outbound_subdirectory): (undocumented)
    ///   - [`bucket_name(impl Into<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::bucket_name) / [`set_bucket_name(Option<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::set_bucket_name): (undocumented)
    ///   - [`parent_directory(impl Into<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::parent_directory) / [`set_parent_directory(Option<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::set_parent_directory): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::CreateX12BucketConnection::set_partnership_id): (undocumented)
    /// - On success, responds with [`CreateX12BucketConnectionOutput`](crate::output::CreateX12BucketConnectionOutput) with field(s):
    ///   - [`inbound_subdirectory(Option<String>)`](crate::output::CreateX12BucketConnectionOutput::inbound_subdirectory): (undocumented)
    ///   - [`outbound_subdirectory(Option<String>)`](crate::output::CreateX12BucketConnectionOutput::outbound_subdirectory): (undocumented)
    ///   - [`bucket_name(Option<String>)`](crate::output::CreateX12BucketConnectionOutput::bucket_name): (undocumented)
    ///   - [`parent_directory(Option<String>)`](crate::output::CreateX12BucketConnectionOutput::parent_directory): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::CreateX12BucketConnectionOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::CreateX12BucketConnectionOutput::updated_at): (undocumented)
    ///   - [`bucket_connection_id(Option<String>)`](crate::output::CreateX12BucketConnectionOutput::bucket_connection_id): ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
    /// - On failure, responds with [`SdkError<CreateX12BucketConnectionError>`](crate::error::CreateX12BucketConnectionError)
    pub fn create_x12_bucket_connection(&self) -> fluent_builders::CreateX12BucketConnection {
        fluent_builders::CreateX12BucketConnection::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`CreateX12Partnership`](crate::client::fluent_builders::CreateX12Partnership) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::CreateX12Partnership::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::CreateX12Partnership::set_partnership_id): (undocumented)
    ///   - [`local_profile_id(impl Into<String>)`](crate::client::fluent_builders::CreateX12Partnership::local_profile_id) / [`set_local_profile_id(Option<String>)`](crate::client::fluent_builders::CreateX12Partnership::set_local_profile_id): (undocumented)
    ///   - [`partner_profile_id(impl Into<String>)`](crate::client::fluent_builders::CreateX12Partnership::partner_profile_id) / [`set_partner_profile_id(Option<String>)`](crate::client::fluent_builders::CreateX12Partnership::set_partner_profile_id): (undocumented)
    ///   - [`interchange_usage_indicator(X12UsageIndicator)`](crate::client::fluent_builders::CreateX12Partnership::interchange_usage_indicator) / [`set_interchange_usage_indicator(Option<X12UsageIndicator>)`](crate::client::fluent_builders::CreateX12Partnership::set_interchange_usage_indicator): (undocumented)
    ///   - [`timezone(Timezone)`](crate::client::fluent_builders::CreateX12Partnership::timezone) / [`set_timezone(Option<Timezone>)`](crate::client::fluent_builders::CreateX12Partnership::set_timezone): (undocumented)
    /// - On success, responds with [`CreateX12PartnershipOutput`](crate::output::CreateX12PartnershipOutput) with field(s):
    ///   - [`partnership_id(Option<String>)`](crate::output::CreateX12PartnershipOutput::partnership_id): (undocumented)
    ///   - [`local_profile_id(Option<String>)`](crate::output::CreateX12PartnershipOutput::local_profile_id): (undocumented)
    ///   - [`partner_profile_id(Option<String>)`](crate::output::CreateX12PartnershipOutput::partner_profile_id): (undocumented)
    ///   - [`interchange_usage_indicator(Option<X12UsageIndicator>)`](crate::output::CreateX12PartnershipOutput::interchange_usage_indicator): (undocumented)
    ///   - [`timezone(Option<Timezone>)`](crate::output::CreateX12PartnershipOutput::timezone): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::CreateX12PartnershipOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::CreateX12PartnershipOutput::updated_at): (undocumented)
    /// - On failure, responds with [`SdkError<CreateX12PartnershipError>`](crate::error::CreateX12PartnershipError)
    pub fn create_x12_partnership(&self) -> fluent_builders::CreateX12Partnership {
        fluent_builders::CreateX12Partnership::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`CreateX12Profile`](crate::client::fluent_builders::CreateX12Profile) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`interchange_qualifier(X12InterchangeQualifier)`](crate::client::fluent_builders::CreateX12Profile::interchange_qualifier) / [`set_interchange_qualifier(Option<X12InterchangeQualifier>)`](crate::client::fluent_builders::CreateX12Profile::set_interchange_qualifier): (undocumented)
    ///   - [`interchange_id(impl Into<String>)`](crate::client::fluent_builders::CreateX12Profile::interchange_id) / [`set_interchange_id(Option<String>)`](crate::client::fluent_builders::CreateX12Profile::set_interchange_id): (undocumented)
    ///   - [`profile_id(impl Into<String>)`](crate::client::fluent_builders::CreateX12Profile::profile_id) / [`set_profile_id(Option<String>)`](crate::client::fluent_builders::CreateX12Profile::set_profile_id): (undocumented)
    ///   - [`profile_type(ProfileType)`](crate::client::fluent_builders::CreateX12Profile::profile_type) / [`set_profile_type(Option<ProfileType>)`](crate::client::fluent_builders::CreateX12Profile::set_profile_type): (undocumented)
    ///   - [`application_identifiers(Vec<X12ApplicationId>)`](crate::client::fluent_builders::CreateX12Profile::application_identifiers) / [`set_application_identifiers(Option<Vec<X12ApplicationId>>)`](crate::client::fluent_builders::CreateX12Profile::set_application_identifiers): Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
    /// - On success, responds with [`CreateX12ProfileOutput`](crate::output::CreateX12ProfileOutput) with field(s):
    ///   - [`interchange_qualifier(Option<X12InterchangeQualifier>)`](crate::output::CreateX12ProfileOutput::interchange_qualifier): (undocumented)
    ///   - [`interchange_id(Option<String>)`](crate::output::CreateX12ProfileOutput::interchange_id): (undocumented)
    ///   - [`profile_id(Option<String>)`](crate::output::CreateX12ProfileOutput::profile_id): (undocumented)
    ///   - [`profile_type(Option<ProfileType>)`](crate::output::CreateX12ProfileOutput::profile_type): (undocumented)
    ///   - [`application_identifiers(Option<Vec<X12ApplicationId>>)`](crate::output::CreateX12ProfileOutput::application_identifiers): Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
    ///   - [`created_at(Option<DateTime>)`](crate::output::CreateX12ProfileOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::CreateX12ProfileOutput::updated_at): (undocumented)
    /// - On failure, responds with [`SdkError<CreateX12ProfileError>`](crate::error::CreateX12ProfileError)
    pub fn create_x12_profile(&self) -> fluent_builders::CreateX12Profile {
        fluent_builders::CreateX12Profile::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`DeleteInboundX12TransactionSettings`](crate::client::fluent_builders::DeleteInboundX12TransactionSettings) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::DeleteInboundX12TransactionSettings::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::DeleteInboundX12TransactionSettings::set_partnership_id): (undocumented)
    ///   - [`inbound_x12_transaction_settings_id(impl Into<String>)`](crate::client::fluent_builders::DeleteInboundX12TransactionSettings::inbound_x12_transaction_settings_id) / [`set_inbound_x12_transaction_settings_id(Option<String>)`](crate::client::fluent_builders::DeleteInboundX12TransactionSettings::set_inbound_x12_transaction_settings_id): (undocumented)
    /// - On success, responds with [`DeleteInboundX12TransactionSettingsOutput`](crate::output::DeleteInboundX12TransactionSettingsOutput)

    /// - On failure, responds with [`SdkError<DeleteInboundX12TransactionSettingsError>`](crate::error::DeleteInboundX12TransactionSettingsError)
    pub fn delete_inbound_x12_transaction_settings(
        &self,
    ) -> fluent_builders::DeleteInboundX12TransactionSettings {
        fluent_builders::DeleteInboundX12TransactionSettings::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`DeleteOutboundX12TransactionSettings`](crate::client::fluent_builders::DeleteOutboundX12TransactionSettings) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::DeleteOutboundX12TransactionSettings::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::DeleteOutboundX12TransactionSettings::set_partnership_id): (undocumented)
    ///   - [`outbound_x12_transaction_settings_id(impl Into<String>)`](crate::client::fluent_builders::DeleteOutboundX12TransactionSettings::outbound_x12_transaction_settings_id) / [`set_outbound_x12_transaction_settings_id(Option<String>)`](crate::client::fluent_builders::DeleteOutboundX12TransactionSettings::set_outbound_x12_transaction_settings_id): (undocumented)
    /// - On success, responds with [`DeleteOutboundX12TransactionSettingsOutput`](crate::output::DeleteOutboundX12TransactionSettingsOutput)

    /// - On failure, responds with [`SdkError<DeleteOutboundX12TransactionSettingsError>`](crate::error::DeleteOutboundX12TransactionSettingsError)
    pub fn delete_outbound_x12_transaction_settings(
        &self,
    ) -> fluent_builders::DeleteOutboundX12TransactionSettings {
        fluent_builders::DeleteOutboundX12TransactionSettings::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`DeleteX12BucketConnection`](crate::client::fluent_builders::DeleteX12BucketConnection) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::DeleteX12BucketConnection::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::DeleteX12BucketConnection::set_partnership_id): (undocumented)
    ///   - [`bucket_connection_id(impl Into<String>)`](crate::client::fluent_builders::DeleteX12BucketConnection::bucket_connection_id) / [`set_bucket_connection_id(Option<String>)`](crate::client::fluent_builders::DeleteX12BucketConnection::set_bucket_connection_id): ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
    /// - On success, responds with [`DeleteX12BucketConnectionOutput`](crate::output::DeleteX12BucketConnectionOutput)

    /// - On failure, responds with [`SdkError<DeleteX12BucketConnectionError>`](crate::error::DeleteX12BucketConnectionError)
    pub fn delete_x12_bucket_connection(&self) -> fluent_builders::DeleteX12BucketConnection {
        fluent_builders::DeleteX12BucketConnection::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`DeleteX12Partnership`](crate::client::fluent_builders::DeleteX12Partnership) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::DeleteX12Partnership::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::DeleteX12Partnership::set_partnership_id): (undocumented)
    /// - On success, responds with [`DeleteX12PartnershipOutput`](crate::output::DeleteX12PartnershipOutput)

    /// - On failure, responds with [`SdkError<DeleteX12PartnershipError>`](crate::error::DeleteX12PartnershipError)
    pub fn delete_x12_partnership(&self) -> fluent_builders::DeleteX12Partnership {
        fluent_builders::DeleteX12Partnership::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`DeleteX12Profile`](crate::client::fluent_builders::DeleteX12Profile) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`profile_id(impl Into<String>)`](crate::client::fluent_builders::DeleteX12Profile::profile_id) / [`set_profile_id(Option<String>)`](crate::client::fluent_builders::DeleteX12Profile::set_profile_id): (undocumented)
    /// - On success, responds with [`DeleteX12ProfileOutput`](crate::output::DeleteX12ProfileOutput)

    /// - On failure, responds with [`SdkError<DeleteX12ProfileError>`](crate::error::DeleteX12ProfileError)
    pub fn delete_x12_profile(&self) -> fluent_builders::DeleteX12Profile {
        fluent_builders::DeleteX12Profile::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GenerateEdi`](crate::client::fluent_builders::GenerateEdi) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`release(X12Release)`](crate::client::fluent_builders::GenerateEdi::release) / [`set_release(Option<X12Release>)`](crate::client::fluent_builders::GenerateEdi::set_release): (undocumented)
    ///   - [`transaction_set_identifier(X12TransactionSetCode)`](crate::client::fluent_builders::GenerateEdi::transaction_set_identifier) / [`set_transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::client::fluent_builders::GenerateEdi::set_transaction_set_identifier): (undocumented)
    ///   - [`transactions(Vec<Document>)`](crate::client::fluent_builders::GenerateEdi::transactions) / [`set_transactions(Option<Vec<Document>>)`](crate::client::fluent_builders::GenerateEdi::set_transactions): (undocumented)
    ///   - [`interchange_usage_indicator_override(X12UsageIndicator)`](crate::client::fluent_builders::GenerateEdi::interchange_usage_indicator_override) / [`set_interchange_usage_indicator_override(Option<X12UsageIndicator>)`](crate::client::fluent_builders::GenerateEdi::set_interchange_usage_indicator_override): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::GenerateEdi::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::GenerateEdi::set_partnership_id): (undocumented)
    /// - On success, responds with [`GenerateEdiOutput`](crate::output::GenerateEdiOutput) with field(s):
    ///   - [`edi(Option<String>)`](crate::output::GenerateEdiOutput::edi): (undocumented)
    ///   - [`artifact_id(Option<String>)`](crate::output::GenerateEdiOutput::artifact_id): The id of the artifact placed in the customer's Core
    /// - On failure, responds with [`SdkError<GenerateEdiError>`](crate::error::GenerateEdiError)
    pub fn generate_edi(&self) -> fluent_builders::GenerateEdi {
        fluent_builders::GenerateEdi::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GetInboundX12TransactionSettings`](crate::client::fluent_builders::GetInboundX12TransactionSettings) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::GetInboundX12TransactionSettings::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::GetInboundX12TransactionSettings::set_partnership_id): (undocumented)
    ///   - [`inbound_x12_transaction_settings_id(impl Into<String>)`](crate::client::fluent_builders::GetInboundX12TransactionSettings::inbound_x12_transaction_settings_id) / [`set_inbound_x12_transaction_settings_id(Option<String>)`](crate::client::fluent_builders::GetInboundX12TransactionSettings::set_inbound_x12_transaction_settings_id): (undocumented)
    /// - On success, responds with [`GetInboundX12TransactionSettingsOutput`](crate::output::GetInboundX12TransactionSettingsOutput) with field(s):
    ///   - [`release(Option<X12Release>)`](crate::output::GetInboundX12TransactionSettingsOutput::release): (undocumented)
    ///   - [`transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::output::GetInboundX12TransactionSettingsOutput::transaction_set_identifier): (undocumented)
    ///   - [`guide_id(Option<String>)`](crate::output::GetInboundX12TransactionSettingsOutput::guide_id): (undocumented)
    ///   - [`partnership_id(Option<String>)`](crate::output::GetInboundX12TransactionSettingsOutput::partnership_id): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::GetInboundX12TransactionSettingsOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::GetInboundX12TransactionSettingsOutput::updated_at): (undocumented)
    ///   - [`inbound_x12_transaction_settings_id(Option<String>)`](crate::output::GetInboundX12TransactionSettingsOutput::inbound_x12_transaction_settings_id): (undocumented)
    /// - On failure, responds with [`SdkError<GetInboundX12TransactionSettingsError>`](crate::error::GetInboundX12TransactionSettingsError)
    pub fn get_inbound_x12_transaction_settings(
        &self,
    ) -> fluent_builders::GetInboundX12TransactionSettings {
        fluent_builders::GetInboundX12TransactionSettings::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GetOutboundX12ControlNumbers`](crate::client::fluent_builders::GetOutboundX12ControlNumbers) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::GetOutboundX12ControlNumbers::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::GetOutboundX12ControlNumbers::set_partnership_id): (undocumented)
    /// - On success, responds with [`GetOutboundX12ControlNumbersOutput`](crate::output::GetOutboundX12ControlNumbersOutput) with field(s):
    ///   - [`interchange_control_number(Option<i64>)`](crate::output::GetOutboundX12ControlNumbersOutput::interchange_control_number): (undocumented)
    ///   - [`group_control_number(Option<i64>)`](crate::output::GetOutboundX12ControlNumbersOutput::group_control_number): (undocumented)
    /// - On failure, responds with [`SdkError<GetOutboundX12ControlNumbersError>`](crate::error::GetOutboundX12ControlNumbersError)
    pub fn get_outbound_x12_control_numbers(
        &self,
    ) -> fluent_builders::GetOutboundX12ControlNumbers {
        fluent_builders::GetOutboundX12ControlNumbers::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GetOutboundX12TransactionSettings`](crate::client::fluent_builders::GetOutboundX12TransactionSettings) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::GetOutboundX12TransactionSettings::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::GetOutboundX12TransactionSettings::set_partnership_id): (undocumented)
    ///   - [`outbound_x12_transaction_settings_id(impl Into<String>)`](crate::client::fluent_builders::GetOutboundX12TransactionSettings::outbound_x12_transaction_settings_id) / [`set_outbound_x12_transaction_settings_id(Option<String>)`](crate::client::fluent_builders::GetOutboundX12TransactionSettings::set_outbound_x12_transaction_settings_id): (undocumented)
    /// - On success, responds with [`GetOutboundX12TransactionSettingsOutput`](crate::output::GetOutboundX12TransactionSettingsOutput) with field(s):
    ///   - [`release(Option<X12Release>)`](crate::output::GetOutboundX12TransactionSettingsOutput::release): (undocumented)
    ///   - [`transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::output::GetOutboundX12TransactionSettingsOutput::transaction_set_identifier): (undocumented)
    ///   - [`guide_id(Option<String>)`](crate::output::GetOutboundX12TransactionSettingsOutput::guide_id): (undocumented)
    ///   - [`local_application_id(Option<String>)`](crate::output::GetOutboundX12TransactionSettingsOutput::local_application_id): (undocumented)
    ///   - [`partner_application_id(Option<String>)`](crate::output::GetOutboundX12TransactionSettingsOutput::partner_application_id): (undocumented)
    ///   - [`bucket_connection(Option<X12OutboundTransactionBucketConnection>)`](crate::output::GetOutboundX12TransactionSettingsOutput::bucket_connection): (undocumented)
    ///   - [`partnership_id(Option<String>)`](crate::output::GetOutboundX12TransactionSettingsOutput::partnership_id): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::GetOutboundX12TransactionSettingsOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::GetOutboundX12TransactionSettingsOutput::updated_at): (undocumented)
    ///   - [`outbound_x12_transaction_settings_id(Option<String>)`](crate::output::GetOutboundX12TransactionSettingsOutput::outbound_x12_transaction_settings_id): (undocumented)
    /// - On failure, responds with [`SdkError<GetOutboundX12TransactionSettingsError>`](crate::error::GetOutboundX12TransactionSettingsError)
    pub fn get_outbound_x12_transaction_settings(
        &self,
    ) -> fluent_builders::GetOutboundX12TransactionSettings {
        fluent_builders::GetOutboundX12TransactionSettings::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GetX12BucketConnection`](crate::client::fluent_builders::GetX12BucketConnection) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::GetX12BucketConnection::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::GetX12BucketConnection::set_partnership_id): (undocumented)
    ///   - [`bucket_connection_id(impl Into<String>)`](crate::client::fluent_builders::GetX12BucketConnection::bucket_connection_id) / [`set_bucket_connection_id(Option<String>)`](crate::client::fluent_builders::GetX12BucketConnection::set_bucket_connection_id): ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
    /// - On success, responds with [`GetX12BucketConnectionOutput`](crate::output::GetX12BucketConnectionOutput) with field(s):
    ///   - [`inbound_subdirectory(Option<String>)`](crate::output::GetX12BucketConnectionOutput::inbound_subdirectory): (undocumented)
    ///   - [`outbound_subdirectory(Option<String>)`](crate::output::GetX12BucketConnectionOutput::outbound_subdirectory): (undocumented)
    ///   - [`bucket_name(Option<String>)`](crate::output::GetX12BucketConnectionOutput::bucket_name): (undocumented)
    ///   - [`parent_directory(Option<String>)`](crate::output::GetX12BucketConnectionOutput::parent_directory): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::GetX12BucketConnectionOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::GetX12BucketConnectionOutput::updated_at): (undocumented)
    ///   - [`bucket_connection_id(Option<String>)`](crate::output::GetX12BucketConnectionOutput::bucket_connection_id): ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
    /// - On failure, responds with [`SdkError<GetX12BucketConnectionError>`](crate::error::GetX12BucketConnectionError)
    pub fn get_x12_bucket_connection(&self) -> fluent_builders::GetX12BucketConnection {
        fluent_builders::GetX12BucketConnection::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GetX12Connections`](crate::client::fluent_builders::GetX12Connections) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::GetX12Connections::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::GetX12Connections::set_partnership_id): (undocumented)
    /// - On success, responds with [`GetX12ConnectionsOutput`](crate::output::GetX12ConnectionsOutput) with field(s):
    ///   - [`buckets(Option<Vec<X12BucketConnectionFields>>)`](crate::output::GetX12ConnectionsOutput::buckets): (undocumented)
    /// - On failure, responds with [`SdkError<GetX12ConnectionsError>`](crate::error::GetX12ConnectionsError)
    pub fn get_x12_connections(&self) -> fluent_builders::GetX12Connections {
        fluent_builders::GetX12Connections::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GetX12Partnership`](crate::client::fluent_builders::GetX12Partnership) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::GetX12Partnership::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::GetX12Partnership::set_partnership_id): (undocumented)
    /// - On success, responds with [`GetX12PartnershipOutput`](crate::output::GetX12PartnershipOutput) with field(s):
    ///   - [`partnership_id(Option<String>)`](crate::output::GetX12PartnershipOutput::partnership_id): (undocumented)
    ///   - [`local_profile_id(Option<String>)`](crate::output::GetX12PartnershipOutput::local_profile_id): (undocumented)
    ///   - [`partner_profile_id(Option<String>)`](crate::output::GetX12PartnershipOutput::partner_profile_id): (undocumented)
    ///   - [`interchange_usage_indicator(Option<X12UsageIndicator>)`](crate::output::GetX12PartnershipOutput::interchange_usage_indicator): (undocumented)
    ///   - [`timezone(Option<Timezone>)`](crate::output::GetX12PartnershipOutput::timezone): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::GetX12PartnershipOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::GetX12PartnershipOutput::updated_at): (undocumented)
    ///   - [`local_profile(Option<X12ProfileFields>)`](crate::output::GetX12PartnershipOutput::local_profile): (undocumented)
    ///   - [`partner_profile(Option<X12ProfileFields>)`](crate::output::GetX12PartnershipOutput::partner_profile): (undocumented)
    ///   - [`inbound_transactions(Option<Vec<InboundX12TransactionSettingsSummary>>)`](crate::output::GetX12PartnershipOutput::inbound_transactions): (undocumented)
    ///   - [`outbound_transactions(Option<Vec<OutboundX12TransactionSettingsSummary>>)`](crate::output::GetX12PartnershipOutput::outbound_transactions): (undocumented)
    /// - On failure, responds with [`SdkError<GetX12PartnershipError>`](crate::error::GetX12PartnershipError)
    pub fn get_x12_partnership(&self) -> fluent_builders::GetX12Partnership {
        fluent_builders::GetX12Partnership::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GetX12PartnershipByInterchanges`](crate::client::fluent_builders::GetX12PartnershipByInterchanges) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`local_interchange_identifier(X12InterchangeIdentifier)`](crate::client::fluent_builders::GetX12PartnershipByInterchanges::local_interchange_identifier) / [`set_local_interchange_identifier(Option<X12InterchangeIdentifier>)`](crate::client::fluent_builders::GetX12PartnershipByInterchanges::set_local_interchange_identifier): (undocumented)
    ///   - [`partner_interchange_identifier(X12InterchangeIdentifier)`](crate::client::fluent_builders::GetX12PartnershipByInterchanges::partner_interchange_identifier) / [`set_partner_interchange_identifier(Option<X12InterchangeIdentifier>)`](crate::client::fluent_builders::GetX12PartnershipByInterchanges::set_partner_interchange_identifier): (undocumented)
    /// - On success, responds with [`GetX12PartnershipByInterchangesOutput`](crate::output::GetX12PartnershipByInterchangesOutput) with field(s):
    ///   - [`partnership_id(Option<String>)`](crate::output::GetX12PartnershipByInterchangesOutput::partnership_id): (undocumented)
    ///   - [`local_profile_id(Option<String>)`](crate::output::GetX12PartnershipByInterchangesOutput::local_profile_id): (undocumented)
    ///   - [`partner_profile_id(Option<String>)`](crate::output::GetX12PartnershipByInterchangesOutput::partner_profile_id): (undocumented)
    ///   - [`interchange_usage_indicator(Option<X12UsageIndicator>)`](crate::output::GetX12PartnershipByInterchangesOutput::interchange_usage_indicator): (undocumented)
    ///   - [`timezone(Option<Timezone>)`](crate::output::GetX12PartnershipByInterchangesOutput::timezone): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::GetX12PartnershipByInterchangesOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::GetX12PartnershipByInterchangesOutput::updated_at): (undocumented)
    ///   - [`local_profile(Option<X12ProfileFields>)`](crate::output::GetX12PartnershipByInterchangesOutput::local_profile): (undocumented)
    ///   - [`partner_profile(Option<X12ProfileFields>)`](crate::output::GetX12PartnershipByInterchangesOutput::partner_profile): (undocumented)
    ///   - [`inbound_transactions(Option<Vec<InboundX12TransactionSettingsSummary>>)`](crate::output::GetX12PartnershipByInterchangesOutput::inbound_transactions): (undocumented)
    ///   - [`outbound_transactions(Option<Vec<OutboundX12TransactionSettingsSummary>>)`](crate::output::GetX12PartnershipByInterchangesOutput::outbound_transactions): (undocumented)
    /// - On failure, responds with [`SdkError<GetX12PartnershipByInterchangesError>`](crate::error::GetX12PartnershipByInterchangesError)
    pub fn get_x12_partnership_by_interchanges(
        &self,
    ) -> fluent_builders::GetX12PartnershipByInterchanges {
        fluent_builders::GetX12PartnershipByInterchanges::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GetX12Profile`](crate::client::fluent_builders::GetX12Profile) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`profile_id(impl Into<String>)`](crate::client::fluent_builders::GetX12Profile::profile_id) / [`set_profile_id(Option<String>)`](crate::client::fluent_builders::GetX12Profile::set_profile_id): (undocumented)
    /// - On success, responds with [`GetX12ProfileOutput`](crate::output::GetX12ProfileOutput) with field(s):
    ///   - [`interchange_qualifier(Option<X12InterchangeQualifier>)`](crate::output::GetX12ProfileOutput::interchange_qualifier): (undocumented)
    ///   - [`interchange_id(Option<String>)`](crate::output::GetX12ProfileOutput::interchange_id): (undocumented)
    ///   - [`profile_id(Option<String>)`](crate::output::GetX12ProfileOutput::profile_id): (undocumented)
    ///   - [`profile_type(Option<ProfileType>)`](crate::output::GetX12ProfileOutput::profile_type): (undocumented)
    ///   - [`application_identifiers(Option<Vec<X12ApplicationId>>)`](crate::output::GetX12ProfileOutput::application_identifiers): Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
    ///   - [`created_at(Option<DateTime>)`](crate::output::GetX12ProfileOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::GetX12ProfileOutput::updated_at): (undocumented)
    /// - On failure, responds with [`SdkError<GetX12ProfileError>`](crate::error::GetX12ProfileError)
    pub fn get_x12_profile(&self) -> fluent_builders::GetX12Profile {
        fluent_builders::GetX12Profile::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`GetX12ProfileByInterchange`](crate::client::fluent_builders::GetX12ProfileByInterchange) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`interchange_identifier(X12InterchangeIdentifier)`](crate::client::fluent_builders::GetX12ProfileByInterchange::interchange_identifier) / [`set_interchange_identifier(Option<X12InterchangeIdentifier>)`](crate::client::fluent_builders::GetX12ProfileByInterchange::set_interchange_identifier): (undocumented)
    /// - On success, responds with [`GetX12ProfileByInterchangeOutput`](crate::output::GetX12ProfileByInterchangeOutput) with field(s):
    ///   - [`interchange_qualifier(Option<X12InterchangeQualifier>)`](crate::output::GetX12ProfileByInterchangeOutput::interchange_qualifier): (undocumented)
    ///   - [`interchange_id(Option<String>)`](crate::output::GetX12ProfileByInterchangeOutput::interchange_id): (undocumented)
    ///   - [`profile_id(Option<String>)`](crate::output::GetX12ProfileByInterchangeOutput::profile_id): (undocumented)
    ///   - [`profile_type(Option<ProfileType>)`](crate::output::GetX12ProfileByInterchangeOutput::profile_type): (undocumented)
    ///   - [`application_identifiers(Option<Vec<X12ApplicationId>>)`](crate::output::GetX12ProfileByInterchangeOutput::application_identifiers): Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
    ///   - [`created_at(Option<DateTime>)`](crate::output::GetX12ProfileByInterchangeOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::GetX12ProfileByInterchangeOutput::updated_at): (undocumented)
    /// - On failure, responds with [`SdkError<GetX12ProfileByInterchangeError>`](crate::error::GetX12ProfileByInterchangeError)
    pub fn get_x12_profile_by_interchange(&self) -> fluent_builders::GetX12ProfileByInterchange {
        fluent_builders::GetX12ProfileByInterchange::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`IncrementX12ControlNumber`](crate::client::fluent_builders::IncrementX12ControlNumber) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`control_number_type(X12ControlNumberType)`](crate::client::fluent_builders::IncrementX12ControlNumber::control_number_type) / [`set_control_number_type(Option<X12ControlNumberType>)`](crate::client::fluent_builders::IncrementX12ControlNumber::set_control_number_type): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::IncrementX12ControlNumber::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::IncrementX12ControlNumber::set_partnership_id): (undocumented)
    /// - On success, responds with [`IncrementX12ControlNumberOutput`](crate::output::IncrementX12ControlNumberOutput) with field(s):
    ///   - [`x12_control_number(Option<i64>)`](crate::output::IncrementX12ControlNumberOutput::x12_control_number): (undocumented)
    ///   - [`control_number_type(Option<X12ControlNumberType>)`](crate::output::IncrementX12ControlNumberOutput::control_number_type): (undocumented)
    /// - On failure, responds with [`SdkError<IncrementX12ControlNumberError>`](crate::error::IncrementX12ControlNumberError)
    pub fn increment_x12_control_number(&self) -> fluent_builders::IncrementX12ControlNumber {
        fluent_builders::IncrementX12ControlNumber::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`ListX12Partnerships`](crate::client::fluent_builders::ListX12Partnerships) operation.
    /// This operation supports pagination; See [`into_paginator()`](crate::client::fluent_builders::ListX12Partnerships::into_paginator).
    ///
    /// - The fluent builder is configurable:
    ///   - [`page_size(i32)`](crate::client::fluent_builders::ListX12Partnerships::page_size) / [`set_page_size(Option<i32>)`](crate::client::fluent_builders::ListX12Partnerships::set_page_size): The maximum number of elements to return in a page
    ///   - [`page_token(impl Into<String>)`](crate::client::fluent_builders::ListX12Partnerships::page_token) / [`set_page_token(Option<String>)`](crate::client::fluent_builders::ListX12Partnerships::set_page_token): The token used for pagination
    /// - On success, responds with [`ListX12PartnershipsOutput`](crate::output::ListX12PartnershipsOutput) with field(s):
    ///   - [`next_page_token(Option<String>)`](crate::output::ListX12PartnershipsOutput::next_page_token): The token used for pagination
    ///   - [`items(Option<Vec<X12PartnershipSummary>>)`](crate::output::ListX12PartnershipsOutput::items): (undocumented)
    /// - On failure, responds with [`SdkError<ListX12PartnershipsError>`](crate::error::ListX12PartnershipsError)
    pub fn list_x12_partnerships(&self) -> fluent_builders::ListX12Partnerships {
        fluent_builders::ListX12Partnerships::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`ListX12Profiles`](crate::client::fluent_builders::ListX12Profiles) operation.
    /// This operation supports pagination; See [`into_paginator()`](crate::client::fluent_builders::ListX12Profiles::into_paginator).
    ///
    /// - The fluent builder is configurable:
    ///   - [`page_size(i32)`](crate::client::fluent_builders::ListX12Profiles::page_size) / [`set_page_size(Option<i32>)`](crate::client::fluent_builders::ListX12Profiles::set_page_size): The maximum number of elements to return in a page
    ///   - [`page_token(impl Into<String>)`](crate::client::fluent_builders::ListX12Profiles::page_token) / [`set_page_token(Option<String>)`](crate::client::fluent_builders::ListX12Profiles::set_page_token): The token used for pagination
    /// - On success, responds with [`ListX12ProfilesOutput`](crate::output::ListX12ProfilesOutput) with field(s):
    ///   - [`next_page_token(Option<String>)`](crate::output::ListX12ProfilesOutput::next_page_token): The token used for pagination
    ///   - [`items(Option<Vec<X12ProfileSummary>>)`](crate::output::ListX12ProfilesOutput::items): (undocumented)
    /// - On failure, responds with [`SdkError<ListX12ProfilesError>`](crate::error::ListX12ProfilesError)
    pub fn list_x12_profiles(&self) -> fluent_builders::ListX12Profiles {
        fluent_builders::ListX12Profiles::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`SetOutboundX12ControlNumber`](crate::client::fluent_builders::SetOutboundX12ControlNumber) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`x12_control_number(i64)`](crate::client::fluent_builders::SetOutboundX12ControlNumber::x12_control_number) / [`set_x12_control_number(Option<i64>)`](crate::client::fluent_builders::SetOutboundX12ControlNumber::set_x12_control_number): (undocumented)
    ///   - [`control_number_type(X12ControlNumberType)`](crate::client::fluent_builders::SetOutboundX12ControlNumber::control_number_type) / [`set_control_number_type(Option<X12ControlNumberType>)`](crate::client::fluent_builders::SetOutboundX12ControlNumber::set_control_number_type): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::SetOutboundX12ControlNumber::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::SetOutboundX12ControlNumber::set_partnership_id): (undocumented)
    /// - On success, responds with [`SetOutboundX12ControlNumberOutput`](crate::output::SetOutboundX12ControlNumberOutput) with field(s):
    ///   - [`x12_control_number(Option<i64>)`](crate::output::SetOutboundX12ControlNumberOutput::x12_control_number): (undocumented)
    ///   - [`control_number_type(Option<X12ControlNumberType>)`](crate::output::SetOutboundX12ControlNumberOutput::control_number_type): (undocumented)
    /// - On failure, responds with [`SdkError<SetOutboundX12ControlNumberError>`](crate::error::SetOutboundX12ControlNumberError)
    pub fn set_outbound_x12_control_number(&self) -> fluent_builders::SetOutboundX12ControlNumber {
        fluent_builders::SetOutboundX12ControlNumber::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`UpdateInboundX12TransactionSettings`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`release(X12Release)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::release) / [`set_release(Option<X12Release>)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::set_release): (undocumented)
    ///   - [`transaction_set_identifier(X12TransactionSetCode)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::transaction_set_identifier) / [`set_transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::set_transaction_set_identifier): (undocumented)
    ///   - [`guide_id(impl Into<String>)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::guide_id) / [`set_guide_id(Option<String>)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::set_guide_id): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::set_partnership_id): (undocumented)
    ///   - [`inbound_x12_transaction_settings_id(impl Into<String>)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::inbound_x12_transaction_settings_id) / [`set_inbound_x12_transaction_settings_id(Option<String>)`](crate::client::fluent_builders::UpdateInboundX12TransactionSettings::set_inbound_x12_transaction_settings_id): (undocumented)
    /// - On success, responds with [`UpdateInboundX12TransactionSettingsOutput`](crate::output::UpdateInboundX12TransactionSettingsOutput) with field(s):
    ///   - [`release(Option<X12Release>)`](crate::output::UpdateInboundX12TransactionSettingsOutput::release): (undocumented)
    ///   - [`transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::output::UpdateInboundX12TransactionSettingsOutput::transaction_set_identifier): (undocumented)
    ///   - [`guide_id(Option<String>)`](crate::output::UpdateInboundX12TransactionSettingsOutput::guide_id): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::UpdateInboundX12TransactionSettingsOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::UpdateInboundX12TransactionSettingsOutput::updated_at): (undocumented)
    ///   - [`inbound_x12_transaction_settings_id(Option<String>)`](crate::output::UpdateInboundX12TransactionSettingsOutput::inbound_x12_transaction_settings_id): (undocumented)
    /// - On failure, responds with [`SdkError<UpdateInboundX12TransactionSettingsError>`](crate::error::UpdateInboundX12TransactionSettingsError)
    pub fn update_inbound_x12_transaction_settings(
        &self,
    ) -> fluent_builders::UpdateInboundX12TransactionSettings {
        fluent_builders::UpdateInboundX12TransactionSettings::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`UpdateOutboundX12TransactionSettings`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`release(X12Release)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::release) / [`set_release(Option<X12Release>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::set_release): (undocumented)
    ///   - [`transaction_set_identifier(X12TransactionSetCode)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::transaction_set_identifier) / [`set_transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::set_transaction_set_identifier): (undocumented)
    ///   - [`guide_id(impl Into<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::guide_id) / [`set_guide_id(Option<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::set_guide_id): (undocumented)
    ///   - [`local_application_id(impl Into<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::local_application_id) / [`set_local_application_id(Option<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::set_local_application_id): (undocumented)
    ///   - [`partner_application_id(impl Into<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::partner_application_id) / [`set_partner_application_id(Option<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::set_partner_application_id): (undocumented)
    ///   - [`bucket_connection(X12OutboundTransactionBucketConnection)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::bucket_connection) / [`set_bucket_connection(Option<X12OutboundTransactionBucketConnection>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::set_bucket_connection): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::set_partnership_id): (undocumented)
    ///   - [`outbound_x12_transaction_settings_id(impl Into<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::outbound_x12_transaction_settings_id) / [`set_outbound_x12_transaction_settings_id(Option<String>)`](crate::client::fluent_builders::UpdateOutboundX12TransactionSettings::set_outbound_x12_transaction_settings_id): (undocumented)
    /// - On success, responds with [`UpdateOutboundX12TransactionSettingsOutput`](crate::output::UpdateOutboundX12TransactionSettingsOutput) with field(s):
    ///   - [`release(Option<X12Release>)`](crate::output::UpdateOutboundX12TransactionSettingsOutput::release): (undocumented)
    ///   - [`transaction_set_identifier(Option<X12TransactionSetCode>)`](crate::output::UpdateOutboundX12TransactionSettingsOutput::transaction_set_identifier): (undocumented)
    ///   - [`guide_id(Option<String>)`](crate::output::UpdateOutboundX12TransactionSettingsOutput::guide_id): (undocumented)
    ///   - [`local_application_id(Option<String>)`](crate::output::UpdateOutboundX12TransactionSettingsOutput::local_application_id): (undocumented)
    ///   - [`partner_application_id(Option<String>)`](crate::output::UpdateOutboundX12TransactionSettingsOutput::partner_application_id): (undocumented)
    ///   - [`bucket_connection(Option<X12OutboundTransactionBucketConnection>)`](crate::output::UpdateOutboundX12TransactionSettingsOutput::bucket_connection): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::UpdateOutboundX12TransactionSettingsOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::UpdateOutboundX12TransactionSettingsOutput::updated_at): (undocumented)
    ///   - [`outbound_x12_transaction_settings_id(Option<String>)`](crate::output::UpdateOutboundX12TransactionSettingsOutput::outbound_x12_transaction_settings_id): (undocumented)
    /// - On failure, responds with [`SdkError<UpdateOutboundX12TransactionSettingsError>`](crate::error::UpdateOutboundX12TransactionSettingsError)
    pub fn update_outbound_x12_transaction_settings(
        &self,
    ) -> fluent_builders::UpdateOutboundX12TransactionSettings {
        fluent_builders::UpdateOutboundX12TransactionSettings::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`UpdateX12BucketConnection`](crate::client::fluent_builders::UpdateX12BucketConnection) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`inbound_subdirectory(impl Into<String>)`](crate::client::fluent_builders::UpdateX12BucketConnection::inbound_subdirectory) / [`set_inbound_subdirectory(Option<String>)`](crate::client::fluent_builders::UpdateX12BucketConnection::set_inbound_subdirectory): (undocumented)
    ///   - [`outbound_subdirectory(impl Into<String>)`](crate::client::fluent_builders::UpdateX12BucketConnection::outbound_subdirectory) / [`set_outbound_subdirectory(Option<String>)`](crate::client::fluent_builders::UpdateX12BucketConnection::set_outbound_subdirectory): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::UpdateX12BucketConnection::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::UpdateX12BucketConnection::set_partnership_id): (undocumented)
    ///   - [`bucket_connection_id(impl Into<String>)`](crate::client::fluent_builders::UpdateX12BucketConnection::bucket_connection_id) / [`set_bucket_connection_id(Option<String>)`](crate::client::fluent_builders::UpdateX12BucketConnection::set_bucket_connection_id): ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
    /// - On success, responds with [`UpdateX12BucketConnectionOutput`](crate::output::UpdateX12BucketConnectionOutput) with field(s):
    ///   - [`inbound_subdirectory(Option<String>)`](crate::output::UpdateX12BucketConnectionOutput::inbound_subdirectory): (undocumented)
    ///   - [`outbound_subdirectory(Option<String>)`](crate::output::UpdateX12BucketConnectionOutput::outbound_subdirectory): (undocumented)
    ///   - [`bucket_name(Option<String>)`](crate::output::UpdateX12BucketConnectionOutput::bucket_name): (undocumented)
    ///   - [`parent_directory(Option<String>)`](crate::output::UpdateX12BucketConnectionOutput::parent_directory): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::UpdateX12BucketConnectionOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::UpdateX12BucketConnectionOutput::updated_at): (undocumented)
    ///   - [`bucket_connection_id(Option<String>)`](crate::output::UpdateX12BucketConnectionOutput::bucket_connection_id): ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
    /// - On failure, responds with [`SdkError<UpdateX12BucketConnectionError>`](crate::error::UpdateX12BucketConnectionError)
    pub fn update_x12_bucket_connection(&self) -> fluent_builders::UpdateX12BucketConnection {
        fluent_builders::UpdateX12BucketConnection::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`UpdateX12Partnership`](crate::client::fluent_builders::UpdateX12Partnership) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`interchange_usage_indicator(X12UsageIndicator)`](crate::client::fluent_builders::UpdateX12Partnership::interchange_usage_indicator) / [`set_interchange_usage_indicator(Option<X12UsageIndicator>)`](crate::client::fluent_builders::UpdateX12Partnership::set_interchange_usage_indicator): (undocumented)
    ///   - [`timezone(Timezone)`](crate::client::fluent_builders::UpdateX12Partnership::timezone) / [`set_timezone(Option<Timezone>)`](crate::client::fluent_builders::UpdateX12Partnership::set_timezone): (undocumented)
    ///   - [`partnership_id(impl Into<String>)`](crate::client::fluent_builders::UpdateX12Partnership::partnership_id) / [`set_partnership_id(Option<String>)`](crate::client::fluent_builders::UpdateX12Partnership::set_partnership_id): (undocumented)
    /// - On success, responds with [`UpdateX12PartnershipOutput`](crate::output::UpdateX12PartnershipOutput) with field(s):
    ///   - [`partnership_id(Option<String>)`](crate::output::UpdateX12PartnershipOutput::partnership_id): (undocumented)
    ///   - [`local_profile_id(Option<String>)`](crate::output::UpdateX12PartnershipOutput::local_profile_id): (undocumented)
    ///   - [`partner_profile_id(Option<String>)`](crate::output::UpdateX12PartnershipOutput::partner_profile_id): (undocumented)
    ///   - [`interchange_usage_indicator(Option<X12UsageIndicator>)`](crate::output::UpdateX12PartnershipOutput::interchange_usage_indicator): (undocumented)
    ///   - [`timezone(Option<Timezone>)`](crate::output::UpdateX12PartnershipOutput::timezone): (undocumented)
    ///   - [`created_at(Option<DateTime>)`](crate::output::UpdateX12PartnershipOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::UpdateX12PartnershipOutput::updated_at): (undocumented)
    /// - On failure, responds with [`SdkError<UpdateX12PartnershipError>`](crate::error::UpdateX12PartnershipError)
    pub fn update_x12_partnership(&self) -> fluent_builders::UpdateX12Partnership {
        fluent_builders::UpdateX12Partnership::new(self.handle.clone())
    }
    /// Constructs a fluent builder for the [`UpdateX12Profile`](crate::client::fluent_builders::UpdateX12Profile) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`application_identifiers(Vec<X12ApplicationId>)`](crate::client::fluent_builders::UpdateX12Profile::application_identifiers) / [`set_application_identifiers(Option<Vec<X12ApplicationId>>)`](crate::client::fluent_builders::UpdateX12Profile::set_application_identifiers): Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
    ///   - [`profile_id(impl Into<String>)`](crate::client::fluent_builders::UpdateX12Profile::profile_id) / [`set_profile_id(Option<String>)`](crate::client::fluent_builders::UpdateX12Profile::set_profile_id): (undocumented)
    /// - On success, responds with [`UpdateX12ProfileOutput`](crate::output::UpdateX12ProfileOutput) with field(s):
    ///   - [`interchange_qualifier(Option<X12InterchangeQualifier>)`](crate::output::UpdateX12ProfileOutput::interchange_qualifier): (undocumented)
    ///   - [`interchange_id(Option<String>)`](crate::output::UpdateX12ProfileOutput::interchange_id): (undocumented)
    ///   - [`profile_id(Option<String>)`](crate::output::UpdateX12ProfileOutput::profile_id): (undocumented)
    ///   - [`profile_type(Option<ProfileType>)`](crate::output::UpdateX12ProfileOutput::profile_type): (undocumented)
    ///   - [`application_identifiers(Option<Vec<X12ApplicationId>>)`](crate::output::UpdateX12ProfileOutput::application_identifiers): Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
    ///   - [`created_at(Option<DateTime>)`](crate::output::UpdateX12ProfileOutput::created_at): (undocumented)
    ///   - [`updated_at(Option<DateTime>)`](crate::output::UpdateX12ProfileOutput::updated_at): (undocumented)
    /// - On failure, responds with [`SdkError<UpdateX12ProfileError>`](crate::error::UpdateX12ProfileError)
    pub fn update_x12_profile(&self) -> fluent_builders::UpdateX12Profile {
        fluent_builders::UpdateX12Profile::new(self.handle.clone())
    }
}
pub mod fluent_builders {

    //! Utilities to ergonomically construct a request to the service.
    //!
    //! Fluent builders are created through the [`Client`](crate::client::Client) by calling
    //! one if its operation methods. After parameters are set using the builder methods,
    //! the `send` method can be called to initiate the request.
    /// Fluent builder constructing a request to `CreateInboundX12TransactionSettings`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct CreateInboundX12TransactionSettings {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::create_inbound_x12_transaction_settings_input::Builder,
    }
    impl CreateInboundX12TransactionSettings {
        /// Creates a new `CreateInboundX12TransactionSettings`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::CreateInboundX12TransactionSettings,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<
                crate::error::CreateInboundX12TransactionSettingsError,
            >,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::CreateInboundX12TransactionSettingsOutput,
            aws_smithy_http::result::SdkError<
                crate::error::CreateInboundX12TransactionSettingsError,
            >,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn release(mut self, input: crate::model::X12Release) -> Self {
            self.inner = self.inner.release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_release(mut self, input: std::option::Option<crate::model::X12Release>) -> Self {
            self.inner = self.inner.set_release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn transaction_set_identifier(
            mut self,
            input: crate::model::X12TransactionSetCode,
        ) -> Self {
            self.inner = self.inner.transaction_set_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_transaction_set_identifier(
            mut self,
            input: std::option::Option<crate::model::X12TransactionSetCode>,
        ) -> Self {
            self.inner = self.inner.set_transaction_set_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn guide_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.guide_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_guide_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_guide_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `CreateOutboundX12TransactionSettings`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct CreateOutboundX12TransactionSettings {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::create_outbound_x12_transaction_settings_input::Builder,
    }
    impl CreateOutboundX12TransactionSettings {
        /// Creates a new `CreateOutboundX12TransactionSettings`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::CreateOutboundX12TransactionSettings,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<
                crate::error::CreateOutboundX12TransactionSettingsError,
            >,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::CreateOutboundX12TransactionSettingsOutput,
            aws_smithy_http::result::SdkError<
                crate::error::CreateOutboundX12TransactionSettingsError,
            >,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn release(mut self, input: crate::model::X12Release) -> Self {
            self.inner = self.inner.release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_release(mut self, input: std::option::Option<crate::model::X12Release>) -> Self {
            self.inner = self.inner.set_release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn transaction_set_identifier(
            mut self,
            input: crate::model::X12TransactionSetCode,
        ) -> Self {
            self.inner = self.inner.transaction_set_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_transaction_set_identifier(
            mut self,
            input: std::option::Option<crate::model::X12TransactionSetCode>,
        ) -> Self {
            self.inner = self.inner.set_transaction_set_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn guide_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.guide_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_guide_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_guide_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn local_application_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.local_application_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_local_application_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_local_application_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partner_application_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partner_application_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partner_application_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partner_application_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn bucket_connection(
            mut self,
            input: crate::model::X12OutboundTransactionBucketConnection,
        ) -> Self {
            self.inner = self.inner.bucket_connection(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_bucket_connection(
            mut self,
            input: std::option::Option<crate::model::X12OutboundTransactionBucketConnection>,
        ) -> Self {
            self.inner = self.inner.set_bucket_connection(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `CreateX12BucketConnection`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct CreateX12BucketConnection {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::create_x12_bucket_connection_input::Builder,
    }
    impl CreateX12BucketConnection {
        /// Creates a new `CreateX12BucketConnection`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::CreateX12BucketConnection,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::CreateX12BucketConnectionError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::CreateX12BucketConnectionOutput,
            aws_smithy_http::result::SdkError<crate::error::CreateX12BucketConnectionError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn inbound_subdirectory(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.inbound_subdirectory(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_inbound_subdirectory(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_inbound_subdirectory(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn outbound_subdirectory(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.outbound_subdirectory(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_outbound_subdirectory(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_outbound_subdirectory(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn bucket_name(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.bucket_name(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_bucket_name(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_bucket_name(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn parent_directory(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.parent_directory(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_parent_directory(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_parent_directory(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `CreateX12Partnership`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct CreateX12Partnership {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::create_x12_partnership_input::Builder,
    }
    impl CreateX12Partnership {
        /// Creates a new `CreateX12Partnership`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::CreateX12Partnership,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::CreateX12PartnershipError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::CreateX12PartnershipOutput,
            aws_smithy_http::result::SdkError<crate::error::CreateX12PartnershipError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn local_profile_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.local_profile_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_local_profile_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_local_profile_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partner_profile_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partner_profile_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partner_profile_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partner_profile_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn interchange_usage_indicator(
            mut self,
            input: crate::model::X12UsageIndicator,
        ) -> Self {
            self.inner = self.inner.interchange_usage_indicator(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_interchange_usage_indicator(
            mut self,
            input: std::option::Option<crate::model::X12UsageIndicator>,
        ) -> Self {
            self.inner = self.inner.set_interchange_usage_indicator(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn timezone(mut self, input: crate::model::Timezone) -> Self {
            self.inner = self.inner.timezone(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_timezone(mut self, input: std::option::Option<crate::model::Timezone>) -> Self {
            self.inner = self.inner.set_timezone(input);
            self
        }
    }
    /// Fluent builder constructing a request to `CreateX12Profile`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct CreateX12Profile {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::create_x12_profile_input::Builder,
    }
    impl CreateX12Profile {
        /// Creates a new `CreateX12Profile`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::CreateX12Profile,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::CreateX12ProfileError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::CreateX12ProfileOutput,
            aws_smithy_http::result::SdkError<crate::error::CreateX12ProfileError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn interchange_qualifier(
            mut self,
            input: crate::model::X12InterchangeQualifier,
        ) -> Self {
            self.inner = self.inner.interchange_qualifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_interchange_qualifier(
            mut self,
            input: std::option::Option<crate::model::X12InterchangeQualifier>,
        ) -> Self {
            self.inner = self.inner.set_interchange_qualifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn interchange_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.interchange_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_interchange_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_interchange_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn profile_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.profile_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_profile_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_profile_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn profile_type(mut self, input: crate::model::ProfileType) -> Self {
            self.inner = self.inner.profile_type(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_profile_type(
            mut self,
            input: std::option::Option<crate::model::ProfileType>,
        ) -> Self {
            self.inner = self.inner.set_profile_type(input);
            self
        }
        /// Appends an item to `applicationIdentifiers`.
        ///
        /// To override the contents of this collection use [`set_application_identifiers`](Self::set_application_identifiers).
        ///
        /// Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
        pub fn application_identifiers(mut self, input: crate::model::X12ApplicationId) -> Self {
            self.inner = self.inner.application_identifiers(input);
            self
        }
        /// Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
        pub fn set_application_identifiers(
            mut self,
            input: std::option::Option<std::vec::Vec<crate::model::X12ApplicationId>>,
        ) -> Self {
            self.inner = self.inner.set_application_identifiers(input);
            self
        }
    }
    /// Fluent builder constructing a request to `DeleteInboundX12TransactionSettings`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct DeleteInboundX12TransactionSettings {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::delete_inbound_x12_transaction_settings_input::Builder,
    }
    impl DeleteInboundX12TransactionSettings {
        /// Creates a new `DeleteInboundX12TransactionSettings`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::DeleteInboundX12TransactionSettings,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<
                crate::error::DeleteInboundX12TransactionSettingsError,
            >,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::DeleteInboundX12TransactionSettingsOutput,
            aws_smithy_http::result::SdkError<
                crate::error::DeleteInboundX12TransactionSettingsError,
            >,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn inbound_x12_transaction_settings_id(
            mut self,
            input: impl Into<std::string::String>,
        ) -> Self {
            self.inner = self.inner.inbound_x12_transaction_settings_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_inbound_x12_transaction_settings_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_inbound_x12_transaction_settings_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `DeleteOutboundX12TransactionSettings`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct DeleteOutboundX12TransactionSettings {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::delete_outbound_x12_transaction_settings_input::Builder,
    }
    impl DeleteOutboundX12TransactionSettings {
        /// Creates a new `DeleteOutboundX12TransactionSettings`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::DeleteOutboundX12TransactionSettings,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<
                crate::error::DeleteOutboundX12TransactionSettingsError,
            >,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::DeleteOutboundX12TransactionSettingsOutput,
            aws_smithy_http::result::SdkError<
                crate::error::DeleteOutboundX12TransactionSettingsError,
            >,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn outbound_x12_transaction_settings_id(
            mut self,
            input: impl Into<std::string::String>,
        ) -> Self {
            self.inner = self
                .inner
                .outbound_x12_transaction_settings_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_outbound_x12_transaction_settings_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_outbound_x12_transaction_settings_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `DeleteX12BucketConnection`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct DeleteX12BucketConnection {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::delete_x12_bucket_connection_input::Builder,
    }
    impl DeleteX12BucketConnection {
        /// Creates a new `DeleteX12BucketConnection`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::DeleteX12BucketConnection,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::DeleteX12BucketConnectionError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::DeleteX12BucketConnectionOutput,
            aws_smithy_http::result::SdkError<crate::error::DeleteX12BucketConnectionError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        /// ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
        pub fn bucket_connection_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.bucket_connection_id(input.into());
            self
        }
        /// ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
        pub fn set_bucket_connection_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_bucket_connection_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `DeleteX12Partnership`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct DeleteX12Partnership {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::delete_x12_partnership_input::Builder,
    }
    impl DeleteX12Partnership {
        /// Creates a new `DeleteX12Partnership`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::DeleteX12Partnership,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::DeleteX12PartnershipError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::DeleteX12PartnershipOutput,
            aws_smithy_http::result::SdkError<crate::error::DeleteX12PartnershipError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `DeleteX12Profile`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct DeleteX12Profile {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::delete_x12_profile_input::Builder,
    }
    impl DeleteX12Profile {
        /// Creates a new `DeleteX12Profile`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::DeleteX12Profile,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::DeleteX12ProfileError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::DeleteX12ProfileOutput,
            aws_smithy_http::result::SdkError<crate::error::DeleteX12ProfileError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn profile_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.profile_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_profile_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_profile_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GenerateEdi`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GenerateEdi {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::generate_edi_input::Builder,
    }
    impl GenerateEdi {
        /// Creates a new `GenerateEdi`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GenerateEdi,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GenerateEdiError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GenerateEdiOutput,
            aws_smithy_http::result::SdkError<crate::error::GenerateEdiError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn release(mut self, input: crate::model::X12Release) -> Self {
            self.inner = self.inner.release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_release(mut self, input: std::option::Option<crate::model::X12Release>) -> Self {
            self.inner = self.inner.set_release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn transaction_set_identifier(
            mut self,
            input: crate::model::X12TransactionSetCode,
        ) -> Self {
            self.inner = self.inner.transaction_set_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_transaction_set_identifier(
            mut self,
            input: std::option::Option<crate::model::X12TransactionSetCode>,
        ) -> Self {
            self.inner = self.inner.set_transaction_set_identifier(input);
            self
        }
        /// Appends an item to `transactions`.
        ///
        /// To override the contents of this collection use [`set_transactions`](Self::set_transactions).
        ///
        #[allow(missing_docs)] // documentation missing in model
        pub fn transactions(mut self, input: aws_smithy_types::Document) -> Self {
            self.inner = self.inner.transactions(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_transactions(
            mut self,
            input: std::option::Option<std::vec::Vec<aws_smithy_types::Document>>,
        ) -> Self {
            self.inner = self.inner.set_transactions(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn interchange_usage_indicator_override(
            mut self,
            input: crate::model::X12UsageIndicator,
        ) -> Self {
            self.inner = self.inner.interchange_usage_indicator_override(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_interchange_usage_indicator_override(
            mut self,
            input: std::option::Option<crate::model::X12UsageIndicator>,
        ) -> Self {
            self.inner = self.inner.set_interchange_usage_indicator_override(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GetInboundX12TransactionSettings`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GetInboundX12TransactionSettings {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::get_inbound_x12_transaction_settings_input::Builder,
    }
    impl GetInboundX12TransactionSettings {
        /// Creates a new `GetInboundX12TransactionSettings`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GetInboundX12TransactionSettings,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GetInboundX12TransactionSettingsError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GetInboundX12TransactionSettingsOutput,
            aws_smithy_http::result::SdkError<crate::error::GetInboundX12TransactionSettingsError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn inbound_x12_transaction_settings_id(
            mut self,
            input: impl Into<std::string::String>,
        ) -> Self {
            self.inner = self.inner.inbound_x12_transaction_settings_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_inbound_x12_transaction_settings_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_inbound_x12_transaction_settings_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GetOutboundX12ControlNumbers`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GetOutboundX12ControlNumbers {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::get_outbound_x12_control_numbers_input::Builder,
    }
    impl GetOutboundX12ControlNumbers {
        /// Creates a new `GetOutboundX12ControlNumbers`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GetOutboundX12ControlNumbers,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GetOutboundX12ControlNumbersError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GetOutboundX12ControlNumbersOutput,
            aws_smithy_http::result::SdkError<crate::error::GetOutboundX12ControlNumbersError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GetOutboundX12TransactionSettings`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GetOutboundX12TransactionSettings {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::get_outbound_x12_transaction_settings_input::Builder,
    }
    impl GetOutboundX12TransactionSettings {
        /// Creates a new `GetOutboundX12TransactionSettings`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GetOutboundX12TransactionSettings,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GetOutboundX12TransactionSettingsError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GetOutboundX12TransactionSettingsOutput,
            aws_smithy_http::result::SdkError<crate::error::GetOutboundX12TransactionSettingsError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn outbound_x12_transaction_settings_id(
            mut self,
            input: impl Into<std::string::String>,
        ) -> Self {
            self.inner = self
                .inner
                .outbound_x12_transaction_settings_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_outbound_x12_transaction_settings_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_outbound_x12_transaction_settings_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GetX12BucketConnection`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GetX12BucketConnection {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::get_x12_bucket_connection_input::Builder,
    }
    impl GetX12BucketConnection {
        /// Creates a new `GetX12BucketConnection`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GetX12BucketConnection,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GetX12BucketConnectionError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GetX12BucketConnectionOutput,
            aws_smithy_http::result::SdkError<crate::error::GetX12BucketConnectionError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        /// ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
        pub fn bucket_connection_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.bucket_connection_id(input.into());
            self
        }
        /// ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
        pub fn set_bucket_connection_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_bucket_connection_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GetX12Connections`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GetX12Connections {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::get_x12_connections_input::Builder,
    }
    impl GetX12Connections {
        /// Creates a new `GetX12Connections`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GetX12Connections,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GetX12ConnectionsError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GetX12ConnectionsOutput,
            aws_smithy_http::result::SdkError<crate::error::GetX12ConnectionsError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GetX12Partnership`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GetX12Partnership {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::get_x12_partnership_input::Builder,
    }
    impl GetX12Partnership {
        /// Creates a new `GetX12Partnership`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GetX12Partnership,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GetX12PartnershipError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GetX12PartnershipOutput,
            aws_smithy_http::result::SdkError<crate::error::GetX12PartnershipError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GetX12PartnershipByInterchanges`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GetX12PartnershipByInterchanges {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::get_x12_partnership_by_interchanges_input::Builder,
    }
    impl GetX12PartnershipByInterchanges {
        /// Creates a new `GetX12PartnershipByInterchanges`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GetX12PartnershipByInterchanges,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GetX12PartnershipByInterchangesError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GetX12PartnershipByInterchangesOutput,
            aws_smithy_http::result::SdkError<crate::error::GetX12PartnershipByInterchangesError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn local_interchange_identifier(
            mut self,
            input: crate::model::X12InterchangeIdentifier,
        ) -> Self {
            self.inner = self.inner.local_interchange_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_local_interchange_identifier(
            mut self,
            input: std::option::Option<crate::model::X12InterchangeIdentifier>,
        ) -> Self {
            self.inner = self.inner.set_local_interchange_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partner_interchange_identifier(
            mut self,
            input: crate::model::X12InterchangeIdentifier,
        ) -> Self {
            self.inner = self.inner.partner_interchange_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partner_interchange_identifier(
            mut self,
            input: std::option::Option<crate::model::X12InterchangeIdentifier>,
        ) -> Self {
            self.inner = self.inner.set_partner_interchange_identifier(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GetX12Profile`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GetX12Profile {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::get_x12_profile_input::Builder,
    }
    impl GetX12Profile {
        /// Creates a new `GetX12Profile`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GetX12Profile,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GetX12ProfileError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GetX12ProfileOutput,
            aws_smithy_http::result::SdkError<crate::error::GetX12ProfileError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn profile_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.profile_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_profile_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_profile_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `GetX12ProfileByInterchange`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct GetX12ProfileByInterchange {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::get_x12_profile_by_interchange_input::Builder,
    }
    impl GetX12ProfileByInterchange {
        /// Creates a new `GetX12ProfileByInterchange`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::GetX12ProfileByInterchange,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::GetX12ProfileByInterchangeError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::GetX12ProfileByInterchangeOutput,
            aws_smithy_http::result::SdkError<crate::error::GetX12ProfileByInterchangeError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn interchange_identifier(
            mut self,
            input: crate::model::X12InterchangeIdentifier,
        ) -> Self {
            self.inner = self.inner.interchange_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_interchange_identifier(
            mut self,
            input: std::option::Option<crate::model::X12InterchangeIdentifier>,
        ) -> Self {
            self.inner = self.inner.set_interchange_identifier(input);
            self
        }
    }
    /// Fluent builder constructing a request to `IncrementX12ControlNumber`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct IncrementX12ControlNumber {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::increment_x12_control_number_input::Builder,
    }
    impl IncrementX12ControlNumber {
        /// Creates a new `IncrementX12ControlNumber`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::IncrementX12ControlNumber,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::IncrementX12ControlNumberError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::IncrementX12ControlNumberOutput,
            aws_smithy_http::result::SdkError<crate::error::IncrementX12ControlNumberError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn control_number_type(mut self, input: crate::model::X12ControlNumberType) -> Self {
            self.inner = self.inner.control_number_type(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_control_number_type(
            mut self,
            input: std::option::Option<crate::model::X12ControlNumberType>,
        ) -> Self {
            self.inner = self.inner.set_control_number_type(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `ListX12Partnerships`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct ListX12Partnerships {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::list_x12_partnerships_input::Builder,
    }
    impl ListX12Partnerships {
        /// Creates a new `ListX12Partnerships`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::ListX12Partnerships,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::ListX12PartnershipsError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::ListX12PartnershipsOutput,
            aws_smithy_http::result::SdkError<crate::error::ListX12PartnershipsError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        /// Create a paginator for this request
        ///
        /// Paginators are used by calling [`send().await`](crate::paginator::ListX12PartnershipsPaginator::send) which returns a `Stream`.
        pub fn into_paginator(self) -> crate::paginator::ListX12PartnershipsPaginator {
            crate::paginator::ListX12PartnershipsPaginator::new(self.handle, self.inner)
        }
        /// The maximum number of elements to return in a page
        pub fn page_size(mut self, input: i32) -> Self {
            self.inner = self.inner.page_size(input);
            self
        }
        /// The maximum number of elements to return in a page
        pub fn set_page_size(mut self, input: std::option::Option<i32>) -> Self {
            self.inner = self.inner.set_page_size(input);
            self
        }
        /// The token used for pagination
        pub fn page_token(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.page_token(input.into());
            self
        }
        /// The token used for pagination
        pub fn set_page_token(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_page_token(input);
            self
        }
    }
    /// Fluent builder constructing a request to `ListX12Profiles`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct ListX12Profiles {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::list_x12_profiles_input::Builder,
    }
    impl ListX12Profiles {
        /// Creates a new `ListX12Profiles`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::ListX12Profiles,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::ListX12ProfilesError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::ListX12ProfilesOutput,
            aws_smithy_http::result::SdkError<crate::error::ListX12ProfilesError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        /// Create a paginator for this request
        ///
        /// Paginators are used by calling [`send().await`](crate::paginator::ListX12ProfilesPaginator::send) which returns a `Stream`.
        pub fn into_paginator(self) -> crate::paginator::ListX12ProfilesPaginator {
            crate::paginator::ListX12ProfilesPaginator::new(self.handle, self.inner)
        }
        /// The maximum number of elements to return in a page
        pub fn page_size(mut self, input: i32) -> Self {
            self.inner = self.inner.page_size(input);
            self
        }
        /// The maximum number of elements to return in a page
        pub fn set_page_size(mut self, input: std::option::Option<i32>) -> Self {
            self.inner = self.inner.set_page_size(input);
            self
        }
        /// The token used for pagination
        pub fn page_token(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.page_token(input.into());
            self
        }
        /// The token used for pagination
        pub fn set_page_token(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_page_token(input);
            self
        }
    }
    /// Fluent builder constructing a request to `SetOutboundX12ControlNumber`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct SetOutboundX12ControlNumber {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::set_outbound_x12_control_number_input::Builder,
    }
    impl SetOutboundX12ControlNumber {
        /// Creates a new `SetOutboundX12ControlNumber`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::SetOutboundX12ControlNumber,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::SetOutboundX12ControlNumberError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::SetOutboundX12ControlNumberOutput,
            aws_smithy_http::result::SdkError<crate::error::SetOutboundX12ControlNumberError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn x12_control_number(mut self, input: i64) -> Self {
            self.inner = self.inner.x12_control_number(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_x12_control_number(mut self, input: std::option::Option<i64>) -> Self {
            self.inner = self.inner.set_x12_control_number(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn control_number_type(mut self, input: crate::model::X12ControlNumberType) -> Self {
            self.inner = self.inner.control_number_type(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_control_number_type(
            mut self,
            input: std::option::Option<crate::model::X12ControlNumberType>,
        ) -> Self {
            self.inner = self.inner.set_control_number_type(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `UpdateInboundX12TransactionSettings`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct UpdateInboundX12TransactionSettings {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::update_inbound_x12_transaction_settings_input::Builder,
    }
    impl UpdateInboundX12TransactionSettings {
        /// Creates a new `UpdateInboundX12TransactionSettings`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::UpdateInboundX12TransactionSettings,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<
                crate::error::UpdateInboundX12TransactionSettingsError,
            >,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::UpdateInboundX12TransactionSettingsOutput,
            aws_smithy_http::result::SdkError<
                crate::error::UpdateInboundX12TransactionSettingsError,
            >,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn release(mut self, input: crate::model::X12Release) -> Self {
            self.inner = self.inner.release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_release(mut self, input: std::option::Option<crate::model::X12Release>) -> Self {
            self.inner = self.inner.set_release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn transaction_set_identifier(
            mut self,
            input: crate::model::X12TransactionSetCode,
        ) -> Self {
            self.inner = self.inner.transaction_set_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_transaction_set_identifier(
            mut self,
            input: std::option::Option<crate::model::X12TransactionSetCode>,
        ) -> Self {
            self.inner = self.inner.set_transaction_set_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn guide_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.guide_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_guide_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_guide_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn inbound_x12_transaction_settings_id(
            mut self,
            input: impl Into<std::string::String>,
        ) -> Self {
            self.inner = self.inner.inbound_x12_transaction_settings_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_inbound_x12_transaction_settings_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_inbound_x12_transaction_settings_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `UpdateOutboundX12TransactionSettings`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct UpdateOutboundX12TransactionSettings {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::update_outbound_x12_transaction_settings_input::Builder,
    }
    impl UpdateOutboundX12TransactionSettings {
        /// Creates a new `UpdateOutboundX12TransactionSettings`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::UpdateOutboundX12TransactionSettings,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<
                crate::error::UpdateOutboundX12TransactionSettingsError,
            >,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::UpdateOutboundX12TransactionSettingsOutput,
            aws_smithy_http::result::SdkError<
                crate::error::UpdateOutboundX12TransactionSettingsError,
            >,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn release(mut self, input: crate::model::X12Release) -> Self {
            self.inner = self.inner.release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_release(mut self, input: std::option::Option<crate::model::X12Release>) -> Self {
            self.inner = self.inner.set_release(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn transaction_set_identifier(
            mut self,
            input: crate::model::X12TransactionSetCode,
        ) -> Self {
            self.inner = self.inner.transaction_set_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_transaction_set_identifier(
            mut self,
            input: std::option::Option<crate::model::X12TransactionSetCode>,
        ) -> Self {
            self.inner = self.inner.set_transaction_set_identifier(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn guide_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.guide_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_guide_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_guide_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn local_application_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.local_application_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_local_application_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_local_application_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partner_application_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partner_application_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partner_application_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partner_application_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn bucket_connection(
            mut self,
            input: crate::model::X12OutboundTransactionBucketConnection,
        ) -> Self {
            self.inner = self.inner.bucket_connection(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_bucket_connection(
            mut self,
            input: std::option::Option<crate::model::X12OutboundTransactionBucketConnection>,
        ) -> Self {
            self.inner = self.inner.set_bucket_connection(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn outbound_x12_transaction_settings_id(
            mut self,
            input: impl Into<std::string::String>,
        ) -> Self {
            self.inner = self
                .inner
                .outbound_x12_transaction_settings_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_outbound_x12_transaction_settings_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_outbound_x12_transaction_settings_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `UpdateX12BucketConnection`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct UpdateX12BucketConnection {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::update_x12_bucket_connection_input::Builder,
    }
    impl UpdateX12BucketConnection {
        /// Creates a new `UpdateX12BucketConnection`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::UpdateX12BucketConnection,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::UpdateX12BucketConnectionError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::UpdateX12BucketConnectionOutput,
            aws_smithy_http::result::SdkError<crate::error::UpdateX12BucketConnectionError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn inbound_subdirectory(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.inbound_subdirectory(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_inbound_subdirectory(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_inbound_subdirectory(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn outbound_subdirectory(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.outbound_subdirectory(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_outbound_subdirectory(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_outbound_subdirectory(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
        /// ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
        pub fn bucket_connection_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.bucket_connection_id(input.into());
            self
        }
        /// ------------------------------------------- Connections ------------------------------------------- Autogenerated identifier for a bucket connection
        pub fn set_bucket_connection_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_bucket_connection_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `UpdateX12Partnership`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct UpdateX12Partnership {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::update_x12_partnership_input::Builder,
    }
    impl UpdateX12Partnership {
        /// Creates a new `UpdateX12Partnership`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::UpdateX12Partnership,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::UpdateX12PartnershipError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::UpdateX12PartnershipOutput,
            aws_smithy_http::result::SdkError<crate::error::UpdateX12PartnershipError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn interchange_usage_indicator(
            mut self,
            input: crate::model::X12UsageIndicator,
        ) -> Self {
            self.inner = self.inner.interchange_usage_indicator(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_interchange_usage_indicator(
            mut self,
            input: std::option::Option<crate::model::X12UsageIndicator>,
        ) -> Self {
            self.inner = self.inner.set_interchange_usage_indicator(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn timezone(mut self, input: crate::model::Timezone) -> Self {
            self.inner = self.inner.timezone(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_timezone(mut self, input: std::option::Option<crate::model::Timezone>) -> Self {
            self.inner = self.inner.set_timezone(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn partnership_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.partnership_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_partnership_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_partnership_id(input);
            self
        }
    }
    /// Fluent builder constructing a request to `UpdateX12Profile`.
    ///
    #[derive(std::clone::Clone, std::fmt::Debug)]
    pub struct UpdateX12Profile {
        handle: std::sync::Arc<super::Handle>,
        inner: crate::input::update_x12_profile_input::Builder,
    }
    impl UpdateX12Profile {
        /// Creates a new `UpdateX12Profile`.
        pub(crate) fn new(handle: std::sync::Arc<super::Handle>) -> Self {
            Self {
                handle,
                inner: Default::default(),
            }
        }

        /// Consume this builder, creating a customizable operation that can be modified before being
        /// sent. The operation's inner [http::Request] can be modified as well.
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::UpdateX12Profile,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::UpdateX12ProfileError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::UpdateX12ProfileOutput,
            aws_smithy_http::result::SdkError<crate::error::UpdateX12ProfileError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }
        /// Appends an item to `applicationIdentifiers`.
        ///
        /// To override the contents of this collection use [`set_application_identifiers`](Self::set_application_identifiers).
        ///
        /// Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
        pub fn application_identifiers(mut self, input: crate::model::X12ApplicationId) -> Self {
            self.inner = self.inner.application_identifiers(input);
            self
        }
        /// Store the application ids provided by your partner, with the ability to select one as the default. These values can be used to configure the GS-02, GS-03 of the outbound transaction settings.
        pub fn set_application_identifiers(
            mut self,
            input: std::option::Option<std::vec::Vec<crate::model::X12ApplicationId>>,
        ) -> Self {
            self.inner = self.inner.set_application_identifiers(input);
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn profile_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.profile_id(input.into());
            self
        }
        #[allow(missing_docs)] // documentation missing in model
        pub fn set_profile_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_profile_id(input);
            self
        }
    }
}

impl Client {
    /// Creates a new client from an [SDK Config](stedi_sdk_config::sdk_config::SdkConfig).
    ///
    /// # Panics
    ///
    /// - This method will panic if the `sdk_config` is missing an async sleep implementation. If you experience this panic, set
    ///     the `sleep_impl` on the Config passed into this function to fix it.
    /// - This method will panic if the `sdk_config` is missing an HTTP connector. If you experience this panic, set the
    ///     `http_connector` on the Config passed into this function to fix it.
    pub fn new(sdk_config: &stedi_sdk_config::sdk_config::SdkConfig) -> Self {
        Self::from_conf(sdk_config.into())
    }

    /// Creates a new client from the service [`Config`](crate::Config).
    ///
    /// # Panics
    ///
    /// - This method will panic if the `conf` is missing an async sleep implementation. If you experience this panic, set
    ///     the `sleep_impl` on the Config passed into this function to fix it.
    /// - This method will panic if the `conf` is missing an HTTP connector. If you experience this panic, set the
    ///     `http_connector` on the Config passed into this function to fix it.
    pub fn from_conf(conf: crate::Config) -> Self {
        let retry_config = conf
            .retry_config()
            .cloned()
            .unwrap_or_else(aws_smithy_types::retry::RetryConfig::disabled);
        let timeout_config = conf
            .timeout_config()
            .cloned()
            .unwrap_or_else(aws_smithy_types::timeout::TimeoutConfig::disabled);
        let sleep_impl = conf.sleep_impl();
        if (retry_config.has_retry() || timeout_config.has_timeouts()) && sleep_impl.is_none() {
            panic!("An async sleep implementation is required for retries or timeouts to work. \
                                    Set the `sleep_impl` on the Config passed into this function to fix this panic.");
        }

        let connector = conf.http_connector().and_then(|c| {
            let timeout_config = conf
                .timeout_config()
                .cloned()
                .unwrap_or_else(aws_smithy_types::timeout::TimeoutConfig::disabled);
            let connector_settings =
                aws_smithy_client::http_connector::ConnectorSettings::from_timeout_config(
                    &timeout_config,
                );
            c.connector(&connector_settings, conf.sleep_impl())
        });

        let builder = aws_smithy_client::Builder::new();

        let builder = match connector {
            // Use provided connector
            Some(c) => builder.connector(c),
            None => {
                #[cfg(any(feature = "rustls", feature = "native-tls"))]
                {
                    // Use default connector based on enabled features
                    builder.dyn_https_connector(
                        aws_smithy_client::http_connector::ConnectorSettings::from_timeout_config(
                            &timeout_config,
                        ),
                    )
                }
                #[cfg(not(any(feature = "rustls", feature = "native-tls")))]
                {
                    panic!("No HTTP connector was available. Enable the `rustls` or `native-tls` crate feature or set a connector to fix this.");
                }
            }
        };
        let mut builder = builder
            .middleware(aws_smithy_client::erase::DynMiddleware::new(
                crate::middleware::DefaultMiddleware::new(),
            ))
            .retry_config(retry_config.into())
            .operation_timeout_config(timeout_config.into());
        builder.set_sleep_impl(sleep_impl);
        let client = builder.build();

        Self {
            handle: std::sync::Arc::new(Handle { client, conf }),
        }
    }
}
