using SeaHaven.Services.DTOs; namespace SeaHaven.Services.Interfaces { public interface IAccountService { Task GetAccountByIdAsync(int id); Task GetAccountByIdWithDetailsAsync(int id); Task> GetAllAccountsAsync(); Task> GetAccountsPagedAsync(int page, int pageSize, string? search = null); Task CreateAccountAsync(CreateAccountDTO dto, string userId); Task UpdateAccountAsync(int id, UpdateAccountDTO dto, string userId); Task DeleteAccountAsync(int id, string userId); Task AccountExistsAsync(int id); Task GetTotalAccountCountAsync(); } }