// Copyright (C) 2024-2026 Petr Mironychev // SPDX-License-Identifier: GPL-3.0-or-later // Additional attribution terms under GPLv3 §7(b) apply — see LICENSE #pragma once #include namespace QodeAssist::Settings { class ProviderSettings : public Utils::AspectContainer { public: ProviderSettings(); Utils::StringAspect openRouterApiKey{this}; Utils::StringAspect openAiCompatApiKey{this}; Utils::StringAspect claudeApiKey{this}; Utils::StringAspect openAiApiKey{this}; Utils::StringAspect mistralAiApiKey{this}; Utils::StringAspect codestralApiKey{this}; Utils::StringAspect googleAiApiKey{this}; Utils::StringAspect ollamaBasicAuthApiKey{this}; Utils::StringAspect llamaCppApiKey{this}; Utils::StringAspect qwenApiKey{this}; Utils::StringAspect deepSeekApiKey{this}; }; ProviderSettings &providerSettings(); struct LegacyApiKeyEntry { QString label; QString value; }; LegacyApiKeyEntry legacyApiKeyForClientApi( const QString &clientApi, const QString &instanceName = {}); } // namespace QodeAssist::Settings