package com.fabledsword.minstrel.models.wire

import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable

/**
 * Wire shape of `GET /api/likes/ids`. Server returns the full ID set
 * of items the caller has liked, partitioned by entity type — used by
 * the LikesRepository to do a one-shot refill of `cached_likes` on
 * first launch and after sign-in.
 *
 * Empty defaults so missing keys don't throw on decode.
 */
@Serializable
data class LikedIdsWire(
    @SerialName("artist_ids") val artistIds: List<String> = emptyList(),
    @SerialName("album_ids") val albumIds: List<String> = emptyList(),
    @SerialName("track_ids") val trackIds: List<String> = emptyList(),
)
