using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using MediaBrowser.Model.Lyrics;
using MediaBrowser.Model.Providers;
namespace MediaBrowser.Controller.Lyrics;
/// 
/// Interface ILyricsProvider.
/// 
public interface ILyricProvider
{
    /// 
    /// Gets the provider name.
    /// 
    string Name { get; }
    /// 
    /// Search for lyrics.
    /// 
    /// The search request.
    /// The cancellation token.
    /// The list of remote lyrics.
    Task> SearchAsync(LyricSearchRequest request, CancellationToken cancellationToken);
    /// 
    /// Get the lyrics.
    /// 
    /// The remote lyric id.
    /// The cancellation token.
    /// The lyric response.
    Task GetLyricsAsync(string id, CancellationToken cancellationToken);
}