AuthorBuddy/Services/ISettingsService.cs
2026-06-21 07:52:03 +02:00

107 lines
4.2 KiB
C#

using AuthorBuddy.Web.Data;
namespace AuthorBuddy.Web.Services;
public interface ISettingsService
{
Task<string?> GetOllamaUrlAsync();
Task<string?> GetLlamaCppUrlAsync();
Task<string?> GetBackendAsync();
Task<string?> GetRagModelAsync();
Task<string?> GetStyleModelAsync();
Task<string?> GetSpellingModelAsync();
Task<string?> GetThemeAsync();
Task SaveOllamaUrlAsync(string url);
Task SaveLlamaCppUrlAsync(string url);
Task SaveBackendAsync(string backend);
Task SaveRagModelAsync(string model);
Task SaveStyleModelAsync(string model);
Task SaveSpellingModelAsync(string model);
Task SaveThemeAsync(string theme);
Task<string?> GetLektorSystemPromptAsync();
Task<string?> GetFactCheckTemplateAsync();
Task<string?> GetSpellingPromptAsync();
Task<string?> GetAdvocatusDiaboliPromptAsync();
Task<string?> GetHookFinderPromptAsync();
Task<string?> GetEli5PromptAsync();
Task<string?> GetCoAuthorBrainstormingPromptAsync();
Task SaveLektorSystemPromptAsync(string prompt);
Task SaveFactCheckTemplateAsync(string prompt);
Task SaveSpellingPromptAsync(string prompt);
Task SaveAdvocatusDiaboliPromptAsync(string prompt);
Task SaveHookFinderPromptAsync(string prompt);
Task SaveEli5PromptAsync(string prompt);
Task SaveCoAuthorBrainstormingPromptAsync(string prompt);
Task<double> GetLektorTempAsync();
Task<double> GetFactCheckTempAsync();
Task<double> GetSpellingTempAsync();
Task<double> GetAdvocatusDiaboliTempAsync();
Task<double> GetHookFinderTempAsync();
Task<double> GetEli5TempAsync();
Task<double> GetCoAuthorTempAsync();
Task SaveLektorTempAsync(double temp);
Task SaveFactCheckTempAsync(double temp);
Task SaveSpellingTempAsync(double temp);
Task SaveAdvocatusDiaboliTempAsync(double temp);
Task SaveHookFinderTempAsync(double temp);
Task SaveEli5TempAsync(double temp);
Task SaveCoAuthorTempAsync(double temp);
Task<string?> GetTechLastenheftPromptAsync();
Task<string?> GetTechPflichtenheftPromptAsync();
Task<string?> GetTechUseCasePromptAsync();
Task<string?> GetTechStakeholderPromptAsync();
Task<string?> GetTechGlossarPromptAsync();
Task<string?> GetTechQualitaetPromptAsync();
Task<string?> GetTechRisikoPromptAsync();
Task SaveTechLastenheftPromptAsync(string prompt);
Task SaveTechPflichtenheftPromptAsync(string prompt);
Task SaveTechUseCasePromptAsync(string prompt);
Task SaveTechStakeholderPromptAsync(string prompt);
Task SaveTechGlossarPromptAsync(string prompt);
Task SaveTechQualitaetPromptAsync(string prompt);
Task SaveTechRisikoPromptAsync(string prompt);
Task<double> GetTechLastenheftTempAsync();
Task<double> GetTechPflichtenheftTempAsync();
Task<double> GetTechUseCaseTempAsync();
Task<double> GetTechStakeholderTempAsync();
Task<double> GetTechGlossarTempAsync();
Task<double> GetTechQualitaetTempAsync();
Task<double> GetTechRisikoTempAsync();
Task SaveTechLastenheftTempAsync(double temp);
Task SaveTechPflichtenheftTempAsync(double temp);
Task SaveTechUseCaseTempAsync(double temp);
Task SaveTechStakeholderTempAsync(double temp);
Task SaveTechGlossarTempAsync(double temp);
Task SaveTechQualitaetTempAsync(double temp);
Task SaveTechRisikoTempAsync(double temp);
Task<string?> GetQuickMarkdownPromptAsync();
Task SaveQuickMarkdownPromptAsync(string prompt);
Task<double> GetQuickMarkdownTempAsync();
Task SaveQuickMarkdownTempAsync(double temp);
Task<string?> GetChatPromptAsync();
Task SaveChatPromptAsync(string prompt);
Task<double> GetChatTempAsync();
Task SaveChatTempAsync(double temp);
Task<string?> GetLanguageAsync();
Task SaveLanguageAsync(string language);
Task<List<UserEntity>> GetUsersAsync();
Task<UserEntity> GetCurrentUserAsync();
void SetCurrentUser(int userId);
Task<UserEntity> CreateUserAsync(string name);
int? CurrentProjectId { get; set; }
string? CurrentFilePath { get; set; }
string? PendingAssistantInput { get; set; }
string? PendingAssistantOutput { get; set; }
Task<int?> GetLastProjectIdAsync();
Task SaveLastProjectIdAsync(int projectId);
Task LoadProjectSettingsAsync();
Task InitializeAsync();
}