mirror of
https://github.com/ReVanced/revanced-api.git
synced 2026-01-23 03:01:04 +00:00
feat: Add CLI
This commit is contained in:
73
src/main/kotlin/app/revanced/api/schema/APISchema.kt
Normal file
73
src/main/kotlin/app/revanced/api/schema/APISchema.kt
Normal file
@@ -0,0 +1,73 @@
|
||||
package app.revanced.api.schema
|
||||
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
||||
class APIRelease(
|
||||
val version: String,
|
||||
val createdAt: String,
|
||||
val changelog: String,
|
||||
val assets: Set<APIAsset>
|
||||
)
|
||||
|
||||
interface APIUser {
|
||||
val name: String
|
||||
val avatarUrl: String
|
||||
val url: String
|
||||
}
|
||||
|
||||
@Serializable
|
||||
class APIMember(
|
||||
override val name: String,
|
||||
override val avatarUrl: String,
|
||||
override val url: String,
|
||||
val gpgKeysUrl: String
|
||||
) : APIUser
|
||||
|
||||
@Serializable
|
||||
class APIContributor(
|
||||
override val name: String,
|
||||
override val avatarUrl: String,
|
||||
override val url: String,
|
||||
val contributions: Int,
|
||||
) : APIUser
|
||||
|
||||
@Serializable
|
||||
class APIContributable(
|
||||
val name: String,
|
||||
val contributors: Set<APIContributor>
|
||||
)
|
||||
|
||||
@Serializable
|
||||
class APIAsset(
|
||||
val downloadUrl: String,
|
||||
) {
|
||||
val type = when {
|
||||
downloadUrl.endsWith(".jar") -> "patches"
|
||||
downloadUrl.endsWith(".apk") -> "integrations"
|
||||
else -> "unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@Serializable
|
||||
class APIReleaseVersion(
|
||||
val version: String
|
||||
)
|
||||
|
||||
@Serializable
|
||||
class APIAnnouncement(
|
||||
val id: Int,
|
||||
val author: APIUser?,
|
||||
val title: String,
|
||||
val content: APIAnnouncementContent,
|
||||
val channel: String,
|
||||
val createdAt: String,
|
||||
val archivedAt: String?,
|
||||
val level: Int,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
class APIAnnouncementContent(
|
||||
val message: String,
|
||||
val attachmentUrls: Set<String>
|
||||
)
|
||||
@@ -0,0 +1,17 @@
|
||||
package app.revanced.api.schema
|
||||
|
||||
import kotlinx.serialization.SerialName
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
@Serializable
|
||||
class APIConfiguration(
|
||||
val organization: String,
|
||||
@SerialName("patches-repository")
|
||||
val patchesRepository: String,
|
||||
@SerialName("integrations-repositories")
|
||||
val integrationsRepositoryNames: Set<String>,
|
||||
@SerialName("contributors-repositories")
|
||||
val contributorsRepositoryNames: Set<String>,
|
||||
@SerialName("api-version")
|
||||
val apiVersion: Int = 1
|
||||
)
|
||||
Reference in New Issue
Block a user