using SeaHaven.Services.DTOs; namespace SeaHaven.Services.Interfaces { public interface IAssetService { Task GetAssetByIdAsync(int id); Task GetAssetByIdWithDetailsAsync(int id); Task> GetAllAssetsAsync(); Task> GetAssetsByLocationIdAsync(int locationId); Task> GetAssetsPagedAsync(int page, int pageSize, string? search = null); Task CreateAssetAsync(CreateAssetDTO dto, string userId); Task UpdateAssetAsync(int id, UpdateAssetDTO dto, string userId); Task DeleteAssetAsync(int id, string userId); Task AssetExistsAsync(int id); Task GetTotalAssetCountAsync(); } }