diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/AchievementEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/AchievementEvent.kt new file mode 100644 index 0000000..3aa4e49 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/AchievementEvent.kt @@ -0,0 +1,8 @@ +package one.devos.osuv2kt.models.event + +import com.google.gson.JsonElement + +public data class AchievementEvent( + public val achievement: JsonElement, // type is supposed to be Achievement but what + public val user: EventUser +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/Approval.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/Approval.kt new file mode 100644 index 0000000..620ec23 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/Approval.kt @@ -0,0 +1,8 @@ +package one.devos.osuv2kt.models.event + +public enum class Approval { + RANKED, + APPROVED, + QUALIFIED, + LOVED +} \ No newline at end of file diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapPlaycountEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapPlaycountEvent.kt new file mode 100644 index 0000000..2899f46 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapPlaycountEvent.kt @@ -0,0 +1,6 @@ +package one.devos.osuv2kt.models.event + +public data class BeatmapPlaycountEvent( + public val beatmap: EventBeatmap, + public val count: Int +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetApproveEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetApproveEvent.kt new file mode 100644 index 0000000..3c2e0e4 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetApproveEvent.kt @@ -0,0 +1,7 @@ +package one.devos.osuv2kt.models.event + +public data class BeatmapsetApproveEvent( + public val approval: Approval, + public val beatmapset: EventBeatmapset, + public val user: EventUser +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetDeleteEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetDeleteEvent.kt new file mode 100644 index 0000000..57c3cb2 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetDeleteEvent.kt @@ -0,0 +1,5 @@ +package one.devos.osuv2kt.models.event + +public data class BeatmapsetDeleteEvent( + public val beatmapset: EventBeatmapset +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetReviveEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetReviveEvent.kt new file mode 100644 index 0000000..69e9941 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetReviveEvent.kt @@ -0,0 +1,6 @@ +package one.devos.osuv2kt.models.event + +public data class BeatmapsetReviveEvent( + public val beatmapset: EventBeatmapset, + public val user: EventUser +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetUpdateEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetUpdateEvent.kt new file mode 100644 index 0000000..9d38400 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetUpdateEvent.kt @@ -0,0 +1,6 @@ +package one.devos.osuv2kt.models.event + +public data class BeatmapsetUpdateEvent( + public val beatmapset: EventBeatmapset, + public val user: EventUser +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetUploadEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetUploadEvent.kt new file mode 100644 index 0000000..565c834 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/BeatmapsetUploadEvent.kt @@ -0,0 +1,6 @@ +package one.devos.osuv2kt.models.event + +public data class BeatmapsetUploadEvent( + public val beatmapset: EventBeatmapset, + public val user: EventUser +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/EventBeatmap.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/EventBeatmap.kt new file mode 100644 index 0000000..83199e9 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/EventBeatmap.kt @@ -0,0 +1,6 @@ +package one.devos.osuv2kt.models.event + +public data class EventBeatmap( + public val title: String, + public val url: String +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/EventBeatmapset.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/EventBeatmapset.kt new file mode 100644 index 0000000..31655ea --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/EventBeatmapset.kt @@ -0,0 +1,6 @@ +package one.devos.osuv2kt.models.event + +public data class EventBeatmapset( + public val title: String, + public val url: String +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/EventType.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/EventType.kt index 7e39039..75f2d07 100644 --- a/src/main/kotlin/one/devos/osuv2kt/models/event/EventType.kt +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/EventType.kt @@ -1,3 +1,17 @@ package one.devos.osuv2kt.models.event -public data class EventType() +public data class EventType( + public val achievement: AchievementEvent, + public val beatmapPlayground: BeatmapPlaycountEvent, + public val beatmapsetApprove: BeatmapsetApproveEvent, + public val beatmapsetDelete: BeatmapsetDeleteEvent, + public val beatmapsetRevive: BeatmapsetReviveEvent, + public val beatmapsetUpdate: BeatmapsetUpdateEvent, + public val beatmapsetUpload: BeatmapsetUploadEvent, + public val rank: RankEvent, + public val rankLost: RankLostEvent, + public val userSupportAgain: UserSupportAgainEvent, + public val userSupportFirst: UserSupportFirstEvent, + public val userSupportGift: UserSupportGiftEvent, + public val usernameChange: UsernameChangeEvent +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/EventUser.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/EventUser.kt new file mode 100644 index 0000000..c99daf4 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/EventUser.kt @@ -0,0 +1,9 @@ +package one.devos.osuv2kt.models.event + +public data class EventUser( + public val username: String, + public val url: String, + + // only for usernameChange event + public val previousUsername: String? +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/RankEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/RankEvent.kt new file mode 100644 index 0000000..dece06a --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/RankEvent.kt @@ -0,0 +1,11 @@ +package one.devos.osuv2kt.models.event + +import one.devos.osuv2kt.models.Ruleset + +public data class RankEvent( + public val scoreRank: String, + public val rank: Int, + public val mode: Ruleset, + public val beatmapset: EventBeatmapset, + public val user: EventUser +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/RankLostEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/RankLostEvent.kt new file mode 100644 index 0000000..3098f6f --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/RankLostEvent.kt @@ -0,0 +1,9 @@ +package one.devos.osuv2kt.models.event + +import one.devos.osuv2kt.models.Ruleset + +public data class RankLostEvent( + public val mode: Ruleset, + public val beatmap: EventBeatmap, + public val user: EventUser, +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/UserSupportAgainEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/UserSupportAgainEvent.kt new file mode 100644 index 0000000..b4ae1d4 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/UserSupportAgainEvent.kt @@ -0,0 +1,5 @@ +package one.devos.osuv2kt.models.event + +public data class UserSupportAgainEvent( + public val user: EventUser +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/UserSupportFirstEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/UserSupportFirstEvent.kt new file mode 100644 index 0000000..1f4b778 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/UserSupportFirstEvent.kt @@ -0,0 +1,5 @@ +package one.devos.osuv2kt.models.event + +public data class UserSupportFirstEvent( + public val user: EventUser +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/UserSupportGiftEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/UserSupportGiftEvent.kt new file mode 100644 index 0000000..50ef0d0 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/UserSupportGiftEvent.kt @@ -0,0 +1,5 @@ +package one.devos.osuv2kt.models.event + +public data class UserSupportGiftEvent( + public val user: EventUser +) diff --git a/src/main/kotlin/one/devos/osuv2kt/models/event/UsernameChangeEvent.kt b/src/main/kotlin/one/devos/osuv2kt/models/event/UsernameChangeEvent.kt new file mode 100644 index 0000000..9049c96 --- /dev/null +++ b/src/main/kotlin/one/devos/osuv2kt/models/event/UsernameChangeEvent.kt @@ -0,0 +1,5 @@ +package one.devos.osuv2kt.models.event + +public data class UsernameChangeEvent( + public val user: EventUser +)