// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateNetworkMigrationDefinition`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`name(impl Into<String>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::set_name):<br>required: **true**<br><p>The name of the network migration definition.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::set_description):<br>required: **false**<br><p>A description of the network migration definition.</p><br>
/// - [`source_configurations(SourceConfiguration)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::source_configurations) / [`set_source_configurations(Option<Vec::<SourceConfiguration>>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::set_source_configurations):<br>required: **false**<br><p>A list of source configurations for the network migration.</p><br>
/// - [`target_s3_configuration(TargetS3Configuration)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::target_s3_configuration) / [`set_target_s3_configuration(Option<TargetS3Configuration>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::set_target_s3_configuration):<br>required: **true**<br><p>The S3 configuration for storing the target network artifacts.</p><br>
/// - [`target_network(TargetNetwork)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::target_network) / [`set_target_network(Option<TargetNetwork>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::set_target_network):<br>required: **true**<br><p>The target network configuration including topology and CIDR ranges.</p><br>
/// - [`target_deployment(TargetDeployment)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::target_deployment) / [`set_target_deployment(Option<TargetDeployment>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::set_target_deployment):<br>required: **false**<br><p>The target deployment configuration for the migrated network.</p><br>
/// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::set_tags):<br>required: **false**<br><p>Tags to assign to the network migration definition.</p><br>
/// - [`scope_tags(impl Into<String>, impl Into<String>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::scope_tags) / [`set_scope_tags(Option<HashMap::<String, String>>)`](crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::set_scope_tags):<br>required: **false**<br><p>Scope tags for the network migration definition to control access and organization.</p><br>
/// - On success, responds with [`CreateNetworkMigrationDefinitionOutput`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput) with field(s):
/// - [`arn(Option<String>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::arn): <p>The Amazon Resource Name (ARN) of the network migration definition.</p>
/// - [`network_migration_definition_id(Option<String>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::network_migration_definition_id): <p>The unique identifier of the network migration definition.</p>
/// - [`name(Option<String>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::name): <p>The name of the network migration definition.</p>
/// - [`description(Option<String>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::description): <p>A description of the network migration definition.</p>
/// - [`source_configurations(Option<Vec::<SourceConfiguration>>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::source_configurations): <p>A list of source configurations for the network migration.</p>
/// - [`target_s3_configuration(Option<TargetS3Configuration>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::target_s3_configuration): <p>The S3 configuration for storing the target network artifacts.</p>
/// - [`target_network(Option<TargetNetwork>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::target_network): <p>The target network configuration including topology and CIDR ranges.</p>
/// - [`target_deployment(Option<TargetDeployment>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::target_deployment): <p>The target deployment configuration for the migrated network.</p>
/// - [`created_at(Option<DateTime>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::created_at): <p>The timestamp when the network migration definition was created.</p>
/// - [`updated_at(Option<DateTime>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::updated_at): <p>The timestamp when the network migration definition was last updated.</p>
/// - [`tags(Option<HashMap::<String, String>>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::tags): <p>Tags assigned to the network migration definition.</p>
/// - [`scope_tags(Option<HashMap::<String, String>>)`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionOutput::scope_tags): <p>Scope tags for the network migration definition.</p>
/// - On failure, responds with [`SdkError<CreateNetworkMigrationDefinitionError>`](crate::operation::create_network_migration_definition::CreateNetworkMigrationDefinitionError)
pub fn create_network_migration_definition(
&self,
) -> crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder {
crate::operation::create_network_migration_definition::builders::CreateNetworkMigrationDefinitionFluentBuilder::new(self.handle.clone())
}
}