commonMain.com.atproto.moderation.Token.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bluesky-jvm Show documentation
Show all versions of bluesky-jvm Show documentation
Bluesky Social API bindings for Kotlin.
The newest version!
package com.atproto.moderation
import kotlin.String
import kotlinx.serialization.KSerializer
import kotlinx.serialization.Serializable
import sh.christian.ozone.api.model.AtpEnum
import sh.christian.ozone.api.runtime.stringEnumSerializer
public class TokenSerializer : KSerializer by stringEnumSerializer(Token::safeValueOf)
@Serializable(with = TokenSerializer::class)
public sealed class Token(
override val `value`: String,
) : AtpEnum() {
public data object ReasonSpam : Token("com.atproto.moderation.defs#reasonSpam")
public data object ReasonViolation : Token("com.atproto.moderation.defs#reasonViolation")
public data object ReasonMisleading : Token("com.atproto.moderation.defs#reasonMisleading")
public data object ReasonSexual : Token("com.atproto.moderation.defs#reasonSexual")
public data object ReasonRude : Token("com.atproto.moderation.defs#reasonRude")
public data object ReasonOther : Token("com.atproto.moderation.defs#reasonOther")
public data object ReasonAppeal : Token("com.atproto.moderation.defs#reasonAppeal")
public data class Unknown(
public val rawValue: String,
) : Token(rawValue)
public companion object {
public fun safeValueOf(`value`: String): Token = when (value) {
"com.atproto.moderation.defs#reasonSpam" -> ReasonSpam
"com.atproto.moderation.defs#reasonViolation" -> ReasonViolation
"com.atproto.moderation.defs#reasonMisleading" -> ReasonMisleading
"com.atproto.moderation.defs#reasonSexual" -> ReasonSexual
"com.atproto.moderation.defs#reasonRude" -> ReasonRude
"com.atproto.moderation.defs#reasonOther" -> ReasonOther
"com.atproto.moderation.defs#reasonAppeal" -> ReasonAppeal
else -> Unknown(value)
}
}
}