// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateIndex`](crate::operation::create_index::builders::CreateIndexFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`application_id(impl Into<String>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::application_id) / [`set_application_id(Option<String>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::set_application_id):<br>required: **true**<br><p>The identifier of the Amazon Q application using the index.</p><br>
/// - [`display_name(impl Into<String>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::display_name) / [`set_display_name(Option<String>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::set_display_name):<br>required: **true**<br><p>A name for the Amazon Q index.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::set_description):<br>required: **false**<br><p>A description for the Amazon Q index.</p><br>
/// - [`tags(Tag)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::set_tags):<br>required: **false**<br><p>A list of key-value pairs that identify or categorize the index. You can also use tags to help control access to the index. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.</p><br>
/// - [`capacity_configuration(IndexCapacityConfiguration)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::capacity_configuration) / [`set_capacity_configuration(Option<IndexCapacityConfiguration>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::set_capacity_configuration):<br>required: **false**<br><p>The capacity units you want to provision for your index. You can add and remove capacity to fit your usage needs.</p><br>
/// - [`client_token(impl Into<String>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_index::builders::CreateIndexFluentBuilder::set_client_token):<br>required: **false**<br><p>A token that you provide to identify the request to create an index. Multiple calls to the <code>CreateIndex</code> API with the same client token will create only one index.</p><br>
/// - On success, responds with [`CreateIndexOutput`](crate::operation::create_index::CreateIndexOutput) with field(s):
/// - [`index_id(Option<String>)`](crate::operation::create_index::CreateIndexOutput::index_id): <p>The identifier for the Amazon Q index.</p>
/// - [`index_arn(Option<String>)`](crate::operation::create_index::CreateIndexOutput::index_arn): <p> The Amazon Resource Name (ARN) of an Amazon Q index.</p>
/// - On failure, responds with [`SdkError<CreateIndexError>`](crate::operation::create_index::CreateIndexError)
pub fn create_index(&self) -> crate::operation::create_index::builders::CreateIndexFluentBuilder {
crate::operation::create_index::builders::CreateIndexFluentBuilder::new(self.handle.clone())
}
}