Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.qbusiness.kotlin
import com.pulumi.awsnative.kotlin.inputs.TagArgs
import com.pulumi.awsnative.kotlin.inputs.TagArgsBuilder
import com.pulumi.awsnative.qbusiness.IndexArgs.builder
import com.pulumi.awsnative.qbusiness.kotlin.enums.IndexType
import com.pulumi.awsnative.qbusiness.kotlin.inputs.IndexCapacityConfigurationArgs
import com.pulumi.awsnative.qbusiness.kotlin.inputs.IndexCapacityConfigurationArgsBuilder
import com.pulumi.awsnative.qbusiness.kotlin.inputs.IndexDocumentAttributeConfigurationArgs
import com.pulumi.awsnative.qbusiness.kotlin.inputs.IndexDocumentAttributeConfigurationArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Definition of AWS::QBusiness::Index Resource Type
* @property applicationId The identifier of the Amazon Q Business application using the index.
* @property capacityConfiguration The capacity units you want to provision for your index. You can add and remove capacity to fit your usage needs.
* @property description A description for the Amazon Q Business index.
* @property displayName The name of the index.
* @property documentAttributeConfigurations Configuration information for document attributes. Document attributes are metadata or fields associated with your documents. For example, the company department name associated with each document.
* For more information, see [Understanding document attributes](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes.html) .
* @property tags 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: _ . : / = + - @.
* @property type The index type that's suitable for your needs. For more information on what's included in each type of index, see [Amazon Q Business tiers](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/tiers.html#index-tiers) .
*/
public data class IndexArgs(
public val applicationId: Output? = null,
public val capacityConfiguration: Output? = null,
public val description: Output? = null,
public val displayName: Output? = null,
public val documentAttributeConfigurations: Output>? =
null,
public val tags: Output>? = null,
public val type: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.qbusiness.IndexArgs =
com.pulumi.awsnative.qbusiness.IndexArgs.builder()
.applicationId(applicationId?.applyValue({ args0 -> args0 }))
.capacityConfiguration(
capacityConfiguration?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.description(description?.applyValue({ args0 -> args0 }))
.displayName(displayName?.applyValue({ args0 -> args0 }))
.documentAttributeConfigurations(
documentAttributeConfigurations?.applyValue({ args0 ->
args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.tags(tags?.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
.type(type?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [IndexArgs].
*/
@PulumiTagMarker
public class IndexArgsBuilder internal constructor() {
private var applicationId: Output? = null
private var capacityConfiguration: Output? = null
private var description: Output? = null
private var displayName: Output? = null
private var documentAttributeConfigurations:
Output>? = null
private var tags: Output>? = null
private var type: Output? = null
/**
* @param value The identifier of the Amazon Q Business application using the index.
*/
@JvmName("djtwmvuqriayiexx")
public suspend fun applicationId(`value`: Output) {
this.applicationId = value
}
/**
* @param value The capacity units you want to provision for your index. You can add and remove capacity to fit your usage needs.
*/
@JvmName("ptrmflyyeoyteabr")
public suspend fun capacityConfiguration(`value`: Output) {
this.capacityConfiguration = value
}
/**
* @param value A description for the Amazon Q Business index.
*/
@JvmName("iokpgrqnorbhfphe")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value The name of the index.
*/
@JvmName("ynlbdyjfnbvkhudy")
public suspend fun displayName(`value`: Output) {
this.displayName = value
}
/**
* @param value Configuration information for document attributes. Document attributes are metadata or fields associated with your documents. For example, the company department name associated with each document.
* For more information, see [Understanding document attributes](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes.html) .
*/
@JvmName("ifehpnfykenuvahb")
public suspend fun documentAttributeConfigurations(`value`: Output>) {
this.documentAttributeConfigurations = value
}
@JvmName("ilnrcheymivuyxlf")
public suspend fun documentAttributeConfigurations(vararg values: Output) {
this.documentAttributeConfigurations = Output.all(values.asList())
}
/**
* @param values Configuration information for document attributes. Document attributes are metadata or fields associated with your documents. For example, the company department name associated with each document.
* For more information, see [Understanding document attributes](https://docs.aws.amazon.com/amazonq/latest/business-use-dg/doc-attributes.html) .
*/
@JvmName("guibxnnxrjphegtl")
public suspend fun documentAttributeConfigurations(values: List