All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.awsnative.cognito.kotlin.UserPoolGroupArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 0.122.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.cognito.kotlin

import com.pulumi.awsnative.cognito.UserPoolGroupArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * Resource Type definition for AWS::Cognito::UserPoolGroup
 * @property description A string containing the description of the group.
 * @property groupName The name of the group. Must be unique.
 * @property precedence A non-negative integer value that specifies the precedence of this group relative to the other groups that a user can belong to in the user pool. Zero is the highest precedence value. Groups with lower `Precedence` values take precedence over groups with higher or null `Precedence` values. If a user belongs to two or more groups, it is the group with the lowest precedence value whose role ARN is given in the user's tokens for the `cognito:roles` and `cognito:preferred_role` claims.
 * Two groups can have the same `Precedence` value. If this happens, neither group takes precedence over the other. If two groups with the same `Precedence` have the same role ARN, that role is used in the `cognito:preferred_role` claim in tokens for users in each group. If the two groups have different role ARNs, the `cognito:preferred_role` claim isn't set in users' tokens.
 * The default `Precedence` value is null. The maximum `Precedence` value is `2^31-1` .
 * @property roleArn The role Amazon Resource Name (ARN) for the group.
 * @property userPoolId The user pool ID for the user pool.
 */
public data class UserPoolGroupArgs(
    public val description: Output? = null,
    public val groupName: Output? = null,
    public val precedence: Output? = null,
    public val roleArn: Output? = null,
    public val userPoolId: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.cognito.UserPoolGroupArgs =
        com.pulumi.awsnative.cognito.UserPoolGroupArgs.builder()
            .description(description?.applyValue({ args0 -> args0 }))
            .groupName(groupName?.applyValue({ args0 -> args0 }))
            .precedence(precedence?.applyValue({ args0 -> args0 }))
            .roleArn(roleArn?.applyValue({ args0 -> args0 }))
            .userPoolId(userPoolId?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [UserPoolGroupArgs].
 */
@PulumiTagMarker
public class UserPoolGroupArgsBuilder internal constructor() {
    private var description: Output? = null

    private var groupName: Output? = null

    private var precedence: Output? = null

    private var roleArn: Output? = null

    private var userPoolId: Output? = null

    /**
     * @param value A string containing the description of the group.
     */
    @JvmName("obaomlvwogiftdoc")
    public suspend fun description(`value`: Output) {
        this.description = value
    }

    /**
     * @param value The name of the group. Must be unique.
     */
    @JvmName("iphfprexrbpgtakk")
    public suspend fun groupName(`value`: Output) {
        this.groupName = value
    }

    /**
     * @param value A non-negative integer value that specifies the precedence of this group relative to the other groups that a user can belong to in the user pool. Zero is the highest precedence value. Groups with lower `Precedence` values take precedence over groups with higher or null `Precedence` values. If a user belongs to two or more groups, it is the group with the lowest precedence value whose role ARN is given in the user's tokens for the `cognito:roles` and `cognito:preferred_role` claims.
     * Two groups can have the same `Precedence` value. If this happens, neither group takes precedence over the other. If two groups with the same `Precedence` have the same role ARN, that role is used in the `cognito:preferred_role` claim in tokens for users in each group. If the two groups have different role ARNs, the `cognito:preferred_role` claim isn't set in users' tokens.
     * The default `Precedence` value is null. The maximum `Precedence` value is `2^31-1` .
     */
    @JvmName("riqbpmdsmbtiwele")
    public suspend fun precedence(`value`: Output) {
        this.precedence = value
    }

    /**
     * @param value The role Amazon Resource Name (ARN) for the group.
     */
    @JvmName("mxwvrfxbcaqfqejy")
    public suspend fun roleArn(`value`: Output) {
        this.roleArn = value
    }

    /**
     * @param value The user pool ID for the user pool.
     */
    @JvmName("gynkaokdjglxywho")
    public suspend fun userPoolId(`value`: Output) {
        this.userPoolId = value
    }

    /**
     * @param value A string containing the description of the group.
     */
    @JvmName("uebwoojigxkdaotd")
    public suspend fun description(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.description = mapped
    }

    /**
     * @param value The name of the group. Must be unique.
     */
    @JvmName("uvbuiadhaqiudmmo")
    public suspend fun groupName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.groupName = mapped
    }

    /**
     * @param value A non-negative integer value that specifies the precedence of this group relative to the other groups that a user can belong to in the user pool. Zero is the highest precedence value. Groups with lower `Precedence` values take precedence over groups with higher or null `Precedence` values. If a user belongs to two or more groups, it is the group with the lowest precedence value whose role ARN is given in the user's tokens for the `cognito:roles` and `cognito:preferred_role` claims.
     * Two groups can have the same `Precedence` value. If this happens, neither group takes precedence over the other. If two groups with the same `Precedence` have the same role ARN, that role is used in the `cognito:preferred_role` claim in tokens for users in each group. If the two groups have different role ARNs, the `cognito:preferred_role` claim isn't set in users' tokens.
     * The default `Precedence` value is null. The maximum `Precedence` value is `2^31-1` .
     */
    @JvmName("vmhuethluahpshqq")
    public suspend fun precedence(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.precedence = mapped
    }

    /**
     * @param value The role Amazon Resource Name (ARN) for the group.
     */
    @JvmName("havhuainhkuhqwux")
    public suspend fun roleArn(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.roleArn = mapped
    }

    /**
     * @param value The user pool ID for the user pool.
     */
    @JvmName("igvjggxmyouicwyu")
    public suspend fun userPoolId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userPoolId = mapped
    }

    internal fun build(): UserPoolGroupArgs = UserPoolGroupArgs(
        description = description,
        groupName = groupName,
        precedence = precedence,
        roleArn = roleArn,
        userPoolId = userPoolId,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy