using System.Collections.Generic;
using System.Threading.Tasks;
using Datory;
using SqlKata;

namespace GxPress.Repository.Interface.Analyze
{
    public interface IAnalyzeRepository : IRepository
    {
        Task<Entity.Analyze.Analyze> GetAsync(Query query);

        Task<bool> DeleteAsync(int id);

        Task<int> CountAsync(Query query);

        Task<bool> DeleteAsync(SqlKata.Query query);

        Task<int> InsertAsync(Entity.Analyze.Analyze analyze);
        Task<IEnumerable<Entity.Analyze.Analyze>> GetAllAsync(Query query);
        Task<int> UpdateAsync(Query query);
        Task<bool> ExistsAsync(Query query);
    }
}