using System;
using System.Collections.Generic;
using MediaBrowser.Model.Entities;
namespace MediaBrowser.Model.Lyrics;
///
/// Lyric search request.
///
public class LyricSearchRequest : IHasProviderIds
{
///
/// Gets or sets the media path.
///
public string? MediaPath { get; set; }
///
/// Gets or sets the artist name.
///
public IReadOnlyList? ArtistNames { get; set; }
///
/// Gets or sets the album name.
///
public string? AlbumName { get; set; }
///
/// Gets or sets the song name.
///
public string? SongName { get; set; }
///
/// Gets or sets the track duration in ticks.
///
public long? Duration { get; set; }
///
public Dictionary ProviderIds { get; set; } = new(StringComparer.OrdinalIgnoreCase);
///
/// Gets or sets a value indicating whether to search all providers.
///
public bool SearchAllProviders { get; set; } = true;
///
/// Gets or sets the list of disabled lyric fetcher names.
///
public IReadOnlyList DisabledLyricFetchers { get; set; } = [];
///
/// Gets or sets the order of lyric fetchers.
///
public IReadOnlyList LyricFetcherOrder { get; set; } = [];
///
/// Gets or sets a value indicating whether this request is automated.
///
public bool IsAutomated { get; set; }
}