// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateApp`](crate::operation::create_app::builders::CreateAppFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`name(impl Into<String>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::set_name):<br>required: **false**<br><p>The name of the new application.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::set_description):<br>required: **false**<br><p>The description of the new application</p><br>
/// - [`role_name(impl Into<String>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::role_name) / [`set_role_name(Option<String>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::set_role_name):<br>required: **false**<br><p>The name of the service role in the customer's account to be used by Server Migration Service.</p><br>
/// - [`client_token(impl Into<String>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique, case-sensitive identifier that you provide to ensure the idempotency of application creation.</p><br>
/// - [`server_groups(ServerGroup)`](crate::operation::create_app::builders::CreateAppFluentBuilder::server_groups) / [`set_server_groups(Option<Vec::<ServerGroup>>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::set_server_groups):<br>required: **false**<br><p>The server groups to include in the application.</p><br>
/// - [`tags(Tag)`](crate::operation::create_app::builders::CreateAppFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_app::builders::CreateAppFluentBuilder::set_tags):<br>required: **false**<br><p>The tags to be associated with the application.</p><br>
/// - On success, responds with [`CreateAppOutput`](crate::operation::create_app::CreateAppOutput) with field(s):
/// - [`app_summary(Option<AppSummary>)`](crate::operation::create_app::CreateAppOutput::app_summary): <p>A summary description of the application.</p>
/// - [`server_groups(Option<Vec::<ServerGroup>>)`](crate::operation::create_app::CreateAppOutput::server_groups): <p>The server groups included in the application.</p>
/// - [`tags(Option<Vec::<Tag>>)`](crate::operation::create_app::CreateAppOutput::tags): <p>The tags associated with the application.</p>
/// - On failure, responds with [`SdkError<CreateAppError>`](crate::operation::create_app::CreateAppError)
pub fn create_app(&self) -> crate::operation::create_app::builders::CreateAppFluentBuilder {
crate::operation::create_app::builders::CreateAppFluentBuilder::new(self.handle.clone())
}
}