package com.radiola.domain.repository

/**
 * Тексты песен предоставляются через публичный API LRCLIB (https://lrclib.net).
 * LRCLIB — открытая база текстов без авторских ограничений (CC0 / community-maintained).
 */
interface LyricsRepository {

    /** URL поиска-фолбэк (Яндекс). */
    fun providerUrl(artist: String, song: String): String

    /** Загрузить текст трека через LRCLIB. null — трек не найден. */
    suspend fun fetchLyrics(
        artist: String,
        song: String,
        durationSec: Int? = null
    ): LyricsResult?
}

data class LyricsResult(
    val plain: String?,
    val synced: String?,
    val instrumental: Boolean
)
