commonMain.app.bsky.feed.getQuotes.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.
The newest version!
@file:Suppress("DEPRECATION")
package app.bsky.feed
import kotlin.Any
import kotlin.Long
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlinx.collections.immutable.toImmutableList
import kotlinx.serialization.Serializable
import sh.christian.ozone.api.AtUri
import sh.christian.ozone.api.Cid
import sh.christian.ozone.api.model.ReadOnlyList
/**
* @param uri Reference (AT-URI) of post record
* @param cid If supplied, filters to quotes of specific version (by CID) of the post record.
*/
@Serializable
public data class GetQuotesQueryParams(
/**
* Reference (AT-URI) of post record
*/
public val uri: AtUri,
/**
* If supplied, filters to quotes of specific version (by CID) of the post record.
*/
public val cid: Cid? = null,
public val limit: Long? = 50,
public val cursor: String? = null,
) {
init {
require(limit == null || limit >= 1) {
"limit must be >= 1, but was $limit"
}
require(limit == null || limit <= 100) {
"limit must be <= 100, but was $limit"
}
}
public fun asList(): ReadOnlyList> = buildList {
add("uri" to uri)
add("cid" to cid)
add("limit" to limit)
add("cursor" to cursor)
}.toImmutableList()
}
@Serializable
public data class GetQuotesResponse(
public val uri: AtUri,
public val cid: Cid? = null,
public val cursor: String? = null,
public val posts: ReadOnlyList,
)