
using CloudBuilder.AI.Data;
using CloudBuilder.AI.Entity;
using CloudBuilder.AI.SearchCriteria;
using CloudBuilder.Core.Service;
using CloudBuilder.Security.Data;
using CloudBuilder.Security.SearchCriteria;

namespace CloudBuilder.AI.Service
{
    public interface IAiBookService : IServiceBase<AiBookData, string, AiBookSearchCriteria>
    {
        AiBookResultData FindBySearchCriteria(AiBookSearchCriteria tc);

        void Deletes(string[] keys);
        AiBookEntity FindByTitle(string title);
        AiBookData Insert(AiBookData data);

        AiBookData Update(AiBookData data);

        AiBookData ProcessBook(string key, string encoding, string pattern);

        void ExtractNames(string bookGuid);

        void ExtractNamesByChapterGuid(string bookGuid, string chapterGuid);
    }
}
