2022-09-22 12:13:53 +00:00
|
|
|
using System.Threading.Tasks;
|
2022-09-15 23:45:26 +00:00
|
|
|
using MediaBrowser.Controller.Entities;
|
2022-09-18 17:13:01 +00:00
|
|
|
using MediaBrowser.Controller.Resolvers;
|
2022-09-15 23:45:26 +00:00
|
|
|
|
2023-06-20 14:51:07 +00:00
|
|
|
namespace MediaBrowser.Providers.Lyric;
|
2022-09-17 21:37:38 +00:00
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Interface ILyricsProvider.
|
|
|
|
/// </summary>
|
|
|
|
public interface ILyricProvider
|
2022-09-15 23:45:26 +00:00
|
|
|
{
|
|
|
|
/// <summary>
|
2022-09-17 21:37:38 +00:00
|
|
|
/// Gets a value indicating the provider name.
|
2022-09-15 23:45:26 +00:00
|
|
|
/// </summary>
|
2022-09-17 21:37:38 +00:00
|
|
|
string Name { get; }
|
2022-09-16 00:49:25 +00:00
|
|
|
|
2022-09-18 17:13:01 +00:00
|
|
|
/// <summary>
|
|
|
|
/// Gets the priority.
|
|
|
|
/// </summary>
|
|
|
|
/// <value>The priority.</value>
|
|
|
|
ResolverPriority Priority { get; }
|
|
|
|
|
2022-09-17 21:37:38 +00:00
|
|
|
/// <summary>
|
2023-06-20 14:51:07 +00:00
|
|
|
/// Checks if an item has lyrics available.
|
2022-09-17 21:37:38 +00:00
|
|
|
/// </summary>
|
2023-06-20 14:51:07 +00:00
|
|
|
/// <param name="item">The media item.</param>
|
|
|
|
/// <returns>Whether lyrics where found or not.</returns>
|
|
|
|
bool HasLyrics(BaseItem item);
|
2022-09-15 23:45:26 +00:00
|
|
|
|
2022-09-17 21:37:38 +00:00
|
|
|
/// <summary>
|
|
|
|
/// Gets the lyrics.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="item">The media item.</param>
|
2022-09-22 12:13:53 +00:00
|
|
|
/// <returns>A task representing found lyrics.</returns>
|
2023-06-20 14:51:07 +00:00
|
|
|
Task<LyricFile?> GetLyrics(BaseItem item);
|
2022-09-15 23:45:26 +00:00
|
|
|
}
|