using RMuseum.Models.Ganjoor;
using RMuseum.Models.Ganjoor.ViewModels;
using RMuseum.Models.GanjoorAudio.ViewModels;
using RMuseum.Models.GanjoorIntegration.ViewModels;
using RSecurityBackend.Models.Generic;
using System.Threading.Tasks;
namespace RMuseum.Services
{
///
/// Ganjoor Poems Content Privider Service
///
public interface IGanjoorService
{
///
/// Get List of poets
///
///
///
Task> GetPoets(bool websitePoets);
///
/// get poet by id
///
///
///
Task> GetPoetById(int id);
///
/// get poem by id
///
///
///
Task> GetPoemById(int id);
///
/// get poem recitations (PlainText/HtmlText are intentionally empty)
///
///
///
Task> GetPoemRecitations(int id);
///
/// get poem images by id (some fields are intentionally field with blank or null),
/// EntityImageId : the most important data field, image url is https://ganjgah.ir/api/images/thumb/{EntityImageId}.jpg or https://ganjgah.ir/api/images/norm/{EntityImageId}.jpg
///
///
///
Task> GetPoemImages(int id);
///
/// get a random poem from hafez
///
///
Task> Faal();
///
/// imports unimported poem data from a locally accessible ganjoor SqlLite database
///
///
Task> ImportLocalSQLiteDb();
///
/// updates poems text
///
///
RServiceResult UpdatePoemsText();
}
}