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

commonMain.aws.sdk.kotlin.services.connect.model.ContactInitiationMethod.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.connect.model

import kotlin.collections.List

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

    public object Api : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        override val value: kotlin.String = "API"
        override fun toString(): kotlin.String = "Api"
    }

    public object Callback : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        override val value: kotlin.String = "CALLBACK"
        override fun toString(): kotlin.String = "Callback"
    }

    public object Disconnect : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        override val value: kotlin.String = "DISCONNECT"
        override fun toString(): kotlin.String = "Disconnect"
    }

    public object ExternalOutbound : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        override val value: kotlin.String = "EXTERNAL_OUTBOUND"
        override fun toString(): kotlin.String = "ExternalOutbound"
    }

    public object Inbound : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        override val value: kotlin.String = "INBOUND"
        override fun toString(): kotlin.String = "Inbound"
    }

    public object Monitor : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        override val value: kotlin.String = "MONITOR"
        override fun toString(): kotlin.String = "Monitor"
    }

    public object Outbound : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        override val value: kotlin.String = "OUTBOUND"
        override fun toString(): kotlin.String = "Outbound"
    }

    public object QueueTransfer : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        override val value: kotlin.String = "QUEUE_TRANSFER"
        override fun toString(): kotlin.String = "QueueTransfer"
    }

    public object Transfer : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        override val value: kotlin.String = "TRANSFER"
        override fun toString(): kotlin.String = "Transfer"
    }

    public data class SdkUnknown(override val value: kotlin.String) : aws.sdk.kotlin.services.connect.model.ContactInitiationMethod() {
        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.connect.model.ContactInitiationMethod = when (value) {
            "API" -> Api
            "CALLBACK" -> Callback
            "DISCONNECT" -> Disconnect
            "EXTERNAL_OUTBOUND" -> ExternalOutbound
            "INBOUND" -> Inbound
            "MONITOR" -> Monitor
            "OUTBOUND" -> Outbound
            "QUEUE_TRANSFER" -> QueueTransfer
            "TRANSFER" -> Transfer
            else -> SdkUnknown(value)
        }

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

        private val values: kotlin.collections.List = listOf(
            Api,
            Callback,
            Disconnect,
            ExternalOutbound,
            Inbound,
            Monitor,
            Outbound,
            QueueTransfer,
            Transfer,
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy