- Added functionality to update the default LLM provider for users via a new endpoint in UserController. - Introduced LlmProvider enum to manage available LLM options: Auto, Gemini, OpenAI, and Claude. - Updated User and UserEntity models to include DefaultLlmProvider property. - Enhanced database context and migrations to support the new LLM provider configuration. - Integrated LLM services into the application bootstrap for dependency injection. - Updated TypeScript API client to include methods for managing LLM providers and chat requests.
22 lines
1.1 KiB
C#
22 lines
1.1 KiB
C#
using Managing.Application.Abstractions.Models;
|
|
using Managing.Application.Abstractions.Shared;
|
|
using Managing.Domain.Users;
|
|
using static Managing.Common.Enums;
|
|
|
|
namespace Managing.Application.Abstractions.Services;
|
|
|
|
public interface IUserService
|
|
{
|
|
Task<User> Authenticate(string name, string address, string message, string signature, string? ownerWalletAddress = null);
|
|
Task<User> GetUserByAddressAsync(string address, bool useCache = true);
|
|
Task<User> UpdateAgentName(User user, string agentName);
|
|
Task<User> UpdateAvatarUrl(User user, string avatarUrl);
|
|
Task<User> UpdateTelegramChannel(User user, string telegramChannel);
|
|
Task<User> UpdateDefaultLlmProvider(User user, LlmProvider defaultLlmProvider);
|
|
Task<User> UpdateUserSettings(User user, UserSettingsDto settings);
|
|
Task<User> GetUserByName(string name);
|
|
Task<User> GetUserByAgentName(string agentName);
|
|
Task<User> GetUserByIdAsync(int userId);
|
|
Task<IEnumerable<User>> GetAllUsersAsync();
|
|
Task<(IEnumerable<User> Users, int TotalCount)> GetUsersPaginatedAsync(int page, int pageSize, UserSortableColumn sortBy, string sortOrder, UsersFilter filter);
|
|
} |