
commonMain.tools.ozone.team.Token.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bluesky Show documentation
Show all versions of bluesky Show documentation
Bluesky Social API bindings for Kotlin.
package tools.ozone.team
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 RoleAdmin : Token("tools.ozone.team.defs#roleAdmin")
public data object RoleModerator : Token("tools.ozone.team.defs#roleModerator")
public data object RoleTriage : Token("tools.ozone.team.defs#roleTriage")
public data class Unknown(
public val rawValue: String,
) : Token(rawValue)
public companion object {
public fun safeValueOf(`value`: String): Token = when (value) {
"tools.ozone.team.defs#roleAdmin" -> RoleAdmin
"tools.ozone.team.defs#roleModerator" -> RoleModerator
"tools.ozone.team.defs#roleTriage" -> RoleTriage
else -> Unknown(value)
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy