using System.Collections.Generic; using System.Threading.Tasks; using ErsatzTV.Core.Domain; using ErsatzTV.Core.Metadata; using LanguageExt; namespace ErsatzTV.Core.Interfaces.Repositories { public interface ISongRepository { Task>> GetOrAdd(LibraryPath libraryPath, string path); Task> FindSongPaths(LibraryPath libraryPath); Task> DeleteByPath(LibraryPath libraryPath, string path); Task AddTag(SongMetadata metadata, Tag tag); Task> GetSongsForCards(List ids); } }