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

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

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

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

import kotlin.collections.List

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    public data class SdkUnknown(override val value: kotlin.String) : aws.sdk.kotlin.services.kms.model.GrantOperation() {
        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.GrantOperation = when (value) {
            "CreateGrant" -> CreateGrant
            "Decrypt" -> Decrypt
            "DeriveSharedSecret" -> DeriveSharedSecret
            "DescribeKey" -> DescribeKey
            "Encrypt" -> Encrypt
            "GenerateDataKey" -> GenerateDataKey
            "GenerateDataKeyPair" -> GenerateDataKeyPair
            "GenerateDataKeyPairWithoutPlaintext" -> GenerateDataKeyPairWithoutPlaintext
            "GenerateDataKeyWithoutPlaintext" -> GenerateDataKeyWithoutPlaintext
            "GenerateMac" -> GenerateMac
            "GetPublicKey" -> GetPublicKey
            "ReEncryptFrom" -> ReEncryptFrom
            "ReEncryptTo" -> ReEncryptTo
            "RetireGrant" -> RetireGrant
            "Sign" -> Sign
            "Verify" -> Verify
            "VerifyMac" -> VerifyMac
            else -> SdkUnknown(value)
        }

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

        private val values: kotlin.collections.List = listOf(
            CreateGrant,
            Decrypt,
            DeriveSharedSecret,
            DescribeKey,
            Encrypt,
            GenerateDataKey,
            GenerateDataKeyPair,
            GenerateDataKeyPairWithoutPlaintext,
            GenerateDataKeyWithoutPlaintext,
            GenerateMac,
            GetPublicKey,
            ReEncryptFrom,
            ReEncryptTo,
            RetireGrant,
            Sign,
            Verify,
            VerifyMac,
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy