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

commonMain.aws.sdk.kotlin.services.kms.model.KeySpec.kt Maven / Gradle / Ivy

The newest version!
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.kms.model

import kotlin.collections.List

public sealed class KeySpec {
    public abstract val value: kotlin.String

    public object EccNistP256 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "ECC_NIST_P256"
        override fun toString(): kotlin.String = "EccNistP256"
    }

    public object EccNistP384 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "ECC_NIST_P384"
        override fun toString(): kotlin.String = "EccNistP384"
    }

    public object EccNistP521 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "ECC_NIST_P521"
        override fun toString(): kotlin.String = "EccNistP521"
    }

    public object EccSecgP256K1 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "ECC_SECG_P256K1"
        override fun toString(): kotlin.String = "EccSecgP256K1"
    }

    public object Hmac224 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "HMAC_224"
        override fun toString(): kotlin.String = "Hmac224"
    }

    public object Hmac256 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "HMAC_256"
        override fun toString(): kotlin.String = "Hmac256"
    }

    public object Hmac384 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "HMAC_384"
        override fun toString(): kotlin.String = "Hmac384"
    }

    public object Hmac512 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "HMAC_512"
        override fun toString(): kotlin.String = "Hmac512"
    }

    public object Rsa2048 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "RSA_2048"
        override fun toString(): kotlin.String = "Rsa2048"
    }

    public object Rsa3072 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "RSA_3072"
        override fun toString(): kotlin.String = "Rsa3072"
    }

    public object Rsa4096 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "RSA_4096"
        override fun toString(): kotlin.String = "Rsa4096"
    }

    public object Sm2 : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "SM2"
        override fun toString(): kotlin.String = "Sm2"
    }

    public object SymmetricDefault : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override val value: kotlin.String = "SYMMETRIC_DEFAULT"
        override fun toString(): kotlin.String = "SymmetricDefault"
    }

    public data class SdkUnknown(override val value: kotlin.String) : aws.sdk.kotlin.services.kms.model.KeySpec() {
        override fun toString(): kotlin.String = "SdkUnknown($value)"
    }

    public companion object {
        /**
         * Convert a raw value to one of the sealed variants or [SdkUnknown]
         */
        public fun fromValue(value: kotlin.String): aws.sdk.kotlin.services.kms.model.KeySpec = when (value) {
            "ECC_NIST_P256" -> EccNistP256
            "ECC_NIST_P384" -> EccNistP384
            "ECC_NIST_P521" -> EccNistP521
            "ECC_SECG_P256K1" -> EccSecgP256K1
            "HMAC_224" -> Hmac224
            "HMAC_256" -> Hmac256
            "HMAC_384" -> Hmac384
            "HMAC_512" -> Hmac512
            "RSA_2048" -> Rsa2048
            "RSA_3072" -> Rsa3072
            "RSA_4096" -> Rsa4096
            "SM2" -> Sm2
            "SYMMETRIC_DEFAULT" -> SymmetricDefault
            else -> SdkUnknown(value)
        }

        /**
         * Get a list of all possible variants
         */
        public fun values(): kotlin.collections.List = values

        private val values: kotlin.collections.List = listOf(
            EccNistP256,
            EccNistP384,
            EccNistP521,
            EccSecgP256K1,
            Hmac224,
            Hmac256,
            Hmac384,
            Hmac512,
            Rsa2048,
            Rsa3072,
            Rsa4096,
            Sm2,
            SymmetricDefault,
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy