package com.devlab.app.data.model

import kotlinx.serialization.Serializable

@Serializable
data class Pagination(
    val page: Int = 1,
    val per_page: Int = 20,
    val total: Int = 0,
    val total_pages: Int = 0
)

@Serializable
data class ApiResponse<T>(
    val success: Boolean,
    val data: T? = null,
    val error: String? = null,
    val pagination: Pagination? = null
)

@Serializable
data class AppVersionResponse(
    val version: String = "",
    val apk_url: String = "",
    val force_update: Boolean = false,
    val release_notes: String = ""
)

@Serializable
data class NotificationListResponse(
    val success: Boolean = true,
    val data: List<AppNotification> = emptyList(),
    val error: String? = null,
    val pagination: Pagination? = null,
    val unread_count: Int = 0
)

@Serializable
data class UnreadCountResponse(
    val success: Boolean = true,
    val unread_count: Int = 0,
    val error: String? = null
)
