using AssetManager.Models.DTOs; namespace AssetManager.Services; public interface IPortfolioService { CreatePortfolioResponse CreatePortfolio(CreatePortfolioRequest request, string userId); Task CreatePortfolioAsync(CreatePortfolioRequest request, string userId); List GetPortfolios(string userId); Task> GetPortfolioListAsync(string userId); TotalAssetsResponse GetTotalAssets(string userId); Task GetTotalAssetsAsync(string userId); PortfolioDetailResponse GetPortfolioById(string id, string userId); Task GetPortfolioDetailAsync(string portfolioId, string userId); GetTransactionsResponse GetTransactions(string portfolioId, string userId, int limit, int offset); Task> GetTransactionsAsync(string portfolioId, GetTransactionsRequest request, string userId); Task CreateTransactionAsync(string portfolioId, CreateTransactionRequest request, string userId); Task DeletePortfolioAsync(string portfolioId, string userId); }