using Domain.Entities;
using Domain.Generics;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Models.Interfaces
{
    public interface IPhSPatientRepository
    {
        Task<EPatient> CreateAsync(EPatient entity);
        Task<bool> DeleteAsync(int id);
        Task<PagedResult<EPatient>> GetAllAsync(int page = 1, int pageSize = 50);
        Task<EPatient?> GetByIdAsync(int id);
        Task<PagedResult<EPatient>> SearchAsync(string? name, string? document, int page = 1, int pageSize = 50);
        Task<bool> UpdateAsync(EPatient entity);
    }
}
